Längst schon kommunizieren nicht mehr nur Menschen miteinander, sondern auch Maschinen und Geräte mit den Menschen oder sogar untereinander: seien es Sprachassistenten oder Bestellbuttons im privaten Bereich oder Monitoring- sowie Predictive Maintenance-Systeme im industriellen Umfeld.
Eines jedoch haben sie alle gemein: Sie benötigen ein Stück Software – eine Applikationslogik – damit sie überhaupt etwas machen. Denn nur so erlangen die Bits und Bytes eine Bedeutung und werden entsprechend interpretiert. Diese Intelligenz wird in der sogenannten IoT App vereint.
Was ist eine IoT App?
Eine IoT App beinhaltet sämtliche applikative Logik für eine Anwendung im Internet der Dinge. Alle ausführbaren Dateien werden in ihr zusammengefasst. Die IoT App ist die Anwendung, die, ähnlich einer Smartphone-App, auf die einzelnen Geräte sowie auf der IoT-Plattform selbst installiert wird. Auf den jeweiligen Geräten können anschließend Konfigurationen vorgenommen werden, die Basisfunktionalität der Anwendung bleibt jedoch gleich.
Doch die IoT App kann noch viel mehr und kümmert sich auch um die grafische Darstellung der Anwendung.
Wozu eigentlich eine IoT-App?
IoT-Apps sind Blaupausen sogenannte „Blueprints“, die ein schnelles Ergebnis in der Umsetzung von digitalisierten Produkten gewähren.
Dabei ist das Ziel, die Einfachheit für Anwender auch für Kleinserien möglich zu machen, während gleichzeitig eine schnelle Umsetzung der Kundenanforderung gesichert ist.
In einer definierten Umgebung wird dabei die Unversehrtheit von Grundfunktionen und Datensicherheit gewährleistet. Die Flexibilität der Anforderung kann über die Programmierung selbst verändert werden. Die Remote Updatebarkeit kümmert sich nicht nur um im Betrieb ausgerollte Updates sondern auch um ein grundsätzliches Maß an Kompatibilität in der Systemkette. Damit ist die „Remote“ Betreuung der Geräte im Lebenszyklus sichergestellt was eines der wichtigsten Grundsäulen einer sicheren Systemumgebung darstellt.
Wir sind überzeugt davon, dass aller Anfang nicht schwer sein muss, um in erfolgreiches digitales Geschäftsmodel starten zu können. Das IoT-App „Blueprint“ Konzept ist die Basis dafür.
Welche Vorteile bietet die Verwendung von IoT Apps?
Bereits bei der Entwicklung, aber auch in der späteren Verwendung bieten IoT Apps viele Vorteile. Ob als Leiter der Softwareabteilung, Programmierer, Tester, Server-Administrator oder Anwender sind unterschiedliche Eigenschaften und Funktionalitäten der IoT Apps von besonderer Bedeutung.
Die drei größten Vorteile von IoT Apps:
- Medienbruchfreie Erstellung und Verwendung
Die IoT App stellt die gesamte Kette von der Erfassung der Daten bis hin zum User Interface mit Konfigurationsmöglichkeiten dar. Die Erstellung, Verwaltung und Verwendung wird zentral und medienbruchfrei im System gelöst. Über eine standardisierte API können die Daten in Drittsysteme integriert werden oder Daten aus Drittsystemen in der IoT App verwendet werden. - Full-Stack-Development und darüber hinaus
Im rapidM2M Studio werden alle Komponenten, die für eine IoT App benötigt werden, erstellt. Von der Logik am Device selbst über die Logik auf der IoT Plattform bis zum User Interface, wird die Entwicklung ganzheitlich abgedeckt. Das System geht noch einen Schritt weiter und beinhaltet Prozesse für das Device und Application Management. - Integrierter Release- und Deployment-Prozess
Das rapidM2M Studio beinhaltet die Funktionalität für Release- und Deployment-Prozesse. Zudem steht ein automatisches Versionsmanagement der IoT App zur Verfügung. Mit den Status „Stage“, „Released“ und „Passiv“ wird der Test- und Lebenszyklus einer IoT-App abgebildet. Umfangreiche Mechanismen für den Rollout der IoT App auf definierte IoT-Plattformen und in weiterer Folge auf einzelne Devices runden den Prozess ab. Rollout- und Update-Mechanismen over-the-air sind ebenso integriert.
Was beinhaltet eine IoT App?
Eine IoT App setzt sich aus folgenden Komponenten zusammen:
- Device Logic (DLO)
Die Device Logic ist die Programmlogik, die lokal am Gerät / Device ausgeführt wird. Daten werden beispielsweise erfasst, verarbeitet und in regelmäßigen Abständen an einen Server übertragen. Tritt ein definiertes Ereignis auf kann, je nach Anwendung und Device, ein Ausgang gesteuert werden oder eine Übertragung ausgelöst werden.
Im rapidM2M Studio stehen Beispiele und Libraries für die Programmierung der Device Logic zur Verfügung. Die Libraries werden laufend erweitert. Neben Libraries für bestimmte Sensoren (Druck, Temperatur, Feuchte, Accelerometer, GNSS, …) gibt es allgemeine Libraries wie einen Zufallszahlengenerator, die Berechnung des Sonnenauf-/untergangs oder die Erzeugung von Sinus- und Cosinus-Wellen. Die Device Logic wird in der C-ähnlichen PAWN-Notation erstellt. - Data Descriptor (DDE)
Mit dem Data Descriptor wird die Struktur der Daten und der Konfigurationen festgelegt, die zwischen dem Gerät und der IoT Plattform ausgetauscht werden. Dies ist notwendig damit das Device und die IoT Plattform sich verstehen und sozusagen dieselbe Sprache sprechen. - Backend Logic (BLO)
Bei der Backend Logic handelt es sich um die Programmlogik (node.js), die auf der IoT Plattform ausgeführt wird. So können Daten von mehreren Devices für Berechnungen herangezogen werden oder Daten von externen Diensten, wie beispielsweisen Wetterdaten, eingebunden werden. - Portal View (POV)
Mit der Portal View wird eine grafische Oberfläche (UI) erstellt. Dabei kann auf die Daten aller Devices des jeweiligen Kunden zugegriffen werden. Die Erstellung einer Portal View ist optional, um die Daten, angepasst an die individuelle Applikation, zu präsentieren. Neben der Darstellung der Werte können auch Konfigurationen über die Portal View vorgenommen werden. Für die Erstellung der Portal View werden Web-Standardsprachen verwendet (pug mit less/css und JavaScript). Das clientseitige JavaScript-Framework Vue.js wird unterstützt. Ein großer Vorteil ist, dass für das User Interface kein eigener Webspace benötigt wird. Dieser wird direkt von der IoT-Plattform zur Verfügung gestellt und ist über eine konfigurierbare Sub-Domain erreichbar. - Konfigurationen
Die IoT App ist eine Blaupause, die alle notwendigen Programmcodes und Einstellungen beinhaltet. Eine IoT App kann auf beliebig vielen Devices installiert werden. Mit der Konfiguration können für jedes Device individuelle Einstellungen vorgenommen werden. Diese Einstellungen können beispielsweise das Aufzeichnung- und Übertragungsintervall sein.
Für eine funktionierende Anwendung sind dabei nicht immer alle Komponenten notwendig. Beispielsweise gibt es IoT-Apps, die ohne zusätzliche Logik auf der IoT-Plattform (also ohne Backend Logic) oder auch ohne Portal View auskommen. Es gibt auch IoT-Apps, die kein Gerät (und somit keine Device Logic) brauchen. Dies kann der Fall sein, wenn eine IoT-App von der Backend Logic ausgehend Daten aus Drittsystemen verwendet. Ein Data Descriptor, der die Struktur der Daten- und Konfigurationsfelder festlegt, ist jedoch in allen IoT-Apps erforderlich.
Wie wird eine IoT App erstellt?
Alle Bestandteile (Device Logic, Data Descriptor, Backend Logic, Portal View, Konfiguration) der IoT App werden in der IDE rapidM2M Studio erstellt. Das rapidM2M Studio ermöglicht die kollaborative Zusammenarbeit mehrerer Entwickler an einer IoT App. Es werden Test- und Debugging-Funktionalitäten zur Verfügung gestellt und Release-Prozesse werden abgebildet.
Die Registrierung am Microtronics Partner Portal beinhaltet unter anderem den kostenlosen Zugang und die Nutzung des rapidM2M Studios.
On-Demand Demo
Schnelle und einfache IoT-Entwicklung.
Lernen Sie das rapidM2M Studio in 20 Minuten kennen.
Wie werden IoT Apps auf einer Vielzahl an Geräten installiert?
Das rapidM2M Studio sieht einen Release-Prozess vor. Zur Installation der IoT App am Gerät muss diese zuerst veröffentlicht (publish) werden. Dabei wird zwischen Stage (Testversion), Released (produktive Version) und Passiv (deaktivieren einer Version) unterschieden.
Bei der Veröffentlichung wird das rapidM2M Portal beziehungsweise die IoT Plattform angegeben auf dem die Geräte betrieben werden. Mit der Veröffentlichung erscheint die IoT App im Store des App Centers der jeweiligen IoT Plattform. Die IoT App wird auf dem Server installiert und kann anschließend verwendet werden. In der Anleitung zur Installation einer IoT App sind alle Schritte aufgelistet.