Von Copy/Paste zu intelligenter Automatisierung
2013, frisch nach dem Informatik-Studium, begann Stefan Pöter klassische SPS-Steuerungen für Bühnenautomatisierung im Unternehmen seines Vaters zu programmieren. Was er dort vorfand, war symptomatisch für die gesamte Automatisierungsbranche: Jedes Projekt ähnelte dem vorherigen – lediglich die Anzahl der Achsen, die Art der Positionserfassung oder die Konfiguration der Lastmessung variierten. Die grundlegende Logik, die Bewegungssteuerung, die Steuerungsabläufe – all das war im Kern identisch.
Trotzdem bedeutete jede neue Installation denselben mühsamen Prozess: Projektordner des letzten Auftrags kopieren, Code manuell anpassen, Variablennamen ändern, Achskonfigurationen durchgehen, und dann – hoffentlich – beim Kunden vor Ort testen. Wiederverwendung? Ja, aber auf die primitivste Art: Copy/Paste mit anschließender manueller Anpassung. Keine Abstraktion, keine Modularisierung, keine systematische Wiederverwendbarkeit.
Und genau da lag das Problem – ein Problem, das die gesamte SPS-Welt bis heute plagt.
Während die Softwareentwicklung in den letzten zwanzig Jahren gewaltige Fortschritte gemacht hat – Unit-Tests, Continuous Integration, automatisierte End-to-End-Tests, Versionskontrolle mit Git, Code-Reviews, statische Analyse, Refactoring-Tools – ist all das an der Welt von TwinCAT, TIA Portal und Co. komplett vorbeigegangen. Diese Systeme arbeiten heute noch weitgehend so, wie sie es in den 90er Jahren getan haben. Keine automatisierten Tests, die prüfen, ob eine Änderung etwas kaputt gemacht hat. Keine Simulationsumgebungen, in denen man eine komplette Anlage virtuell durchlaufen lassen kann, bevor sie beim Kunden in Betrieb geht. Kein aussagekräftiges Type-System, das offensichtliche Fehler schon beim Kompilieren abfängt. Qualitätssicherung bedeutet: Inbetriebnahme vor Ort, Daumen drücken, und hoffen, dass nichts Unerwartetes passiert.
Und mit diesen Methoden – Methoden, die in der restlichen Softwareentwicklung seit langem als überholt gelten – werden heute Anlagen gesteuert, die Millionen Euro kosten, in denen Menschen arbeiten, und deren Ausfall pro Stunde fünfstellige Verluste verursachen kann. Das ist, wenn man einen Schritt zurücktritt und es nüchtern betrachtet, kaum vorstellbar. Als diplomierter Informatiker, der die modernen Praktiken aus dem Studium kannte, war ihm das nicht nur zu trist – es war schlicht zu riskant.