IoT – Stand der Technik
Das „Internet der Dinge“ reicht bereits heute in jeden Bereich des Lebens hinein. Durch die Kernbereiche wie etwa Industrie 4.0, intelligente Stromnetze („Smart Grid“), tragbare Computersysteme (“Wearables”) und Gebäudeautomation („Smart Home“) ist die Zahl vernetzter Geräte heute schon höher als die Zahl der Menschen der Weltbevölkerung. Die Vielzahl der Anwendungsgebiete und Hersteller hat unzählige proprietäre Produkte
hervorgebracht.
Aus der Vielfältigkeit der Anwendungen ergibt sich das Problem, dass es keine allgemeingültige Architektur gibt, die alle Anforderungen in allen Anwendungsgebieten abdeckt.
Die Produkte sind in der Regel untereinander nicht kompatibel und werden über eine produkt- und/oder herstellerspezifische Schnittstelle angesteuert. Diese Schnittstelle unterscheidet sich sowohl physikalisch als auch in der Art des Kommunikationsprotokolls. Zahlreiche drahtgebundene und drahtlose Technologien wie Ethernet, 1-Wire, WiFi, Bluetooth oder ZigBee kommen zum Einsatz.
Sensoren und Aktoren
Sensoren und Aktoren sind in der Regel untereinander nicht kompatibel und werden über eine produkt-
und/oder herstellerspezifische Schnittstelle angesteuert. Diese Schnittstelle unterscheidet
sich sowohl physikalisch als auch in der Art des Kommunikationsprotokolls.
Konfiguration
Die Einrichtung und Konfiguration erfolgt über proprietäre Software welche nicht angepasst werden kann. Dies beschränkt die Nutzung der Sensoren und Aktoren auf vordefinierte Anwendungsszenarien .
Bereitstellung
Die Vernetzung der Sensoren und Aktoren kann zumeist nicht verwaltet werden. Geräte in Reichweite werden registriert. Der Ausschluss oder das Gruppieren von Geräten ist oft nicht möglich.
Anwendung
Der Anwender erhält zumeist vorgefertigte Benutzeroberflächen für die Anzeige von Sensordaten und die Bedienung der Aktoren.
Eine Individualisierung der Benutzeroberfläche ist meist nur unzureichend möglich.
Technologien
Ziel des Projektes ist die Entwicklung einer generischen, internetfähigen und stromsparenden Sensorplattform sowie der notwendigen Infrastruktur für den drahtlosen Austausch von Daten. Die Sensorplattform soll über Standardschnittstellen aus dem embedded Elektronikbereich, wie I²C, UART, ADC-Eingänge und GPIOs, verfügen um einen Großteil gängiger Sensoren unterstützen zu können.
Sensoren und Aktoren
Crossprobe hat einen Sensorknoten entwickelt der über eine drahtlose WiFi Verbindung alle gängigen Schnittstellen zur Verfügung stellt.
Die Ansteuerung und Konfiguration der Schnittstellen wie UART, I²C, ADC und GPIO erfolgt über Protobuf Nachrichten. Der eigentliche Nachrichten austausch erfolgt über MQTT.
Protobuf – Nachrichtendefinition
Protocol buffers ist Google’s sprachen- und plattformunabhängiger, erweiterbarer Mechanismus zur Serialisierung strukturierter Daten.
Nachrichtenstrukturen können durch Code Generatoren in verschiedene Programmiersprachen überführt werden.
MQTT – Nachrichtenaustausch
MQTT ist ein „machine-to-machine (M2M)“ Kommunikationsprotokoll. Der Nachrichtentransporrt basiert auf einem publish/subscribe Konzept. Die Implementierung ist sehr resourcenschonend umgesetzten und kann auch auf kleinen CPUs ausgeführt werden.
MQTT DokumentationGateway
Als zentraler Knoten im Netzwerk kann ein beliebiger PC oder embedded Computer mit einem linuxbasierenden Betriebssystem genutzt werden.
CommonXense ist für Rasberry Pi und PC mit Ubuntu vorbereitet. Zusätzlich bietet Crossrobe ein iMX6 basierendes Gateway mit WiFi, Bluetooth, CAN und Ethernet an.
Das Gateway hat die Aufgabe der Geräteregistrierung und – verwaltung. Hierfür wird Mainflux verwendet.
Weiterhin dient es als MQTT Broker und verteilt Daten zwischen den einzelnen Geräten. Das grafische Nutzerinterface und das Versenden der Protobuf Nachrichten über MQTT wird mit Node-Red realisiert.
Mainflux
Mainflux ist eine sichere, skalierbare, open-source IoT Plattform. Sie dient als Software Infrastruktur für IoT Geräte
Mainflux DokumentationNode-RED
Zur Erstellung von grafischen Benutzeroberflächen und für das versenden von Daten wird Node-RED verwendet.
Es stellt die Verbindung zwischen Nutzer und Hardware her. Node-RED ist browserbasiert und somit von einer Vielzahl an Geräten wie PC, Smartphone oder embedded Computer nutzbar.
CommonXense®
CommonXense ist ein modulares System, bestehend aus einem Funkmodul und entsprechender Erweiterungsmodulen. Je nach Anwendungsgebiet kann das Funkmodul durch ein Spannungsversorgungsmodul, ein Batteriemodul mit Solarladeregler oder einem Peripheriemodul erweitert werden. Die Module werden über Federkontakte miteinander verbunden.
Die Schnittstellen des Funkmoduls sind über Protobuf Nachrichten konfigurierbar und steuerbar. Für die Nachrichtenübertragung wird MQTT verwendet. Der MQTT Broker kann auf einem PC oder einem dafür entworfenen Gateway laufen.
Produkte
WiFiModul
Das CommonXense® WiFi Modul basiert auf dem CC3200MOD der Firma Texas Instruments. Über die MQTT Schnittstelle kann auf alle Pins des WiFi® Moduls zugegriffen werden.
SchaltplanPowerModul
Das PowerModul verfügt über einen Schaltregler zur Versorgung der Peripherie. Ein zusätzlicher Linearregler dient alsVersorgung für das WiFi Modul. Beide Ausgangsspannungen können über Drehwiderstände eingestellt werden.
SchaltplanSolarModul
Das Solarmodul kann alternativ zum PowerModul eingesetzt werden. Es verfügt über einen Solarladeregler für eine Li-Ion Batterie. Damit kann das CommonXense® System auch autark vom Stromnetz betrieben werden. Die Ausgangsspannung ist einstellbar.
SchaltplanSensorModul
Das SensorModul kann direkt unter das CommonXense® WiFi Modul gesteckt werden. Es bietet Anschlüsse für UART, I²C, ADCs, GPIOs und eine SD Karte.
Schaltplan