Automation
App-Technologie im Maschinen- und Anlagenbau
Die Softwaretechnologie moderner Mobilgeräte verspricht neue Möglichkeiten, die Informationen von Produktionsmaschinen und -anlagen zu verarbeiten. Neben gründlicher Vorplanung und profunder Kenntnisse ist insbesondere eine offene Schnittstellentechnologie die Voraussetzung für die zukunftsfähige Verwendung von Smart Apps beziehungsweise Smart Devices im industriellen Umfeld.
Die Software-Intelligenz von Produktionsanlagen gewinnt an Bedeutung und entscheidet zunehmend über den Markterfolg im Maschinenbau. Mit Blick auf zunehmend komplexere Anlagen und den steigenden Wettbewerbsdruck kommen Smart Devices und die dazu gehörenden Apps – in der Consumer-Welt längst gang und gäbe – zur richtigen Zeit. Unter Verwendung bekannter Softwaretechnologien aus der IT-Welt bergen sie ein für Hersteller wie Betreiber interessantes Innovationspotenzial. So bietet der lokale Zugriff auf Maschineninformationen viele neue Anwendungsszenarien wie beispielsweise Konzepte zur vereinfachten Maschinenbedienung, Betriebsdatenerfassung, Service, Diagnose oder Wartung.
Grundsätzlich lassen sich die Vorteile beziehungsweise Erfahrungen der Anwender mit Smart Apps im kommerziellen Umfeld unverändert auf die industrielle Umgebung übertragen. Zu nennen sind in diesem Zusammenhang:
- bedarfsgerechter Informationsgehalt,
- erhöhte Übersichtlichkeit durch Informationsreduzierung,
- intuitive Bedienphilosophie anhand von Gesten und Symbolen,
- Verwendung orts- oder lageabhängiger Informationen der Gerätesensorik
- sowie einfache und geräteübergreifende Installation und Verwendung der Apps.
Um ein geeignetes beziehungsweise individuelles App-Konzept finden und umsetzen zu können, sollte der Maschinenhersteller frühzeitig die wirtschaftlichen und technischen Ziele seiner App-Strategie festlegen – entweder selbst oder aber mit Unterstützung entsprechender Dienstleister. Dabei ist das grundlegende Geschäftsmodell, die Zielgruppe, den Einsatzbereich sowie die Ausbringung und das Lebenszyklus-Management dieser Produkte zu beschreiben. Weiterhin sind das Bedienkonzept, die Infrastruktur inklusive Sicherheitsanforderungen der Anwendung sowie weitere technische Randbedingungen zu Funktionalität und Einsatzumgebung im Detail festzulegen und zu berücksichtigen. Auf dieser Basis kann der Maschinenhersteller das technische Konzept mit den zu verwendenden Geräten und Entwicklungsplattformen ableiten.
Native versus webbasierte Apps
Die Plattformtechnologien mobiler Anwendungen lassen sich in so genannte native Apps und webbasierte Apps unterteilen. Erstere verwenden gezielt die Eigenschaften des jeweiligen Betriebssystems sowie der darauf basierenden Software-Architekturen und Oberflächen. Diese Anwendungen unterstützen damit durchgängig die Bedienung des Geräts, können gerätespezifische Funktionen wie die Sensorik optimal nutzen und ihre Funktionalitäten völlig autark bereitstellen. Die Erstellung dieser Apps erfolgt mit der vom Betriebssystemhersteller zur Verfügung gestellten Programmierumgebung, die dafür spezielle Erweiterungen bietet. Diese legt auch die native Programmiersprache fest. Die Ausbringung der Apps erfolgt offiziell über die App-Stores der Betriebssystem- oder Gerätehersteller.
Das SDK des Open Core Interface stellt dem Entwickler den vollständigen Funktionsvorrat der Steuerungen als Bibliotheken zur Verfügung. Jede Bibliothek wird über eine Header-Datei in das Hochsprachenprogramm eingebunden.
© Bosch RexrothDas frei verfügbare Android von Google beispielsweise ist mit derzeit rund 75 % Marktanteil das bei Smartphones am häufigsten eingesetzte Betriebssystem. Die dazugehörige Programmierumgebung und das sehr umfangreiche „Software Development Kit“ (SDK Android Developer Tools) verwenden die quelloffene, ursprünglich von IBM entwickelte Eclipse-Softwareplattform. Der Anwender programmiert in der Sprache Java.
Zu ergänzen ist, dass sich mit Android NDK (Native Development Kit) auch Apps in den Sprachen C/C++ erstellen lassen, wenngleich dies mit einigen Einschränkungen verbunden ist. So eignet sich das NDK für „ARM Processor Instruction Set“-Architekturen, Nachteile bestehen zudem in der höheren Komplexität bei Programmierung und Debugging gegenüber Java und dem beschränkten Funktionsumfang.
Darüber hinaus wurde die neue Entwicklungsumgebung Android Studio angekündigt. Ein weiteres Beispiel ist iOS von Apple, das die Programmierumgebung xCode und die Sprache Objective-C verwendet. Mit Windows Phone 8 von Microsoft stehen Visual Studio und das Windows Phone SDK 8.0 für die Sprachen C# oder Visual Basic zur Verfügung.
Damit wird der Nachteil nativer Apps offensichtlich: Die Unterstützung von Geräten mit unterschiedlichen Betriebssystemen über spezifisch erstellte Anwendungen erfordert unterschiedliche Programmier-Tools und -sprachen.
Im Gegensatz dazu laufen webbasierte Apps im jeweiligen Browser des Geräts und sind damit unabhängig von Betriebssystem und Gerät. Die Programmierung erfolgt in der Regel mit den Web-Standards HTML, CSS und Javascript, die – und das ist ein Vorteil – für alle Mobilgeräte verfügbar sind. Der Nachteil liegt insbesondere in der nicht angepassten Bedienphilosophie des jeweiligen Geräts sowie im fehlenden Zugriff auf spezifische Funktionen des Betriebssystems und des Geräts. Hinzu kommt, dass die Performance von webbasierten Apps hinter der von nativen Apps zurücksteht und die HTTP-basierte Kommunikationsanbindung entsprechende Datenserver für die Informationen erfordert.
Zwischenzeitlich sind Multi-Plattform-Lösungen verfügbar, die aus einem einmal programmierten Quellcode native Apps für unterschiedliche Betriebssysteme erzeugen. Diese können die funktionalen Nachteile webbasierter Apps, welche derzeit beispielsweise im eingeschränkten Hardwarezugriff, der schlechteren Performance, der komplexeren Engineering-Umgebung sowie im unterschiedlichen Verhalten von Browsern bestehen, teilweise kompensieren.
Neben einigen plattformübergreifenden Softwareprodukten von Drittherstellern mit Cross-Compilern ist PhoneGap von Adobe ein interessanter Lösungsansatz. Als Programmierschnittstelle ermöglicht PhoneGap über Web-Standards den Zugriff auf Browser und native Gerätefunktionen, unabhängig von der Plattformtechnologie. Mit der frei verfügbaren Erweiterung für die nativen Entwicklungsumgebungen lassen sich webbasierte Applikationen für die meisten Betriebssysteme erstellen, darunter Android, Symbian, WebOS, iOS, Black Berry OS und Windows Phone. In diesem Zusammenhang ist zudem das neue Firefox OS der Mozilla Corporation zu nennen. Wie Android basiert es auf einem Linux-Kernel und setzt durchgängig Web-Techniken ein, um Programmierern größtmögliche Offenheit und Kompatibilität anzubieten.
Die Entscheidung, welche Plattformtechnologie Verwendung findet, hängt letztendlich meist vom Einsatzzweck der Apps ab. Webbasierte Apps eignen sich beispielsweise vor allem für reine HMI-Lösungen. Zum Einsatz kommen bekannte Web-Technologien wie HTML und Webserver. Mit OPC-UA steht darüber hinaus ein neues M2M-Kommunikationsprotokoll zur Verfügung, mit dem die produktionsweite Vernetzung in der Automatisierungspyramide standardisiert werden soll. Native Apps kommen wie erwähnt ohne Webserver aus und stellen ihre Funktionen völlig autark und mit höchster Performance auf mobilen Zielgeräten bereit.
Der Open-Core-Ansatz
Damit Maschinenhersteller Smart Devices und native Apps für ihre Maschinenkonzepte nutzen können, bedarf es einer entsprechenden Schnittstelle, die die bislang getrennten Engineering-Welten von Automatisierung und IT verbindet. Die Firma Rexroth hat deshalb für ihre Motion-Logic-Systeme IndraMotion MLC und IndraLogic XLC eine neue universelle Schnittstellentechnologie – das Open Core Interface – entwickelt. Diese Technologie bringt ein Software-Entwicklungskit (SDK) für die unterschiedlichen Programmierumgebungen, Betriebssysteme und Zielgeräte von Smart Apps sowie anderen Anwendungen der IT-Automation mit. Über dieses Entwicklungskit haben Hochsprachen-basierte Anwendungen von unterschiedlichen Zielgeräten aus flexiblen Zugriff auf die Motion-Logic-Systeme. Anwendungen auf Basis C/C++ sind darüber hinaus direkt in der Echtzeit-Umgebung der Steuerungen lauffähig.
Installiert und eingebettet in Programmierumgebungen wie Microsoft Visual Studio, Eclipse oder Apple xCode bietet das SDK des „Open Core Interface“ ein „Application Program Interface“ (API) mit über 400 Funktionen. Diese sind aufgeteilt in funktionsorientierte Bibliotheken mit umfangreichen Hilfen und Anwendungsbeispielen. Kurzum: Mit dem Open Core Interface haben Maschinenhersteller die Möglichkeit, Smart Apps selbstständig zu realisieren.
Völlig unabhängig vom SPS-Programm auf der Steuerung können Anwender über die Schnittstelle direkt auf den kompletten Funktionsvorrat des Steuerungskernels der Motion-Logic-Systeme zugreifen. Der Funktionsaufruf „mlpiSystemGetDiagnosisLog()“ etwa meldet aus der Funktionsbibliothek „System“ das vollständige Diagnose-Logbuch der Steuerung zurück.
Beispiel für eine App zur Systemdiagnose auf Basis von Google Android zum Auslesen und Darstellen sämtlicher System- und Zustandsinformationen. Die Kommunikationsaufnahme zur Steuerung erfolgt über QR-Code.
© Bosch RexrothFür eine vollständige Systemdiagnose hat Rexroth beispielhaft eine native App auf Basis von Google Android umgesetzt. Diese liefert Informationen zum System und den angeschlossenen Antrieben. Software- und Hardwarestände sowie Steuerungsparameter sieht der Maschinenbetreiber in übersichtlicher Form auf einzelnen Screens. Zudem kann er sich Parameter und Variablen zur Ansicht selber zusammenstellen. Die Antwortzeiten der Steuerung auf die Informationsanfragen sind im Gegensatz zu einer App in Verbindung mit einem Webserver extrem kurz, da die Informationen direkt von der Smart App über nativ programmierte Funktionen ausgelesen werden und die zeit- und ressourcenbelastende Webserver-Verarbeitung auf der Steuerung entfällt. Das ist auch die Voraussetzung, um echtzeitfähige Aktionen wie Motion Control über eine App zu steuern.
Neben solchen Service-Anwendungen eröffnet das Open Core Interface mit der effizienten Hochsprachenprogrammierung neue Möglichkeiten zur Verwendung von Smart Apps im Produktionsumfeld. Mit dem Vorrat der Funktionsbibliothek „Motion“ lassen sich beispielsweise ohne Zuhilfenahme eines SPS-Steuerungsprogramms vollständige Motion-Control-Anwendungen realisieren: Der kurze Programmcode erlaubt mit Hilfe der Funktion „mlpiMotionMoveVelocity()“ eine geschwindigkeitsabhängige Antriebskommandierung mit unterschiedlichen Grenzwerten.
Beispielhafte Implementierung einer Motion-Control-App zum Verfahren eines Linearsystems über die Bewegungssensorik des Tablets. Die 3D-Simulation erfolgt dabei in Echtzeit mit Anzeige der Soll-/Istposition und Override, der Anzeige von Teachpunkten mit Auswahl der Betriebsarten sowie dem Festlegen der Verfahrstrecke.
© Bosch RexrothAber auch komplexe Motion-Funktionen sind mit dem Open-Core-Ansatz umsetzbar. Als Beispiel hat Rexroth eine native App mit Motion-Control-Funktionalität realisiert, mit der Anwender ein Linearsystem einstellen und bewegen können. Die App zeigt Soll- und Istpositionen des Schlittens an und visualisiert die Bewegung in Echtzeit. Über die Multitouch-Oberfläche des Smart Device kann das 3D-Modell gezoomt und in alle Positionen gedreht werden.
Nicht zuletzt lässt sich die in Smart Devices eingebaute Sensorik zur Bewegungssteuerung nutzen, um beispielsweise eine Achse zu verfahren. Zudem können Anwender mit Hilfe der integrierten Kamera den QR-Code von Automatisierungskomponenten einlesen und zur App-basierten Parametrierung verwenden. Das Steuerungssystem wird dabei nur minimal belastet. Mehrere Geräte können sich durch die Multi-Server/-Client-Unterstützung gleichzeitig mit mehreren Steuerungen verbinden beziehungsweise unterschiedliche Anwendungen können parallel auf eine Steuerung zugreifen.
Zusammenfassend lässt sich festhalten: Smart Apps geben Maschinenherstellern neuen Freiraum für kreative Ideen, um Diagnose, Bedienung und Inbetriebnahme von Maschinen zu optimieren. Aufgrund der offenen Schnittstellentechnologie müssen sie sich bei den mobilen Endgeräten dabei nicht auf eine Geräteplattform beschränken, da das Open Core Interface die nativen Programmierumgebungen der wichtigsten Betriebssysteme am Markt ohne Einschränkung unterstützt.
Autor: Norbert Sasse ist Leiter Vertriebliches Produktmanagement Motion Logic Systems bei Bosch Rexroth.














