
Mit zunehmender Maschinenkomplexität und steigenden Anforderungen an Produktionsdaten stieß MTS mit klassischen Ansätzen im Automatisierungsengineering an Grenzen. Vor allem Zusammenarbeit, Wiederverwendung von Code und Qualitätssicherung ließen sich nicht so umsetzen, wie es die Entwickler aus der Softwarewelt kannten.
„Wir haben schon lange versucht, unsere Softwarepraktiken auf die OT-Entwicklung zu übertragen, aber bei jeder Plattform stießen wir an eine Grenze“, erklärt Peter Kurhajec, Chief Technology Officer bei MTS. Mit Simatic AX habe das Unternehmen nun eine Umgebung gefunden, in der sich Methoden der Softwareentwicklung auch für die OT nutzen lassen.

Softwaremethoden für das SPS-Engineering
Simatic AX Engineering ist eine IT-orientierte Engineering-Umgebung von Siemens für Simatic-SPSen. Sie basiert auf Visual Studio Code und verbindet textbasierte Programmierung und objektorientiertes Design mit Paketmanagement, Versionskontrolle und Unittesting. Anwender können damit beispielsweise vergleichbare Pipelines für die Bereitstellung von Paketen, Softwaretests und Änderungen einsetzen, wie sie in der klassischen Softwareentwicklung üblich sind.
MTS nutzt die Offenheit des Systems darüber hinaus, um eigene Entwicklungsschritte zu automatisieren. Daraus entstand das Framework AX#, das das Unternehmen als Open-Source-Software veröffentlicht. „Das AX#-Framework unterstützt dabei, komplexe Maschinen mit vielen Komponenten schnell zusammenzustellen“, erläutert Blazej Kuhajda, Senior Developer bei MTS. Die einzelnen Komponenten sind dabei als Softwarekomponenten von der Hardware entkoppelt.
Für den Sondermaschinenbau ist dieser Ansatz vor allem bei wiederkehrenden Maschinenfunktionen interessant. Softwarebausteine lassen sich unabhängig entwickeln, testen und anschließend zu einer konkreten Maschinenapplikation kombinieren. Änderungen an einzelnen Komponenten müssen damit nicht zwangsläufig Anpassungen in anderen Teilen des Projekts nach sich ziehen.

Daten schon im Komponentendesign berücksichtigen
Ein weiterer Grund für die Umstellung sind die Anforderungen der Kunden an Produktionsdaten. Diese sollen zunehmend in Cloud-Systemen gespeichert und für weitergehende Analysen genutzt werden. Voraussetzung dafür sind strukturierte und konsistente Daten aus der Maschine.
Durch die objektorientierte Programmierung in Structured Text kann MTS die Datenerfassung unmittelbar in das Komponentendesign integrieren. Eine Motor-Komponente protokolliert beispielsweise automatisch Messwerte wie Drehmoment, Geschwindigkeit und Temperatur sowie Fehlerereignisse mit Zeitstempel. Die Datenerfassung wird damit Bestandteil der jeweiligen Softwarekomponente und muss nicht für jede Maschinenapplikation separat umgesetzt werden.
„Das Schwierige ist, hochwertige Daten aus der Produktion zu bekommen, weil dafür viel manuelle Arbeit und Tests nötig sind“, sagt Kurhajec. Entwicklungsmechanismen wie Git-Versionierung, Unittests und Paketmanagement unterstützen iterative Abläufe und sollen Qualität sowie Versionskonsistenz über mehrere Entwickler hinweg sicherstellen.
Auch der Zugriff auf die Daten lässt sich vereinfachen. „Wenn wir z.B. Daten in einer Datenbank speichern wollen, genügt in der SPS nur eine einzige Codezeile“, erklärt Martin Hareznik, Leiter der Softwareabteilung bei MTS. Automatisierte Abläufe sollen es zudem ermöglichen, Applikationsingenieuren neue Services schneller zur Verfügung zu stellen.

AX# und AXOpen erweitern die Toolchain
Die offene Architektur von Simatic AX ermöglicht MTS, eigene Werkzeuge auf der Engineering-Umgebung aufzubauen. Neben AX# entstand dafür AXOpen. Beide Projekte stellt das Unternehmen über seine GitHub-Community als Open Source bereit. AX# übersetzt SPS-Programme automatisch in .NET-Bibliotheken. Dadurch werden ein strukturierter Datenzugriff und die automatisierte Generierung von HMI-Anwendungen möglich. Manuelle Schritte bei der Oberflächenprogrammierung lassen sich dadurch reduzieren und Softwarestände konsistenter halten.
















