Tools, Plattformen und Programme für die IoT-Entwicklung
Das Internet der Dinge ist allgegenwärtig und mittlerweile eine beliebte Domäne für Programmierer. Laut einer Studie von Statista arbeiten 6,21 Millionen Entwickler im IoT und 5,36 Millionen Entwickler planen, in den nächsten 6 Monaten im IoT zu arbeiten. Wann zählst Du dazu?
IoT-Projekte gibt es überall. Dabei ist es die bezahlbare und fortschrittliche Technologie, die für dieses schnell wachsende Sparte begeistert. Kleine, einfach zugängliche Hardware und die Möglichkeit, gängige Programmiersprachen zu verwenden, machen die Softwareentwicklung für diese Systeme einfach. Von Hobbyprogrammierern, die ihre eigenen Single-Board-Computer programmieren, bis hin zu Firmen, die Geräte für die Steuerung von Mobiltelefonen entwickeln – das IoT wächst rasant.
Zunehmende Nachfrage nach IoT Programmierern
Das IoT hat die Aufmerksamkeit von Unternehmen auf der ganzen Welt auf sich gezogen. Viele von ihnen haben interne Business Units geschaffen, die sich der Entwicklung für das IoT widmen. IoT hat sich für viele Unternehmen zu einer Top-Business-Initiative entwickelt und die Nachfrage nach Programmierern wird in den nächsten Jahren weiter zunehmen.
Entwicklung für IoT-Geräte und verteilte IoT-Dienste
Aus programmiertechnischer Sicht hängt die Entwicklung von IoT-Geräten von der Embedded-Programmierung ab. Es gibt sowohl Software- als auch Hardwarebereiche, die bei der IoT Programmierung zu berücksichtigen sind. Dies beinhaltet Dinge wie Wearables, vernetze Heimgeräte, elektronische Schaltungen, GPS-Programmierung, 3-D-Design und vieles mehr.
Glücklicherweise nutzen viele dieser Softwaresysteme und Software Development Kits (SDKs) Programmiersprachen und Betriebssysteme, die Programmierern bereits vertraut sind.
IoT Entwicklungsplattformen
Eine sehr beliebte Hardware-/Software-Plattform zur IoT-Programmierung ist die Arduino-Plattform. Diese besteht aus einem physischen Platinenprozessor, zahlreichen individuellen Bibliotheken von C-Code und einer integrierten Entwicklungsumgebung (IDE).
Windows ist mit Windows 10 IoT Core auch in das IoT-Business eingestiegen. Die IoT-optimierte Version von Windows 10 wird von Visual Studio und der Arduino Wiring API verwendet. Sie läuft auf verschiedenen Boards, einschließlich dem Raspberry Pi. IBM hat Quarks IoT-Tools auf den Markt gebracht.
IoT Hardware und Betriebssysteme
Die Palette der Embedded Devices ist riesig. Für jedes Projekt findet sich das geeignete Board.
Zu den Hardwarekomponenten zählen Low-Power-Boards, Single-Board-Prozessoren wie der Arduino Uno, Field-Programmable Gate Arrays (FPGA) und Shields, welche die Funktionalität durch bestimmte Funktionen (zum Beispiel GPS, Licht- und Wärmesensoren oder interaktive Displays) erweitern.
Eine weitere bekannte IoT-Plattform ist der Raspberry Pi. Die aktuelle Version 3 bietet genügend Rechenleistung und Speicherplatz für Windows 10 IoT Core und das hauseigene linuxbasierte Raspbian Betriebssystem. Der RasPi eignet sich hervorragend für anspruchsvollere Programme, insbesondere bei der Verwendung der Programmiersprache Python.
BeagleBoard ist ein weiterer Single-Board-Computer mit einem linuxbasierten Betriebssystem und ARM-Prozessor. Weitere Optionen im IoT sind die Galileo- und Edison-Boards von Intel.
Embedded Systems haben eine Reihe von Einschränkungen, die es bei der Programmierung zu berücksichtigen gilt: geringe Rechenleistung und kleine Mengen an RAM und Speicherplatz. Die am häufigsten verwendeten Betriebssysteme für diese Computer sind Linux wie Ubuntu Core oder Android oder andere unixoide Betriebssysteme.
Programmiersprachen für das Internet of Things
Die IoT-Programmiersprachen reichen von “Allzwecksprachen” wie C++ und Java bis hin zu spezifischen Optionen wie Go von Google oder Parasail. C++ als die grob gesagt “objektorientierte Version von C” ist sowohl für das Linuxbetriebssystem als auch für die IoT-Systeme von Arduino beliebt. Java bietet den Vorteil, dass der Code weniger hardwarespezifisch und somit portabler ist. Die Bibliotheken laufen auf unterschiedlicher Hardware getreu dem Slogan “write once, run anywhere”. Der Node.js-Code von JavaScript kann ein komplettes IoT-System ausführen, das sowohl auf einem Smart Device als auch serverseitig läuft. Python hat sich zu einer der aufstrebenden Programmiersprachen entwickelt. Sie ist insbesondere auf dem Raspberry Pi populär.
Worauf wartest Du?
Einen Raspberry Pi Zero kannst Du bereits ab $5 bestellen und damit direkt in die IoT-Programmierung einsteigen.