AWS in Switzerland and Austria (Alps)

Feller Smarthome IoT – Fertigung, Rollout und Analytics “powered by” Ergon und AWS

IoT Smarthome-Applikationen bieten Privathaushalten und gewerblichen Immobilien zahlreiche Vorteile. Durch die Vernetzung verschiedener Geräte und Systeme können Haushalts- und Gebäudemanagementprozesse optimiert, die Energieeffizienz gesteigert sowie der Komfort erhöht werden.

Dieser Blog beleuchtet, wie die Feller AG, der Schweizer Marktführer für elektrische Schalter und Steckdosen, mit Unterstützung von Ergon Informatik AG ein innovatives IoT-Ökosystem für eine Smarthome-Lösung entwickelt hat.

Einführung

Die Feller AG, eine Tochtergesellschaft von Schneider Electric Schweiz, verfügt über eine langjährige und umfangreiche Erfahrung in Entwicklung und Produktion von elektromechanischen Komponenten, inklusive eigener Firmware-Entwicklung.
Ergon bietet seit 40 Jahren massgeschneiderte Softwarelösungen und Security-Produkte für Kunden in verschiedenen Branchen an. Für das Feller IoT-Ökosystem entwickelte Ergon eine Cloud-native Lösung.

Feller AG Standort Horgen

Am Standort in Horgen hoch über dem Zürichsee entwickelt, produziert und testet Feller rund 60’000 bestellbare Artikel

Vor einigen Jahren hat Feller die Smarthome Lösung Wiser by Feller auf den Markt gebracht. Ergon hat für Feller die geschäftskritischen Backendsysteme entwickelt und sichert den Betrieb auf AWS als Managed Service. Zusätzlich leistet Ergon technisches Consulting in ausgewählten Bereichen wie Cybersecurity oder Systemarchitektur.

Ein enger Zeitplan einerseits sowie beschränkte personelle Ressourcen andererseits führten dazu, dass sich Feller von Beginn an entschied, wo immer möglich auf bestehende AWS-Cloud-Services aufzubauen. Die Produkte von Feller werden nicht selten mehr als 25 Jahre lang eingesetzt. Deshalb setzt Feller in einigen Bereichen auf plattformoffene Technologien, um zukünftige Optionen offen zu halten.

Lösungsübersicht

Das Feller IoT-Ökosystem lässt sich in die folgenden drei Hauptkomponenten Produce (“Produzieren”), Connect (“Verbinden”) und Analyze (“Analysieren”) gliedern. Es kommt eine Vielzahl von AWS Services zur Anwendung, von Serverless-Lösungen, die sehr geringen Aufwand in Entwicklung und Betrieb verursachen, bis hin zu IoT-spezifischen Lösungen und massgeschneiderten Cloud-Firewalls.

Produce

Die Programmier- und Prüfgeräte einer Fertigungsstrasse kommunizieren über das Produce-Backendsystem mit der AWS-Cloud. Produce erstellt dabei eine digitale Identität für jedes produzierte Gerät und speichert dessen Test- und Messdaten, die im Laufe der über mehrere Standorte verteilten Produktion anfallen. Produce steuert zudem das Rollout von Firmware und weiterer Konfiguration auf die Geräte, z.B. auch das Rollout digitaler Zertifikate.

Um das Know-how und die Innovationsfähigkeit von Feller zu steigern, entwickelt und produziert Feller seine Geräte selbst.

Feller nutzt mit der auf AWS Fargate basierenden technischen Architektur eine moderne containerbasierte Cloud-Lösung, wie in der nachfolgenden Grafik dargestellt.

AWS Fargate basierenden technischen Architektur, containerbasierte Cloud Lösung

Wichtige sicherheitsrelevante Eigenschaften werden durch AWS-Dienste abgedeckt:

  • AWS WAF: Eine Firewall für Webanwendungen, die vor gängigen Angriffen wie SQL-Injection und Cross-Site-Scripting schützt.
  • Authentisierung mittels Amazon Cognito: Eine Identitätsplattform, die es erlaubt Benutzerauthentifizierung, Zugriffskontrolle und erweiterte Sicherheitsfeatures Web- und mobilen Apps hinzuzufügen.
  • Online-Zertifizierungsstelle (CA) mittels AWS Private Certificate Authority: Ein verwalteter privater Zertifizierungsstellen-Service, mit dem der Lebenszyklus privater Zertifikate einfach und sicher verwaltet werden kann.

Mit diesen AWS Services verringert Feller den Aufwand zur Gewährleistung eines sicheren Betriebs erheblich.

Connect

Eine Smarthome-Installation wird durch einen Installateur in einer Liegenschaft verbaut und anschliessend an den Endbenutzer übergeben. Sie besteht aus einer Menge verbundener Geräte, z.B. Schalter, Dimmer oder Storenaktoren. Eine durchschnittliche Home-Installation umfasst ca. dreissig Geräte. Ein dediziertes Gerät von der Grösse einer einfachen Steckdose fungiert dabei als Gateway; es kommuniziert über ein WLAN-Netzwerk mit der AWS-Cloud.

Die Aufgabe von Connect ist es, die Kommunikation zwischen einer Installation (via ihrem Gateway) und dem Benutzer (via einer App) zu ermöglichen. Abhängig vom gewählten Use Case sind die Anforderungen an diese Kommunikation sehr unterschiedlich.

Aktuell unterstützt Connect die folgenden Protokolle für die Kommunikation zwischen Gateway und Cloud:

  • HTTP REST, z.B. für Firmware-Updates
  • MQTT, z.B. für die Ausführung von Kommandos auf einem Gerät mit tiefen Latenzen oder bei Telemetrie-Daten der Installation

Beide Protokolle sind mittels Authentifizierung und verschlüsselter Übermittlung (TLS) gesichert, dabei kommen die zuvor mit Produce ausgestellten digitalen Zertifikate zum Einsatz.

Die für Connect auf AWS Fargate basierende technische Architektur ist in der nachfolgenden Grafik abgebildet:

hochskalierbaren MQTT-Brokers via AWS IoT Core

Die wichtigste an AWS ausgelagerte Funktion ist dabei der Betrieb eines hochskalierbaren MQTT-Brokers via AWS IoT Core. Um eine vollständige Unabhängigkeit vom Hyperscaler bezüglich der direkten Geräteschnittstelle zu bewahren, erfolgt die TLS-Terminierung auf eigens konfigurierbaren NGINX-Proxies.

Analyze

Ein Grossteil der in den Produce- und Connect-Komponenten anfallenden Daten stehen Feller auch zu Analysezwecken zur Verfügung. Die Aufgabe der Analyze-Komponente ist es, diese Daten zu speichern, zu aggregieren sowie die Daten zeitgerecht den unterschiedlichen Auswertungstools bereitzustellen.

Die Architektur der Komponente wurde inspiriert von der AWS Serverless Data Analytics Pipeline. Für Feller von zentraler Bedeutung sind dabei die folgenden Datenpfade:

  • Near real-time Analytics via Amazon Simple Storage Service (Amazon S3), Amazon Simple Notification Service (Amazon SNS), Amazon Simple Queue Service (Amazon SQS), AWS Lambda und Amazon OpenSearch Service
  • OLAP-Processing via Amazon S3, AWS Glue und Amazon Athena inklusive der Anbindung an ein proprietäres Business Intelligence Tool

Supportmitarbeiter erhalten über Analyze eine aktuelle und detaillierte Sicht der verbauten Komponenten einer Installation anhand von Firmware- und Hardware-Informationen. Dies umfasst Gerätedetails wie installierte Firmware sämtlicher Geräte oder lokale Kommunikationsprobleme. Qualitätsverantwortliche für die Produktion wiederum können über Analyze Details zu den Prüfroutinen der Prüf- und Programmiergeräte aufrufen. Dadurch lässt sich erkennen, ob Tests systematisch fehlschlagen. So können Hardware-Probleme von Komponenten frühzeitig erkannt werden.

Analyze ist eine Komponente, die fast gänzlich ohne selbstentwickelte Funktionalität auskommt. Die Entwicklungszeit konnte dank Verwendung von AWS-Services und Infrastructure-as-Code (IaC) stark verkürzt werden. Zusätzlich reduziert sich der Betriebsaufwand beträchtlich.

Fazit

  • Das IoT-Ökosystem hat die Effizienz der Entwicklungs-, Produktions- und Supportprozesse von Feller erheblich gesteigert. So erfolgen heute grosse Teile der Supportanfragen sowie die Umstellung der Produktion remote und ohne physische Intervention vor Ort.
  • Die Entwicklungszeit des IoT-Ökosystems konnte durch Einsatz von AWS-Technologie stark verkürzt werden.
  • Die Entscheidung, weitgehend auf AWS zu setzen, bietet für den Betrieb des Systems erhebliche Vorteile. Mit Hilfe der AWS Monitoring Services kann ein kleines Team bei Ergon gleichzeitig das System betreiben sowie dessen Funktionalitäten laufend erweitern. Erkenntnisse aus dem Betrieb fliessen unmittelbar und zielgerichtet in die Entwicklung ein.
  • Die hohe Zuverlässigkeit der AWS-Services wie auch deren Stabilität und Langfristigkeit ihrer APIs erleichtern Entwicklung und Betrieb.
  • AWS-Kosten lassen sich feingranular (d.h. pro Service und Umgebung) auswerten. Dies ermöglicht gezielte Kostenoptimierungen wie auch eine akkurate Gesamtkostenrechnung für ein Produkt.