Manfred Werner, 3S
Wir brauchen überschaubare Einheiten
Die Anwendungen werden immer komplexer; das Zerlegen der Projekte in kleinere Einheiten damit unabdingbar. Geschäftsführer Manfred Werner skizziert, wie sich der Hersteller der SPS-Software Codesys eine Vereinfachung des Engineering vorstellt.
Herr Werner, die Software übernimmt immer mehr Automatisierungsfunktionen und wird dadurch immer komplexer. Wie lässt sich die zunehmende Komplexität beherrschen?
■ Vor diesem Problem stehen wir selbst: Was braucht ein Unternehmen wie 3S Smart Software Solutions, um ein komplexes Tool wie Codesys entwickeln zu können? Wir setzen auf mächtige Bibliotheken auf, versionieren unsere Software, entwickeln durchgehend objektorientiert und verwenden UML* zum Software-Design beziehungsweise ‚Lint‘ zur Sicherstellung der Software-Qualität.
Die gleichen Möglichkeiten bietet Codesys V3 dem Automatisierer für seine immer komplexeren Applikationen: eine Reihe getesteter Bibliotheken – unter anderem für File-Zugriff, Socket-Schnittstelle, CANopen und Ethercat –, SVN-Integration** zur Versionsverwaltung, objektorientiertes Programmieren, UML-Integration sowie statische Code-Analyse. Vorhanden bleiben natürlich unverzichtbare Funktionen wie Online Change, Trace, Variablen-Anzeige im laufenden Betrieb, Feldbus-Konfiguration und HMI, die der Automatisierer so in keiner C#-Entwicklungsumgebung findet.
Welche Möglichkeiten gibt es, trotz der zunehmenden Komplexität die Bedienung zu vereinfachen?
■ Komplexe Probleme werden einfacher, indem man sie in überschaubare Einheiten zerlegt. Schon immer hat Codesys Bibliotheken und Bausteine unterstützt, die ein Zerlegen des Projekts in kleinere Einheiten erlauben. In Codesys 3.5 gehen wir mit dem ‚Application Composer‘ noch einen Schritt weiter: Wir führen ein neues Objekt ein, das Modul. Es besteht aus Bausteinen, den dazugehörigen E/As und Visualisierungen. Zu einem Modul können Ausführungsparameter definiert werden.
Sind die Module erstellt, setzt sich das eigentliche Maschinenprogramm aus einer Reihe von Modulen zusammen, die noch mit den richtigen Parametern versorgt werden müssen. Auf Knopfdruck wird dann das eigentliche Maschinenprogramm generiert – inklusive Inbetriebnahme-Visualisierung.
Welche Entwicklungen auf der Hardware-Seite müssten mit denen auf der Software-Seite einhergehen, um ein möglichst leistungsfähiges und leicht bedienbares Automatisierungs-System zu erhalten?
■ Wenn wir von der Steuerung sprechen, dann ist klar, dass komplexere Programme auch mehr Rechenleistung brauchen. Zudem müssen größere Datenmengen transportiert werden, was schnelle Feldbusse voraussetzt. Mit dem PC und Feldbussen auf Ethernet-Basis gibt es hier aber derzeit kaum Grenzen. Der Automatisierer kann aus einer Vielzahl von Geräten das Preis-Leistungs-Optimum für seine Anwendung heraussuchen.
* (Unified Modeling Language)
** (Subversion)










