Wie wird Ihr Produkt integraler Bestandteil der IoT-Welt?

Projekte im Industrial- und Consumer-IoT-Umfeld sind spannend und vielfältig. Viele Disziplinen werden gleichzeitig abgefragt: Hardware- und Antennendesign, Industrialisierung, Kommunikation, LowPower, Visualisierung und Steuerung, Cloudintegration, Firmwareentwicklung und Updates und vieles mehr. Der Technologie-Mix wächst stetig und viele Standards und Allianzen kämpfen um Marktanteile. Ein bislang noch nicht so bekanntes Protokoll ist das LwM2M – das Lightweight Machine-to-Machine-Protokoll.

Download Fachartikel

Wächst ein Projekt über die Phase des Prototyps hinaus, stellen sich in einem IoT-Projekt Fragen, die das gesamte Design und die Kosten massgeblich beeinflussen können.

  • Wie werden die Geräte bei der Produktion automatisch initialisiert (Bootstrapping)?
  • Wie wird eine neue Firmware auf dem IoTDevice installiert?
  • Wie können die Remote Devices zentral gesteuert, beispielsweise aktiviert oder deaktiviert werden?
  • Was passiert mit den Daten, wenn ein IoTDevice gerade schläft?
  • Gibt es Standards zum Übertragen von Sensordaten, so dass diese ohne Anpassungen an eine bestehenden Serverumgebung einfach getauscht oder ergänzt werden können?
  • Wie können Daten zwischen IoT-Device und Server sicher übertragen werden?


Glücklicherweise muss das Rad nicht neu erfunden werden. LwM2M, ein Standard für M2M-Kommunikation, liefert Antworten auf diese Fragen und vieles mehr.

oem-solutions-iot_1-960x540.jpg

Abbildung 1  Visualisierung IoT - Wie Sie Ihr Produkt mit LwM2M in die IoT-Welt integrieren

Machine-to-Machine - M2M

Machine-to-Machine, oder kurz M2M, ist ein automatisierter Informationsaustausch zwischen verschiedenen Endgeräten. Sensoren und Aktoren kommunizieren über verschiedene Zugangsnetze (wie Mobilfunk, Bluetooth, WiFi, 802.15.4) mit Hilfe des Internets mit einem Server (Leitstelle/SCADA, Cloud, Datenbank, Workflow-Engine).

Eine M2M-Kommunikation ist eine Punkt-zu-Punkt Verbindung. Ein Temperatursensor sendet über das Mobilfunknetz seine Daten in eine Datenbank, und kommuniziert so direkt mit dem Datenbankserver. IoT- Kommunikation kann aber auch in einem Verbund direkt funktionieren. Als Beispiel kann eine Leuchte mit integriertem Bewegungssensor einen Steuerbefehl an Leuchten derselben Leuchtengruppe weitersenden und diese einschalten. Gerade im industriellen Umfeld ist M2M das zentrale Thema. Ausgeklügelte Prozesse und Machine-Learning und Visualisierungen laufen auf einer zentralen Infrastruktur, an welche IoT-Devices über M2M Daten ausgetauscht werden.


oem-solutions-iot_2-960x540.jpg

Abbildung 2  Visualisierung IoT



Das Lightweight M2M Protokoll - LwM2M

LwM2M ist ein M2M-Protokoll mit Fokus auf IoT-Devices: Sichere, sparsame Datenübertragung, LowPower und Fehlertoleranz sind dabei zentrale Designanforderungen. Viele der aktuellen Funkmodule (WiFi / LTE / NB-IoT / Cat-M / ..) unterstützen bereits LwM2M. Durch diese Unterstützung ist ein Projekt mit industriellen Anforderungen sehr schnell umgesetzt. Vielfach ist die Integration von LwM2M aus Sicht des Firmware-Entwicklers reduziert auf ein paar Zeilen AT-Commands.

LwM2M nutzt UDP und COAP als Transportprotokolle. Die Verschlüsslung der Daten erfolgt mittels DTLS. Der LwM2M-Standard definiert Ressourcen, welche im Stil einer Internet-Webadresse (REST) adressiert werden und Operatoren (Read / Write / Execute / Observe / …), um mit diesen Ressourcen umzugehen.

Beispiel:

  • «Read /3/0/0» - Der Server möchte vom IoT-Device die Information «Manufacturer» erhalten.
  • «Execute /3/0/4» - Der Server möchte das IoT-Device neu starten (Reboot).
  • «Observe /6/0» - Der Server möchte über alle Veränderungen in der Location (GNSS) informiert werden.


Die Adressierung der Ressourcen erfolgt über die Object-ID / Ressource-ID. In den ersten beiden Beispielen wurde das Objekt mit der ID 3 (/3/x/x), das Objekt «Device» angesprochen. Registriert sich ein IoT-Device am Server, meldet es, welche Objekte es unterstützt. Der LwM2M-Standard definiert viele vordefinierte Objekte. Durch diese vordefinierten Objekte kann sich zum Beispiel ein Tracking IoT-Device mit dem Objekt 6 beim Server melden und der Server weiss, dass es sich um Tracking-Daten handelt und in welchem Format diese gesendet werden.

Gibt es Alternativen?

MQTT ist sicherlich der bekannteste Vertreter für IoT-Projekte und M2M-Kommunikation und wird von vielen Cloud-Plattformen unterstützt. MQTT definiert jedoch nur einen Kommunikationskanal und löst keine der eingangs gestellten Fragen. LwM2M lässt durch seine aktive Steuerung eine viel grössere Flexibilität zu. Es kann in Echtzeit entschieden werden, wann der Server welche Daten von welchem IoT-Device haben möchte. Das Verhalten eines IoT-Devices kann so zum Beispiel jederzeit angepasst werden, auch wenn es schon lange in Betrieb ist.

Sparsame Datenübertragung

Eine sparsame Datenübertragung ist in IoT-Projekten meistens ein zentrales Thema. Jedes Byte, das durch einen Protokoll-Overhead transferiert werden muss, belastet die Batterie und steht meistens auch in einem direkten Verhältnis zu den Kosten für die übertragene Datenmenge. LwM2M hat darum die ganze Protokolldefinition auf dieses Ziel ausgelegt.

oem-solutions-iot-fachartikel-zitat-marcel-graber.jpg

«IoT ist in aller Munde: Die Vernetzung von Dingen eröffnet eine Vielzahl an Möglichkeiten und Märkte. Doch die eigentliche Kür rund um das Thema Internet of Things is nicht der empfindlichste Sensor, sondern die intelligente Verknüpfung der verschiedenen Sensoren und Aktoren via Cloud.» 

Marcel Graber, Development Engineer Electronics and Firmware bei STEINEL Solutions AG