Updates für CODESYS-Steuerungsapplikationen: 600% schneller über die Cloud

Ob Sondermaschine, automatisiertes Industriegebäude, mobile Arbeitsmaschine oder Logistiksystem: Updates der Steuerungsapplikation zur Prozess-, Leistungs- oder Funktionsverbesserung betreffen alle Automatisierungssysteme. Wie das folgende Beispiel zeigt, lassen sich diese durch eine cloudbasierte Steuerungsadministration erheblich beschleunigen.

Die Firma Gebhardt entwickelt und produziert mit rund 650 Mitarbeitern Intralogistik-Komplettlösungen: von der Förderrolle bis zum kompletten Regalbediengerät. Eines der Produkte, das StoreBiter 300 OLS, ist ein Lagersystem für hohe Leistungsanforderungen und wird mit einer Codesys-basierten Lenze-SPS vom Typ C300 gesteuert. Durch verschiedene Lastaufnahmemittel ist das System sehr flexibel in der ein- oder mehrfachtiefen Lagerung von Behältern, Tablaren und Kartons verschiedener Größen. Es eignet sich z.B. für die Umsetzung des Ware-zum-Mann-Prinzips, besonders in Verbindung mit den SimplePick-Kommissionierstationen von Gebhardt. Das Lagersystem kann aus einer oder mehreren Gassen bestehen, worin jeweils mehrere Shuttles eingesetzt werden können. Jede Gasse wird, abhängig von der Lagerhöhe, in mehrere Ebenen aufgeteilt. Je nach Leistungsanforderung wird dabei jede Ebene mit einem Shuttle bestückt oder die Anzahl der Shuttles entsprechend reduziert. Am Ende einer Gasse befinden sich Hubgeräte, über die die Abgabe der Behälter erfolgt oder die Shuttles die Ebene wechseln können. Durch eine modulare Gestaltung der einzelnen Systemkomponenten können individuelle Lösungen entwickelt werden, die passend auf die jeweiligen Kundenanforderungen zugeschnitten sind.

Aufwändige Steuerungs-Updates

Wie lassen sich die vernetzten Steuerungen eines solchen Shuttle-Systems updaten? Das seit Jahren etablierte Verfahren ermöglichte die Verwaltung der installierten Basis von Lagersystemen. So berichtet Dominik Lang, verantwortlich für den Bereich SPS-Entwicklung & Standardisierung OLS 2D & X bei Gebhardt, dass bislang für jeden Kunden am hauseigenen Server eine virtuelle Wartungsmaschine eingerichtet wurde, die per VPN mit dem Kundennetz verbunden ist. Es gab zwar keine Übersicht über den Betriebszustand der Shuttles des Kunden, trotzdem war es darüber möglich eine Verbindung mit einzelnen Shuttles herzustellen um sie z.B. zu aktualisieren. Speziell für die Inbetriebnahme der Steuerungen wurde ein kleines Tool entwickelt, um vor Ort ein Update der Shuttle-Applikation über einen FTP-Server zu installieren. Dieses Verfahren funktionierte allerdings nur lokal, d. h. nur dann, wenn die Inbetriebnahme am Ort der Anlage durchgeführt wurde. Versioniert wurde der Quellcode in Windows-Ordnern auf dem Server. Durch diese Verzeichnisstruktur tauschten die Applikationsentwickler von Gebhardt die CODESYS-Projekte aus. Mit dem Erfolg des Lagersystems und der mittlerweile 900 installierten Shuttles wurde mit der Zeit klar: Betreuung und Updates sind zeitraubende und organisatorisch komplizierte Angelegenheiten. Für einen einzigen Kunden konnte sich so ein Update über mehrere Stunden ziehen. Während dieser Zeit musste die gesamte Gasse stillgelegt werden, auch durften keine Aufträge bearbeitet werden. So musste das erforderliche Zeitfenster im Voraus mit dem Kunden genau abgestimmt werden und stieß auf denkbar wenig Akzeptanz. Gleichzeitig herrscht kundenseitig doch ein hoher Update-Druck. Insbesondere während der etwa einwöchigen Inbetriebnahme, wenn die Anlage an die Kundenwünsche angepasst wird, ergibt sich dadurch eine sehr kritische Situation. Für Lang und seine Kollegen immer eine besonders stressige Zeit, wenngleich sie immer versuchen, die Stillstandszeiten außerhalb der Arbeitszeiten des Kunden zu legen.

Cloudbasierte Steuerungsadministration

Wie kann das dreiköpfige Entwicklerteam das Update-Verfahren beschleunigen? Auf der Suche nach einer Lösung fand man am Markt nichts, was die Anforderungen erfüllte. Ein wesentliches Kriterium: Der Aufwand für die Pflege einer geeigneten Infrastruktur sollte möglichst gering sein. So wurden die Entwickler 2019 über einen Fachartikel auf den CODESYS Automation Server aufmerksam, der sich damals noch in der Beta-Phase befand. Lang startete erste Versuche an seinem Schreibtisch, um Steuerungen in den Server einzubinden, Quellcode sowie die Binär-Applikationen für die Steuerungen in seinen Tenant, sprich sein geschütztes Server-Konto zu laden, und diese Applikationen auf die angebundenen Steuerungen zu übertragen. Umfangreiche Hilfsdokumentationen und einige kurze YouTube-Videos reichten aus, um sich schnell in dem intuitiv zu bedienendem System zurechtzufinden. Nach etwa einem halben Tag waren so die ersten Steuerungen mit dem CODESYS Automation Server verbunden. Daraus entstand für Gebhardt die Überzeugung: Diese Lösung ist geeignet, um das geschilderte Update-Verfahren deutlich zu beschleunigen. Nach dem Schreibtischexperiment und kleineren Anpassungen am Codesys Automation Server zur bestmöglichen Unterstützung der C300-Steuerungen wagte man den nächsten Schritt: die Anbindung des CODESYS Automation Servers an das eigene Echtlager in Sinsheim. Nachdem die erforderlichen Applikationen in den Server geladen und die Steuerungen eingebunden waren, wurde die Applikationssoftware über den Server auf die Steuerungen ausgerollt. Für einen direkten Vergleich wurde die Applikationssoftware mit dem bisherigen Verfahren in einem weiteren Lager in Betrieb genommen. Der Unterschied war deutlich: Während Dominik Lang und seine Kollegen mit ihrem bestehenden Prozess ca. zwei Stunden für die Einrichtung des Lagers benötigten, war das Lager mit dem Automation Server nach 20 Minuten in Betrieb – und damit sechs mal schneller.

Versionierung im Blick

Über den CODESYS Automation Server wurde die Applikationssoftware nicht nur automatisch auf alle Steuerungen ausgerollt, sie war gleichzeitig auch sauber versioniert. Ab diesem Zeitpunkt hatten die Entwickler jederzeit den Überblick, welcher Applikationsstand auf welcher Steuerung läuft. Für eine weitere Bearbeitung konnte der Quellcode wieder direkt vom Server abgerufen werden. Um ihre Projektstände synchron zu halten, verwenden die Softwareentwickler seitdem keinen Windows-Ordner mehr, sondern sie nutzen die Mechanismen des CODESYS Automation Servers. Über einen längeren Zeitraum beobachteten sie das Zusammenspiel zwischen dem Server und der Steuerungswelt im Lager. Stabilität, hohe Verfügbarkeit und die Sicherheit der Daten wurden genau analysiert. Im Februar 2020 entschloss man sich dann, das erste Kundenprojekt mit dem CODESYS Automation Server zu realisieren. Insgesamt wurden dabei in einer neuen Anlage 15 Steuerungen innerhalb eines halben Tages angebunden und in Betrieb genommen. Zur Strukturierung innerhalb des Servers werden Tags an den Steuerungen genutzt. Sie erlauben eine Filterung nach dem Projekt und innerhalb des Projekts nach den Gassen, in denen sie eingesetzt werden. Der Nutzen durch den CODESYS Automation Server ist für Gebhardt so hoch, dass sein Einsatz bei allen neuen Projekten gesetzt ist. Seit Kurzem wird die cloudbasierte Plattform sogar in Brownfield-Projekte sukzessive aufgenommen. So administrieren Lang und seine Kollegen z.B. die 70 Steuerungen und deren SPS-Applikationen im Lager von Intersport Deutschland nun bequem über die cloudbasierte Plattform. „Der Automation Server bringt uns eine erhebliche Zeitersparnis und ist zudem eine passende Plattform, um uns untereinander zu vernetzen“, resümiert Lang.

Der Artikel von Samuel Greising, Product Manager bei der CODESYS GmbH, erschien im SPS-Magazin und in "Der Maschinenbau", Ausgabe 09/2020.

Jobs @ CODESYS