Cloud-basierte Webserver als OPC-Ersatz Durchgängige webbasierte Visualisierung

Praktisch jede Automatisierungsbaugruppe mit TCP/IP-fähiger Ethernet-Schnittstelle besitzt heute auch einen eingebetteten Webserver (Embedded-HTTP-Server). Über diesen kann mit einem beliebigen Webbrowser per HTTP (Hypertext Transfer Protocol) auf die baugruppeninternen Datenbestände zugegriffen werden. Dadurch ist beispielswei­se die Gerätekonfiguration bei der Inbetriebnahme einer Baugruppe ohne Spezialsoftware möglich. Durch die vielfältigen multimedialen Gestaltungsmöglichkeiten einer webbasierten HMI-Schnittstelle kann in der Regel auch auf ein umfangreiches Handbuch verzichtet werden, da die Benutzerschnittstelle selbsterklärend mit integrierter Hilfe gestaltet werden kann. Darüber hinaus lässt sich im Servicefall per Browser von einem x-beliebigen PC aus der aktuelle Zustand einer Automatisierungskomponente überprüfen und beeinflussen. OPC zur Datenintegration und Visualisierung Da Ethernet-basierte Baugruppen wie z.B. eine SPS auf der einen Seite auch in die Feldebene einer Automatisierungslandschaft eingebunden sind, wird teilweise auch die Anlagen- und Prozessvisualisierung mithilfe eingebetteter Webserver realisiert. Das klappt bei kleinen Anlagen mit einer zentralen Steuerung recht gut. Größere Anlagen und komplexere Prozesse besitzen mehrere Steuerungen, die jeweils nur für eine Teilaufgabe und somit selektiv für bestimmte Prozessvariablen verantwortlich sind. Der Webserver jeder einzelnen SPS kann in einer solchen Umgebung daher nur auf einen Teil des gesamten Prozessabbildes zugreifen. Die Korrelation der Prozessvariablen verteilter Steuerungen und die Integration in eine einzige Visualisierungswebseite lassen sich über die eingebetteten Webserver einer verteilten Automatisierungsanwendung bisher nicht ohne weiteres realisieren. Aus diesem Grund wird in größeren Anlagen nach wie vor OPC zur Datenintegration und Visualisierung eingesetzt. Für die Beschaffung der OPC-Server-/Client-Komponenten und -Lizenzen entstehen häufig erhebliche Mehrkosten. Zu beachten ist auch, dass eine sol­che inhomogene Gesamtlösung sehr schwer zu administrieren ist und OPC-typische Sicherheitsprobleme mit sich bringt. Da die Visualisierung durch den OPC-Einsatz wieder über eine Spezialsoftware – den OPC-Client – erfolgt, gehen die Vorteile webbasierter Lösungen verloren. In einigen Anwendungen wird daher als OPC-Client ein spezieller HTTP-Proxy-Server (OPC-to-Web) geschaltet, um per Webbrowser auf die integrierten OPC-Daten zuzugreifen. Die Komplexitäts-, Administrations- und Sicherheitsprobleme bleiben allerdings bestehen. Eingebetteter Webclient liefert Prozessvariable an Cloud-Service Technisch ist es inzwischen auch in der Automatisierung problemlos möglich, selbst sehr komplexe Visualisierungsaufgaben ausschließlich mit Hilfe von HTTP zu realisieren. Neben dem Webserver müsste eine Automatisierungsbaugruppe dann nur noch einen eingebetteten Webclient (Embedded-HTTP-Client) besitzen. Dieser liefert die aktuellen Prozessvariablen per HTTP-POST- oder -GET-Request an einen entsprechend vorbereiteten Cloud-Service im Internet. Als Datenübergabeformat zwischen Client und Service eignen sich beispielsweise JSON-Strings oder XML. Die Prozessdaten der einzelnen Webclients werden dann vom Cloud-Service in eine gemeinsame Datenbank übertragen. In dieser Datenbank befinden sich somit zu jeder Zeit die aktuellen Wer­te aller Prozessvariablen einer bestimmten Anlage bzw. eines bestimmten Prozesses. Mit anderen Worten: Die Datenbank beinhaltet stets ein aktuelles und vollständiges Prozessabbild, das sich aus den Teilabbildungen der einzelnen Automatisierungsbaugruppen zusammensetzt. Für die eigentliche Visualisierung ist nach wie vor eine speziell zu erstellende Webseite erforderlich. Diese wird allerdings nicht in einer Automatisierungsbaugruppe, sondern ebenfalls im Internet gespeichert. Die Seite selbst besteht aus statischen HTML-Elementen. Die Integration der dynamischen Prozessvariablen erfolgt per AJAX, also mithilfe periodischer HTTP-Requests. Zur Anlagen- und Prozessvisualisierung muss der entsprechend autorisierte Bediener nun nur noch mit einem Webbrowser die spezielle Webseite im Internet adressieren. Die Seite wird dann vom Browser geladen und dargestellt. Die jeweils aktuellen Prozessvariablen werden per AJAX-HTTP-Requests periodisch beim Cloud-Service angefordert. Dieser holt die entsprechenden Datenelemente aus der Datenbank und liefert diese an den Browser. Cloud-Service, Datenbank, Visualisierungswebseiten und der Webserver für den Zugriff auf die Webseiten werden auf den Rechnersystemen eines entsprechenden Internet-Serviceproviders gespeichert. Da derartige Anwendungskonzepte in der IT-Welt seit einigen Jahren weit verbreitet sind, gibt es inzwischen zahlreiche Anbieter für die benötigte Infrastruktur. Der Marktführer ist gegenwärtig Amazon mit den so genannten Amazon Web Services. Aber auch IBM, Google, Siemens und viele andere bekannte Unternehmen haben sich inzwischen als Dienstleister für Cloud-Projekte im Markt positioniert. Was sind eigentlich Cloud-Services? Technisch kann man sich Cloud-Services und das diesen Diensten zugrunde liegende Cloud-Computing als Modell dreier übereinander liegender Schichten vorstellen, auf die jeweils einzeln per Internet zuge­griffen werden kann. Die unterste Ebene bildet die \’Infrastructure as a Service\‘ (IaaS). Hiermit ist eine Rechenzentrumsinfrastruktur gemeint, in der man virtuelle Server zum Einsatz bringen und fernsteuern kann. Direkt darüber findet man die \’Platform as a Service\‘ (PaaS). In dieser Schicht wird eine Laufzeitum­gebung mit Betriebs­system, Webserver, Bib­liotheken, speziellen Sprachinterpretern, Datenbank usw. zur Verfügung gestellt, um selbst entwickelte Anwendungen ablaufen zu lassen. \’Software as a Service\‘ (SaaS) bildet die oberste Ebene. Hier sind die bereits angesprochenen Cloud-Services zu finden. Sie laufen in der PaaS-Ebene und bieten eine per Internet erreichbare Serviceschnittstelle, über welche die jeweiligen Dienste in Anspruch genommen werden können. Der Begriff \’Cloud\‘ basiert im Übrigen auf dem Sachverhalt, dass das Internet in Graphiken und Abbildungen stets als (Netzwerk-)Wolke dargestellt wird. \’Cloud-Service\‘ bedeutet demzufolge, dass ein wie auch immer gearteter Service irgend­wo in der (Internet-)Wolke als funktionaler Baustein zur Verfügung steht. Zu guter Letzt muss noch auf zwei wichtige Merkmale hingewiesen werden, die Cloud-Services von Web-Hosting-Services und IT-Outsourcing-Lösungen unterscheiden (in beiden Fällen steht in der Regel auch ein per TCP/IP-basiertem Internetzugriff nutzbarer Service zur Verfügung): 1. Skalierbarkeit: Ein Cloud-Service besitzt skalierbare Leistungsreserven. Reicht die Rechenleistung für einen Service aufgrund zahlreicher Client-Anfragen nicht aus, um eine Aufgabe innerhalb einer bestimmten Zeiteinheit zu erledigen, können zusätzliche Kapazitäten dynamisch beispielsweise durch die Ausführung weiterer Server-Instanzen hinzugezogen werden. 2. Nutzungsabhängige Abrechnung: Ähnlich wie z.B. bei der Elektrizität wird nur die tatsächlich in Anspruch genommene Leistung bezahlt. Fazit Mit eingebettetem Webserver zur Konfiguration plus einem Embedded- HTTP-Client mit dem entsprechenden Cloud-Service zur Visualisierung sind homogene und sehr sichere HTTP-basierte Lösungen auf der Grundlage etablierter Standards auch in der Automatisierung möglich. Den aufwendigen und kostenintensiven Umstieg auf OPC UA könnte sich die Automatisierungswelt dann vielleicht vollständig schenken. Schließlich sollte man sich auch hier hin und wieder die Frage stellen: \“Warum kompliziert, wenn es auch einfach geht?\“ Halle 12, Stand 254d