Das Internet der Dinge ist keine Kaffeemaschine
07.04.2017 – Gert Brettlecker
Fachbeitrag für Computerworld vom 7. April 2017
Seit 11 Jahren ist das Schweizer Unternehmen Belimo als Pionier im Internet der Dinge unterwegs. Gert Brettlecker, langjähriger Projektleiter und Softwareingenieur beim Entwicklungspartner Ergon Informatik AG, hält Rückschau und fasst wichtige Erkenntnisse zusammen.
In meiner beruflichen Laufbahn durchlebte ich eine ähnliche Entwicklung wie viele Unternehmen in der Digitalisierung: In den 90er Jahren studierte ich Elektrotechnik. Die Erkenntnis, dass Software mehr Gestaltungsmöglichkeiten bietet, liess mich in die Informatik wechseln. In den letzten zehn Jahren durfte ich als Softwareingenieur unseren Kunden Belimo aktiv auf dem Weg zum «Internet der Dinge» begleiten. Der Weg war nicht immer einfach und im Laufe der Zeit habe ich vieles dazugelernt.
Ein erster, im Rückblick matchentscheidender Schritt war, wie Belimo zu Beginn die Weichen stellte. Das Unternehmen hatte bereits 2006 erkannt, dass Software eine Schlüsseltechnologie für die Zukunft ist, und wandte sich für ein erstes Consulting und die Entwicklungspartnerschaft an ausgewiesene Softwareprofis. Viele andere Industriebetriebe machen – in meinen Augen – den Fehler, die Herausforderung Digitalisierung selbst lösen zu wollen. Der Ansatz scheint zunächst logisch, meistens existiert ja bereits eine Softwareentwicklungsabteilung im Haus und Schlüsseltechnologie will man nicht gerne extern geben. Dadurch wird aber die bestehende interne Sicht auf Softwareentwicklung beibehalten. Sie ist in Industrieunternehmen meist stark durch sogenannte «Embedded»-Systeme geprägt. Diese waren bis vor kurzem leistungsmässig stark begrenzt, sehr spezifisch zu programmieren und hatten wenige, aber stark standardisierte Schnittstellen – etwa wie eine Kaffeemaschine. Ein modernes «Embedded»-System (aka IoT-Gerät) hingegen ist so leistungsfähig wie ein vollwertiger Linux-Computer und auch preislich extrem konkurrenzfähig.
30 Jahre ohne Softwarefehler
Im Belimo-Projekt haben wir dennoch viel von den «Embedded»-Ingenieuren gelernt. So hat für einen Informatikingenieur die funktionale Korrektheit typischerweise einen geringeren Stellenwert als für den «Embedded»-Ingenieur. Dies aus ganz praktischen Gründen: Software ist meist sehr unkompliziert zu aktualisieren, oft haben Fehler keine gravierenden Auswirkungen oder das genaue Verhalten ist noch nicht einmal komplett definiert. Ganz anders sind die Industrie-Anforderungen: Belimo-Geräte sind typischerweise nach der Installation fix verbaut, die Software ist nicht aktualisierbar, sondern muss bis zu 30 Jahre ohne Störung einsatzfähig bleiben.
Bei der Wartbarkeit der Software, ebenfalls ein Qualitätsmerkmal, ist die Situation anders. Der «Embedded»-Ingenieur arbeitet meistens mit kleineren, überschaubaren Programmen, was den Wartungsaufwand verringert. Der Informatikingenieur hingegen lernt von Beginn an, grosse Programme gut zu strukturieren, sodass sie längerfristig verständlich und weiter entwickelbar bleiben. Zudem werden die vielen entstandenen Strukturen (Units) gut durch automatische Tests abgesichert, um versehentliche Verhaltensänderungen zu vermeiden. Unsere Lehre aus diesem Projekt ist, dass sich beide Vorgehensweisen für ein gutes IoT-Industrieprodukt ergänzen müssen.
Frieren für einen guten Zweck
Eine weitere wichtige Entscheidung im Projektverlauf war, sehr früh echte Pilotprojekte mit konkreten Aufgaben zu realisieren. So hat Belimo die Lüftungssteuerung ihres grössten Gebäudes am zentralen Firmensitz mit der neuen Technologie ausgestattet, als diese noch im Prototypenstadium war. Kleinere Probleme bleiben da natürlich nicht aus und die Mitarbeiter froren auch schon mal nach der Installation einer neuen Softwareversion. Der Lerneffekt wog dies aber um ein Vielfaches auf. Auch in weiteren Gebäuden in der Schweiz und im Ausland wurden früh prototypische Installationen mit sehr anspruchsvollen vernetzten Klimaanwendungen realisiert und vermittelten wertvolle Erkenntnisse über Anwendungen und ihre technische Realisierung.
So auch die Arbeiten im Mehrfamilienhaus Apartimentum in Hamburg, einem Vorzeigeprojekt des Xing-Gründers Lars Hinrichs. Dort wurde das Internet der Dinge mit intelligentem Wohnen verbunden: Intelligente Thermostate von Nest erlauben die Heizungssteuerung, mit dem Smartphone wird die Temperatur der Dusche eingestellt oder die Eingangstür geöffnet. Die Kommunikation der Systeme und die Bedienung werden durch neue Cloud-Services unterstützt. Bei so vielen Komponenten steigt rein mathematisch die Ausfallwahrscheinlichkeit stark an. Daher muss die Qualität der Einzelteile, auch jene von Drittanbietern wie Nest, entsprechend hoch sein und das Zusammenspiel in möglichst allen Situationen geprüft werden. Weil die Qualität einzelner Komponenten nicht unserem Standard entsprach, haben wir unser Softwaresystem äusserst stabil und robust implementiert, um damit die Auswirkungen auf das Gesamtsystem zu kontrollieren.
Geschäftslogik von der Softwareentwicklung entkoppeln
Für den Projekterfolg sehr wichtig war der «Application Designer» für die Klimatechnikingenieure. Mit diesem grafischen Modellierungstool können sie selber schnell und ohne Hilfe von Softwareentwicklern neue HLK-Modelle realisieren und mit Ideen spielen. Die Entwicklung des «Energy Valve» der ersten Generation bis zur Marktreife dauerte damit nur ein gutes Jahr.
Das 2012 präsentierte Energy Valve ist als erstes Internet of Things-Produkt einer der wichtigsten Meilensteine des gesamten Projekts. Der Regelkugelhahn mit Linux und Java-Technologie beinhaltet einen Webserver, wurde über die Softwareplattform von Belimo programmiert und sogar zu vernetzten Anwendungen erweitert. Der Markt nahm das Produkt sehr gut auf und es gewann viele Auszeichnungen. Im Laufe der Zeit hat es sich zu einem der erfolgreichsten Produkte von Belimo gemausert. Die dritte Generation wird durch spezielle Cloud Services unterstützt und erlaubt neuartige Anwendungen wie die individuelle Optimierung von Regelparametern auf Basis einer Datenanalyse durch Belimo. Dank vieler Optimierungen bei Speicher und Rechenleistung verfügt die neuste Generation trotz gleichbleibender Hardware über mehr als doppelt so viele Funktionalitäten wie die Vorgängermodelle.
Fangnetz für weltweit unentdeckte Fehler
Das heutige System besitzt eine Vielzahl von Softwaresensoren, die sich selbst laufend überwachen. Wird eine Fehlersituation entdeckt, löst dies automatisch einen Neustart aus. Diese Fangnetzte werden noch durch dedizierte Überwachungssysteme in der Hardware abgesichert. Selbst in Langzeit-Testläufen mit mehr als einem Jahr Dauer musste keines dieser Fangnetze zuschlagen. Gelegentlich finden wir dadurch sogar Fehler in sehr bewährter Open-Source-Software. Der Java-Server Jetty zum Beispiel wird in Tausenden von Softwareprojekten eingesetzt. Ein Langzeittest von Belimo zeigte uns einen sehr kleinen Speicherfehler im Programm, der im Laufe der Zeit den belegten Speicher leicht anwachsen lässt. Der Fehler fiel uns erst nach 8 Monaten im Langzeittest auf, davor hatte ihn weltweit niemand bemerkt. Neu haben wir nun zusätzlich Speicherkontrollen als Fangnetze implementiert, damit wir Fehler dieser Art früher finden.
Der Ausblick in die Zukunft des Projekts sieht sehr gut aus. Neue Hardware wird für neue Generationen von Produkten neue Möglichkeiten eröffnen. Anwendungsideen für neue Produkte existieren dank der vielen Pilotprojekte und Prototypen ausreichend. Neue Cloud-Dienste sind am Entstehen. In Zukunft wird man noch mehr auf sich etablierende Plattformen im Internet der Dinge setzen können. Wie immer gilt es bei neuen Trends genau zu evaluieren, verschiedene Lösungen zu vergleichen und bewährte Standards weiter zu verwenden, bis sich die neuen etabliert haben.
Dr. Gert Brettlecker ist Teamleiter und Technologieverantwortlicher Enterprise Solutions bei Ergon Informatik AG.