Cloud-Computing für Embedded-Steuerung

Stefan Kuppinger,

SSV Systeme nutzt IT-Technologie im Feld

Innovative Automatisierungslösungen verlangen oft den Einsatz leistungsfähigerer Hardware. Anstatt schnellere Prozessoren vor Ort einzusetzen, bietet Embedded-Cloud-Computing eine interessante Alternative: Über deren webbasierte Dienste können selbst einfache Automatisierungskomponenten sehr komplexe Aufgaben lösen.

© SSV, ABB

Verglichen mit Servern und Desktop-PCs haben die in Automatisierungsbaugruppen eingesetzten Embedded-Systeme nur eingeschränkte Ressourcen. In der Regel bestehen sie lediglich aus einem Mikrocontroller, etwas RAM und Flash-Speicher für Programme und persistente Daten. Mehrere oder anspruchsvolle Aufgaben können solche Systeme nur bedingt übernehmen. Als nächsthöhere Leistungsklasse kommen daher häufig Industrie- PC-Plattformen zum Einsatz.

Hinsichtlich Energie- und Kosteneffizienz ist das bedenklich, da PCs im Vergleich zu Embedded-Systemen wesentlich mehr Energie verbrauchen und darüber hinaus größere Investitions- und Betriebskosten verursachen. Zudem sind PCs deutlich fehleranfälliger. In Zukunft können Embedded-Systeme PCs ersetzen, da sich die Ressourcen und Funktionen vieler mikrocontrollerbasierter Systeme über Web-Anwendungen erweitern lassen.

Web-Anwendungen sind spezielle Programme, die auf Servern im Internet laufen und im Allgemeinen per Webbrowser kontaktiert werden. Bekannte Beispiele sind Amazon, eBay, Yahoo und Google. Eine besonders beeindruckende Anwendung ist die Google-Suchmaschine: Wird ein Suchbegriff eingegeben, liefert Google in den meisten Fällen innerhalb von Sekundenbruchteilen eine umfangreiche Zusammenstellung der Suchergebnisse als Web-Seite.

Die dafür erforderliche Rechen- und Speicherleistung erfordert ein ausgefeiltes ITKonzept, dass sich sicherlich nicht mit einem einzigen superschnellen Server realisieren lässt. Für so kurze Reaktionszeiten ist vielmehr ein komplettes Hochleistungsrechenzentrum mit Grid/Cluster-Strukturen oder sogar ein weltweites Netzwerk derartiger Zentren erforderlich.

Anzeige

Der Schlüssel zur „Cloud"

Die Servicekomponenten (Cloud Services) einer Web-Anwendung erweitern die Funktionen netzwerkfähiger Automatisierungs-baugruppen.

Eine Kombination von Embedded-System mit den Diensten (Services) einer Web- Anwendung ist aus Sicht eines Informatikers ein klassisches verteiltes System. Die zu lösende Aufgabe wird dazu in mehrere Softwarekomponenten aufgeteilt, die auf unterschiedlichen Rechnern laufen. Diese Rechner bilden vollständig autarke Funktionseinheiten mit eigener CPU, Speicher, I/O-Funktionen, Betriebssystem und sie sind über einen Kommunikationskanal gekoppelt. Die einzelnen Softwarekomponenten kommunizieren und koordinieren ihre Aktivitäten über den Austausch von Nachrichten. Für die Kommunikation zwischen den Teilkomponenten einer verteilten Anwendung kommen mehrere unterschiedliche implizite oder explizite Verfahren in Frage.

Embedded-Systeme zahlreicher Automatisierungskomponenten haben eine IPfähige Kommunikationsschnittstelle, über die eine Verbindung zum Internet hergestellt werden kann. Um auf die Cloud- Services einer Web-Anwendung zuzugreifen, ist in der Embedded-System- Software nur noch die Unterstützung eines speziellen APIs (Application Programming Interface) erforderlich. Bedingt durch die IP-fähige Kommunikationsschnittstelle und das Internet als Medium, eignen sich vor allem Client- Server-Verfahren mit explizitem Nachrichtenaustausch für Embedded-Cloud-Computing.

Die Leistungsmerkmale eines Embedded- Systems (Rechenleistung, Speicherkapazitäten, Betriebssystem) sind statisch. Die Ressourcen einer Web-Anwendung lassen sich hingegen recht einfach den jeweiligen Anforderungen anpassen und in Grenzen dynamisch skalieren. Beispielsweise kann der Speicherplatz, den eine Web-Anwendung über entsprechende Servicekomponenten mehreren Embedded-Systemen zur Verfügung stellt, bei Bedarf vergrößert werden. Dazu muss lediglich ein weiterer Server im Rechenzentrum (Data Center) zugeschaltet werden. Nutzt das Embedded-System nur einen geringen Teil der reservierten Speicherkapazität im Data Center, lässt sich die Kapazität ebenso dynamisch reduzieren.

Das Netz ist der Datenspeicher

Anwendungsbeispiel Cloud-Storage: Rechen- und speicherintensive Anwendungen wie Condition-Monitoring können im Verbund gelöst werden.

Ein für Embedded-Systeme sehr interessanter Dienst ist beispielsweise der Cloud- Storage-Service. Ein solcher Dienst ermöglicht das Speichern beliebiger Objekte auf den Servern eines Rechenzentrums. Für den Zugriff auf einen solchen Service wird ein so genanntes REST-API („Representational State Transfer"-„Application Programming Interface" verwendet, das den Zugriff per HTTP-Request ermöglicht - das gleiche Verfahren, mit dem Web-Seiten im Browser angezeigt werden. Dies ist ein wichtiger Unterschied zu konventionellen Webhosting-Anbietern.

Sie bieten üblicherweise nur den Zugriff auf die Dateien und Verzeichnisse per FTP (File Transfer Protocol), was wiederum eine schnellere CPU und eigenen Massenspeicher auf der Client-Seite voraussetzt. Im Gegensatz dazu können über einen Cloud-Storage- Service kostengünstige mikrocontrollerbasierte Systeme bei Bedarf einen mehrere Giga- oder Terabyte großen Speicherbereich nutzen. Einzige Voraussetzung sind eine TCP/IP-fähige Netzwerkschnittstelle und die Möglichkeit, in der Firmware des Systems einen TCP-Socket für den HTTPRequest zu erzeugen.

Der wohl bekannteste Cloud-Speicherdienst ist Amazon S3 (Simple Storage Service). Dieser Service ist als Objektspeicher organisiert und erlaubt die Archivierung von bis zu 5 GByte großen Einzelobjekten in virtuellen Containern. Neben dem REST-API unterstützt Amazon S3 das SOAP (Simple Object Access Protocol) und das BitTorrent-P2P-Protokoll (Peer-to-Peer). Cloud-Files der Firma Rackspace/Mosso ist ein weiterer Storage-Service, der neben dem obligatorischen REST-API zusätzlich Implementierungen für C#/.Net, Python, PHP, Java und Ruby zur Verfügung stellt. Daher kann aus praktisch jeder gängigen Programmiersprache heraus auf den Rackspace/Mosso-Service zugegriffen werden.

Cloud-Services für die Automation

Mit Embedded-Cloud-Computing (ECC) entwickelt die Firma SSV eine vergleichbare Funktionserweiterung speziell für Embedded-Systeme. Zunächst sind diese Cloud-Services für Data-Logging, Firmware- Update, VPN-basierter Fernzugriff (Remote Access) und Remote Configuration. Der wichtigste Unterschied: Zugriffe auf die Zusatzfunktionen im Internet oder Intranet erfolgen nicht per Browser, sondern per API direkt aus der integrierten Client-Software. Durch diese Zusatzfunktionen lassen sich mit Embedded-Systemen zukünftig Aufgaben lösen, für die bisher sehr viel teurere Industrie-PCs erforderlich waren.

In der Automation gibt es zahlreiche Aufgaben, die mit Cloud-Services gelöst werden könnten. Beispielsweise kann über den Data-Logging-Service eine Langzeitaufzeichnung für Prozessdaten realisiert werden, bei der die anfallenden Daten über einen API-Aufruf an das Speichermedium eines Data-Centers übergeben werden. Auf diese Weise stehen Embedded-Systemen mehrere Gigabyte Speicher zur Datenablage per Internet zur Verfügung.

Die Datenmengen werden unter anderem beim Condition Monitoring von Maschinen oder großen Motoren und Pumpen gebraucht. Aufgrund der Datenmengen, die bei der permanenten Überwachung anfallen, und der rechenintensiven Auswertung (Data-Mining), sind solche Applikationen überwiegend mit leistungsstarken Industrie-PCs realisiert. Über Cloud-Services lässt sich eine derartige Anwendung mit einer einfachen, netzwerkfähigen I/O-Baugruppe realisieren.

Schließlich übernimmt deren Embedded- System letztlich nur die Datenerfassung und die Weiterleitung per Internet an einen Datenerfassungs-Service. Gespeichert, verdichtet und ausgewertet werden die Datenbestände irgendwo im Internet oder Intranet auf den Hochleistungsrechnern eines Rechenzentrums. Von dort aus erfolgt bei Bedarf die Benachrichtigung des Servicepersonals.

Die ECC-Internet-Services unterstützen zunächst die Produktfamilien DIL/NetPC und eSOM-200. Beide Module sind mit vorinstallierten SSV/ECC-Client-Funktionen ohne Aufpreis lieferbar. Als Cloud- Services stehen dem Anwender kostenpflichtige Templates zur Verfügung, die bedarfsgerecht in einem der Data-Center von Amazon (EC2), Google (App-Engine) oder Microsoft (Windows Azure) zur Ausführung gebracht werden.

Autor: Klaus-Dieter Walter, Geschäftsführer der Firma SSV Software Systems in Hannover.

Hintergrund: Die Cloud-Technologie im Feld

Der Begriff „Cloud“ basiert auf der Darstellung des Internets als (Netzwerk-)Wolke. Dementsprechend bedeutet „Cloud-Service“, dass ein wie auch immer gearteter Dienst irgendwo im Internet als Baustein einer Web-Anwendung zur Verfügung steht. Die verstärkte Nutzung dieser Dienste per Internet könnte mittelfristig zu völlig veränderten Anwendungsarchitekturen führen.

 

Technisch gesehen setzt sich Cloud-Computing aus drei Service-Schichten zusammen, auf die per Internet zugegriffen werden kann. In der untersten Ebene, der Infrastructure-as-a-Service (IaaS) befinden sich die virtuellen Server. Ein typisches IaaS-Beispiel ist die „Amazon-EC2“ von der Firma Amazon Web Services (AWS). Darüber liegt die Platform-as-a-Service (PaaS), die eine Laufzeit-Umgebung mit Betriebssystem, Webserver, Bibliotheken und Datenbanken bereitstellt. Über spezielle Sprachinterpreter (zum Beispiel für Java und Python) lassen sich auch selbst entwickelte Anwendungen in der PaaS implementieren. Neben diesen Funktionen müssen IaaS und PaaS die einzelnen virtuellen Server und Laufzeit-Umgebungen isolieren sowie ausgefeilte Sicherheits- und Skalierungsmöglichkeiten zur Verfügung stellen.

 

Bekannte PaaS-Umgebungen sind „Google App- Engine“ und die „Azure Service Platform“ von Microsoft. Software-as-a-Service (SaaS) bildet mit den Web-Anwendungen die oberste Ebene. SaaS-Dienste laufen in der PaaS-Ebene und bieten eine per Internet erreichbare Schnittstelle, über welche die jeweiligen Dienste in Anspruch genommen werden können. SaaS-Anwendungen sind beispielsweise der Google-Kalender und die Office-Anwendungen (Google-Apps), Blog-Services wie Facebook und Twitter oder webbasierte E-Mail-Dienste.

  • Xing Icon
  • LinkedIn Icon
Anzeige
Anzeige

Das könnte Sie auch interessieren

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Fraunhofer IMS

Förderprojekt zu eingebetteter KI

Das Projekt "Edge AI Plattform" geht in die dritte Förderrunde: Drei Fraunhofer-Institute entwickeln die Plattform zur Version 3.0 weiter, um Unternehmen einen noch effizienteren Zugang zu eingebetteter Künstlicher Intelligenz (KI) zu ermöglichen...

mehr...
Jetzt Newsletter abonnieren