Einführung in die Sensor- und Ortungsplattform in Windows

Das Windows-Betriebssystem bietet nativen Support für Sensorgeräte. Dieser Support umfasst auch Ortungssensoren wie z. B. GPS-Geräte. Als Teil dieses Supports bietet die Plattform einen Standardweg für Gerätehersteller, um Softwareentwickler*innen und Verbraucher*innen Sensorgeräte zur Verfügung zu stellen. Gleichzeitig bietet die Plattform Entwickler*innen eine standardisierte API- und Gerätetreiberschnittstelle (DDI) für die Arbeit mit Sensoren und Sensordaten. Dieser Abschnitt fasst die Windows-Sensor- und Ortungsplattform zusammen, erörtert die verschiedenen Teile der Plattform und beschreibt, wie die Teile zusammenarbeiten, um ein umfassendes System für die Arbeit mit Sensoren zu bieten.

Übersicht über die Sensorgeräte

Sensoren gibt es in vielen Konfigurationen, und unter einem bestimmten Blickwinkel kann fast alles, was Daten über physikalische Phänomene liefert, als Sensor bezeichnet werden. Obwohl wir in der Regel bei Sensoren an Hardwaregeräte denken, können logische Sensoren auch Informationen durch die Emulation der Sensorfunktionalität in Software oder Firmware bereitstellen. Zudem kann ein einzelnes Hardwaregerät mehrere Sensoren enthalten.

Die Sensor- und Ortungsplattform organisiert Sensoren in Kategorien, die breite Klassen von Sensorgeräten darstellen, und Typen, die bestimmte Arten von Sensoren repräsentieren. Beispielsweise würde ein Sensor in einem Videospielcontroller, der die Position und Bewegung der Hand von Spieler*innen erkennt (möglicherweise für ein Videobowlingspiel), als Orientierungssensor eingestuft werden, sein Typ wäre jedoch ein 3D-Beschleunigungssensor. Im Code stellt Windows Kategorien und Typen mithilfe von GUIDs (Globally Unique Identifier, eindeutige Bezeichner) dar, von denen viele vordefinierte sind. Gerätehersteller können neue Kategorien und Typen erstellen, indem sie bei Bedarf neue GUIDs definieren und veröffentlichen.

Ortungsgeräte bilden eine besonders interessante Kategorie. Mittlerweile kennen die meisten Menschen GPS-Systeme (globalen Positionierungssysteme). In Windows ist ein GPS eine Art von Sensor, der zur Kategorie Location gehört. Die Kategorie „Location“ kann andere Sensortypen enthalten. Einige dieser Sensortypen sind softwarebasiert, wie z. B. ein IP-Resolver, der Standortinformationen auf der Grundlage einer Internet-Adresse liefert, ein Triangulator für Mobilfunkmasten, der den Standort auf der Grundlage nahegelegener Masten bestimmt, oder ein Sensor, der den Standort anhand des Vorhandenseins von WI-FI-Netzwerken ermittelt.

Info zur Plattform

Die Windows Sensor- und Ortungsplattform besteht aus den folgenden Entwickler*innen- und Benutzerkomponenten:

  • Die DDI. Windows bietet einen Standardweg für Sensorgeräte, um sich mit dem Computer zu verbinden und Daten an andere Subsysteme zu liefern.
  • Die Windows Sensor-API bietet eine Reihe von Methoden, Eigenschaften und Ereignissen für die Arbeit mit verbundenen Sensoren und Sensordaten.
  • Die Windows Location API, die auf der Windows Sensor API erstellt wurde, bietet eine Reihe von Programmierobjekten. Zu diesen Objekten gehören auch Skriptobjekte, mit denen Sie mit Standortinformationen arbeiten können.
  • Über die Systemsteuerung können die Benutzenden die Standorteinstellungen festlegen.

In den folgenden Abschnitten werden die einzelnen Komponenten beschrieben.

Gerätetreiberschnittstelle

Sensorhersteller können Gerätetreiber erstellen, um Sensoren mit Windows zu verbinden. Sensorgerätetreiber werden mithilfe des WPD-(Windows Portable Devices)-Treibermodells implementiert, das auf dem Windows User Mode Driver Framework (UMDF) basiert. Viele Gerätetreiber wurden mit Hilfe dieser Frameworks geschrieben. Da es sich um etablierte Technologien handelt, sind erfahrene Gerätetreiberprogrammierer*innen mit dem Schreiben von Sensortreibern vertraut. Der Sensor DDI verwendet spezifische UMDF- und WPD-Datentypen und -Schnittstellen und definiert sensorspezifische WPD-Befehle und -Parameter, sofern erforderlich.

Um das Schreiben eines Gerätetreibers, der einen Sensor mit Windows (und insbesondere mit der Sensor- und Ortungsplattform) verbindet, zu erleichtern, enthält das Betriebssystem eine Erweiterung der Treiberklasse. Dieses COM-Objekt ist eine erforderliche Komponente für Gerätetreiber für Sensoren und bietet eine einfache Reihe von Schnittstellen, die es Programmierenden ermöglichen, einen Sensortreiber zu implementieren, ohne viel Code schreiben zu müssen. Die Klassenerweiterung kann auch die Notwendigkeit, WPD-Aufrufe zu verwalten, reduzieren oder sogar eliminieren. Diese Dokumentation enthält detaillierte Informationen über das Sensor-DDI und das Klassenerweiterungsobjekt.

Sensor-API

Die Windows Sensor API ermöglicht es C++ Entwickler*innen, sensorgestützte Programme zu erstellen, indem sie eine Reihe von COM-Schnittstellen verwenden. Die API definiert Schnittstellen zum Ausführen gängiger Sensorprogrammierungsaufgaben, zu denen das Verwalten von Sensoren nach Kategorie, Typ oder ID, das Verwalten von Sensorereignissen, das Arbeiten mit einzelnen Sensoren und Sensorsammlungen und das Arbeiten mit Sensordaten gehören. Das Windows SDK enthält Headerdateien, Dokumentationen, Beispiele und Tools, um Softwareentwickler*innen bei der Verwendung von Sensoren in Windows-Programmen zu unterstützen.

Speicherort-API

Die auf der Sensorplattform erstellte Location API bietet eine einfache Möglichkeit, Daten über den geografischen Standort abzurufen und gleichzeitig die Privatsphäre der Benutzenden zu schützen. Die Location-API stellt ihre Funktionalität über eine Reihe von COM-Schnittstellen bereit, die Objekte darstellen. Diese Objekte können von Programmierer*innen genutzt werden, die verstehen, wie COM über die Programmiersprache C++ oder in Skriptsprachen wie JScript verwendet wird. Die Skriptunterstützung bietet einfachen Zugriff auf Standortdaten für Projekte, die in der Zone „Lokaler Computer“ ausgeführt werden, z. B. Gadgets. Das Windows SDK enthält Headerdateien, Dokumentationen (einschließlich Skriptreferenzdokumentation), Beispiele und Tools, die Web- und Softwareentwickler*innen bei der Verwendung von Standortinformationen in ihren Programmen unterstützen.

Systemsteuerung für Benutzende

Windows verfügt über ein Steuerelement, das dem Benutzenden die Möglichkeit bietet, die Einstellungen für den Standort zu aktivieren oder zu deaktivieren. Da die Einstellungen sensible Daten preisgeben können, gibt diese Benutzeroberfläche den Benutzenden die Kontrolle darüber, ob Programme Zugriff auf ihren Standort haben.

Whitepaper

Titel Beschreibung
Verwendungsmöglichkeiten für HID-Sensoren Dieses Dokument enthält Informationen über den HID-Sensorklassentreiber für Windows 8 und neuere Betriebssysteme.
Integrieren von Umgebungslichtsensoren mit Computern, auf denen Windows 10 Creators Update ausgeführt wird Dieses Dokument enthält Informationen zu Umgebungslichtsensor- (ALS) Features im Windows 10 Betriebssystem.
Integrieren von Bewegungs- und Ausrichtungssensoren Dieses Dokument soll OEMs, ODMs und IHVs helfen, Bewegungs- und Ausrichtungssensorfunktionen und Anforderungen für Windows 10 und frühere Betriebssysteme zu verstehen.