Technische Artikel

Intelligente Geräte und Analysen fördern Innovationen im Internet of Things

Von Eric Wetjen, MathWorks


Das Internet of Things (IoT oder Internet der Dinge) entwickelt sich rasant zu einem Ort, an dem praktisch jedes intelligente Hardware-Gerät (ob Mobiltelefon, Schrittmacher, tragbarer Fitness-Tracker oder gar Kühlschrank) mit dem Internet verbunden werden kann, um Daten zu generieren und zu empfangen.

Die Kombination von mit dem Internet verbundenen Geräten mit Cloud Computing, maschinellem Lernen und anderen Data Analytics-Ansätzen ermöglicht, dass Produkte und Lösungen die Art und Weise, wie wir leben und arbeiten, komplett umwälzen. Heute ist dank dem Internet of Things z. B. Folgendes möglich:

  • Ein Arzt kann dezentral überwachen, wie oft der Herzschrittmacher eines Patienten aktiviert wird.
  • Sportler können messen, wie viele Kalorien sie bei einem Lauf verbrauchen.
  • Landwirte können die Bewässerung von Nutzpflanzen optimieren.
  • Gebäudemanager können durch die Optimierung der Steuerung von Heiz- und Klimageräten Strom sparen.
  • Asthmatiker können mit ihrer Krankheit mithilfe einer Mobiltelefon-App zur Überwachung des Grads ihres asthmatischen Keuchens besser umgehen.
  • Automobilhersteller stehen kurz vor der Entwicklung eines fahrerlosen Autos, das autonom durch die Straßen von Städten navigieren kann.

In einem IoT-System

Ein typisches IoT-System funktioniert wie folgt (Abbildung 1):

  1. Ein intelligentes, verbundenes Gerät erzeugt Sensordaten und sendet diese an die Cloud. Diese Geräte sind oft intelligent genug, um auf ihren integrierten Prozessoren Datenreduzierungsalgorithmen auszuführen. 
  2. Eine analytische IoT-Plattform verarbeitet und speichert die Sensordaten. Sie kann Informationen von anderen Quellen wie z. B. Business-Systemen integrieren. Sie analysiert die empfangenen Daten und ergreift daraufhin die entsprechenden Maßnahmen. 
  3. Ein Systemingenieur oder Datenwissenschaftler greift auf die historischen Daten aus der Cloud oder auf dem Gerät zu und entwickelt Algorithmen für die Daten-Vorverarbeitung und -Analyse. Diese Algorithmen können Methoden des maschinellen Lernens zur Prognose zukünftiger Werte eines Sensors oder zur Klassifizierung der Sensordaten umfassen. 
  4. Der Algorithmus wird in der Cloud oder auf einem intelligenten Gerät bereitgestellt, wo er auf eingehende Live-Daten angewendet wird. 
Abbildung 1: Ein typischer Internet of Things-Workflow.

Abbildung 1: Ein typischer Internet of Things-Workflow.

Erstellen eines IoT-Systems mit MATLAB und Simulink

MATLAB® und Simulink® unterstützen IoT-Systeme, um Ihnen dabei zu helfen, intelligente verbundene Geräte zu entwickeln und zu testen, auf Daten in der Cloud zuzugreifen und diese zu erfassen sowie Sensordaten zu analysieren. Hier zwei Beispiele.

Beispiel 1: Verkehrsmonitor

Zwei Ingenieure hatten genug davon, jedes Mal beim Pendeln im Stau zu stehen. Sie beschlossen, die Verkehrsflusstrends auf der stark befahrenen Fernstraße vor ihrem Gebäude zu untersuchen. Sie installierten eine Webcam in einem Büro mit Blick auf die Straße und schlossen Sie an ein Raspberry Pi™-Board an, auf dem ein Computer Vision-Algorithmus ausgeführt wurde (Abbildung 2).

Abbildung 2: Mit einem Raspberry Pi 2 verbundene Webcam.

Abbildung 2: Mit einem Raspberry Pi 2 verbundene Webcam.

Die Daten wurden mit ThingSpeak™, einer analytischen IoT-Plattform, die MATLAB-Code ausführt, in der Cloud erfasst.

Die Ingenieure erstellten ein Simulink-Blockdiagramm, das einen Medianfilterblock zur Bereinigung des Bildes und einen Blob-Analyseblock zur Identifizierung der Autos im Bild umfasste (Bild 3). Dann programmierten sie einen benutzerdefinierten Block zur Zählung der Autos und sandten die zusammengefassten Daten an ThingSpeak.

Abbildung 3: Simulink-Blockdiagramm zum Erkennen und Zählen der Autos.

Abbildung 3: Simulink-Blockdiagramm zum Erkennen und Zählen der Autos.

Vor der Bereitstellung des Algorithmus auf dem Raspberry Pi bestätigten Sie diesen mithilfe der Videoanzeige im externen Modus von Simulink (Abbildung 4).

Abbildung 4: Erfassung von Autos im externen Modus von Simulink während der Algorithmen-Entwicklungsphase.

Abbildung 4: Erfassung von Autos im externen Modus von Simulink während der Algorithmen-Entwicklungsphase.

Wenn die Daten in ThingSpeak empfangen wurden, verwendeten sie die in ThingSpeak integrierte MATLAB-App, um Live-Visualisierungen der Verkehrsdichte in jeder Richtung für die vergangenen 48 Stunden zu erstellen. Hierzu gehörte eine farbkodierte Visualisierung (Abbildung 5), in der der aktuelle Status des Verkehrs kategorisiert wurde (leicht = grün, mittel = gelb und stark = rot).

Abbildung 5: Kategorisierung der Live-Verkehrsdaten in ThingSpeak.

Abbildung 5: Kategorisierung der Live-Verkehrsdaten in ThingSpeak.

Beispiel 2: Gezeitenmess- und Benachrichtigungssystem

Ohne präzise Messung der Wassertiefe kann es vorkommen, dass man sich mit dem Boot im Schlick festfährt. Weil für die meisten Buchten und Mündungen keine Gezeitenprognosen und Echtzeit-Wasserstandswerte verfügbar sind, schuf ein begeisterter Bootsfahrer und MATLAB-Benutzer ein kostengünstiges Echtzeit-Gezeitenmessgerät. Er lernte schnell, dass Timing und Amplitude der Gezeitenwerte stark von der Position abhängen.

Die wichtigsten von ihm verwendeten Hardware-Komponenten waren ein Arduino® Mega-Board, ein SparkFun Electronics® Mobilfunk-Shield sowie ein Ultraschall-Entfernungsmesser. Die Verbindung zwischen dem Arduino und dem Internet wurde mithilfe des Mobilfunk-Shields hergestellt. Der Arduino diente zum Auslesen der Daten vom Ultraschallsensor.

ThingSpeak wurde verwendet, um die Daten in der Cloud zu erfassen und zu verarbeiten. Der Ultraschallsensor meldet die Entfernung in Millimeter. Um die Entfernung in die Wassertiefe umzuwandeln, richtete der Bootsfahrer eine ThingSpeak TimeControl ein, die MATLAB-Code ausführt, um die Entfernungsdaten zu lesen, sie in die Wassertiefe umzuwandeln und die Daten auf einem neuen ThingSpeak-Kanal zu schreiben. Das Ergebnis war ein mit dem Internet verbundenes Gezeitenmessgerät, das auf einem Mobiltelefon oder in einem Webbrowser angezeigt werden kann (Abbildung 6).

Abbildung 6: ThingSpeak-Datenerfassung und Anzeige des Gezeitenstands.

Abbildung 6: ThingSpeak-Datenerfassung und Anzeige des Gezeitenstands.

Der Bootsfahrer richtete weiteren MATLAB-Code ein, um die Gezeitenschwellwerte zu erfassen. Dann nutzte er die Twitter-Integration in ThingSpeak, um Benachrichtigungen zu senden, wenn bestimmte Bedingungen eintraten.

Wie diese Beispiele zeigen, sind Analysen ein grundlegender Bestandteil aller Innovationen im Bereich IoT. Mit MATLAB und Simulink können Sie Analysen entwickeln, die auf Ihren intelligenten Geräten oder in der Cloud ausgeführt werden. Mit ThingSpeak können Sie mühelos Daten von Ihren Geräten in der Cloud erfassen. Mit MATLAB können Sie dann Erkenntnisse aus den erfassten Sensordaten gewinnen.

Veröffentlicht 2016 - 93055v00

Artikel für ähnliche Einsatzgebiete anzeigen