LinkedIn Logo YouTube Logo

Wie sieht die Zukunft der SPS-Programmierung aus?

Viele Unternehmen aus dem Maschinen- und Anlagenbau machen sich Gedanken darüber, mit welchen Konzepten oder Paradigmen sie in Zukunft die Programmierung der Steuerungssoftware vornehmen werden. Die Wertschöpfung erfolgt mehr und mehr über die Software, gleichzeitig steigen jedoch Komplexität sowie Vernetzung und damit der Aufwand für die Erstellung der Steuerungssoftware.

Der Einsatz von Industriesteuerungen bzw. SPSen mit IEC61131-3-Programmierung ist Stand der Technik. Neben der Applikationserstellung berücksichtigen die führenden Tools weitere Automatisierungsaspekte wie z.B. MotionControl, Visualisierung sowie E/A-Konfiguration und ermöglichen integriertes Engineering. Die IEC-Norm wird im Laufe des Jahres mit der Einführung der objektorientierten Programmierung (OOP) einen weiteren – optionalen Produktivitätshebel offiziell aufnehmen. Dennoch stellen sich Vordenker unter den Herstellern der Automatisierungstechnik einige Fragen: \“Benötigen wir zur Beherrschung der gestiegenen Anforderungen neue Konzepte bzw. Standards für die Programmierung?\“ \“Kann man den Aufwand für einen Umstieg auf andere Programmierphilosophien überhaupt sicher abschätzen?\“ \“Würde sich der Aufwand für einen Umstieg wirklich lohnen?\“ \“Kann man echte Produktivitätssprünge bei der SPS-Programmierung erreichen, ohne die IEC61131-3 zu verlassen?\“ Zusammenfassend: \“Wie werden wir in Zukunft die Steuerungen für unsere Maschinen und Anlagen programmieren?\“ Ein Großteil der produzierten Maschinen und Anlagen benötigt einen immer wiederkehrenden Software-Anteil: z.B. Serienmaschinen, die durch optionale Funktionseinheiten bzw. Modifikationen an die Anforderungen der Kunden angepasst werden, oder Maschinen, Anlagen oder Automatisierungsinstallationen, die zwar komplett neu aufgebaut werden, aber aus immer wiederkehrenden Funktionseinheiten bestehen. Solche Applikationen bestimmen bei einem großen Teil der Steuerungsprogrammierer den Arbeitsalltag. In ihnen steckt einerseits ein gewaltiges Rationalisierungspotenzial für die Projektierung, andererseits ein hohes Potenzial zur Fehlerminimierung. Zusammen mit Pilotkunden hat sich das Kemptener Software-Haus 3S-Smart Software Solutions intensiv diesem Anwendungsfall gewidmet. Das Ergebnis ist die neue Produktlinie \’CoDeSys Application Composer\‘. System-Überblick: CoDeSys Application Composer Im Gegensatz zu anderen derzeit diskutierten Konzepten muss der Applikationsprogrammierer die gewohnte IEC61131-3-Entwicklungsumgebung nicht verlassen, um vom Application Composer profitieren zu können: Das vertraute Tool wird um ein Modulkonzept erweitert, auf dessen Basis die Applikation konfektioniert wird. Der Begriff Konfektionierung deutet bereits darauf hin, dass die Applikationsprogrammierung nun nicht mehr durch einen Software-Entwickler erfolgen muss. Vielmehr kann ein Technologe, ein Projektierer oder sogar ein Kundenberater die Projektierung vornehmen. Dazu muss er die Maschine und seine Funktion überblicken und verstehen, nicht aber gleichzeitig ein Software-Entwickler sein. Um das zu ermöglichen, werden die eingangs erwähnten Funktionseinheiten zu Modulen zusammengefasst, die wiederum die Maschinen- und Anlagenteile implementieren. Solche Module können einerseits mechatronische Komponenten sein, wie z.B. Pneumatikzylinder, Werkzeugwechsler, Temperaturregler, Zuführeinheiten oder ähnliches. Oder andererseits auch Software-Funktionen, wie z.B. Teileverwaltung, User Management oder Ablaufsteuerung etc. Das Entscheidende: Diese Module enthalten alle Engineering-Aspekte von CoDeSys: – IEC61131-3 Programmcode für die Einheit in Form von Bibliotheken – Physikalische Ein- und Ausgänge, mit denen die Einheit kommuniziert – Parametrierbarkeit von Werten, die abhängig vom Einsatz sind – Visualisierungsmasken für die Inbetriebnahme oder Bedienung Der Anwender erstellt (\’konfektioniert\‘) auf Basis dieser Module einen Modulbaum, der letztlich die Maschine abbildet. Dabei kennen die Module ihre eigenen Schnittstellen und wissen daher, an welcher Stelle im Baum sie eingesetzt werden können, das heißt. welche \’Vater-Module\‘ bzw. \’Kinder\‘ sie haben können. Somit kann der Projektierer in dem Rahmen, den ihm die Module vorgeben, die Maschine zusammenstellen und konfigurieren. Aufgrund der bekannten Beziehungen im Modulbaum ist auch die Konfiguration der Parameter auf das Nötigste reduziert und erfolgt direkt im Modulbaum-Editor. Mit einem grafischen Mapping-Tool kann der Anwender dann die von den eingesetzten Modulen \’angeforderten\‘ Ein- und Ausgangsknoten komfortabel mit dem realen Prozessabbild verbinden. Dieses Prozessabbild kann über die in CoDeSys integrierten Konfiguratoren für klassische und Echtzeit-Ethernet basierte Systeme bequem erstellt werden. Für einige Systeme ist damit die Projektierung bereits abgeschlossen. Erfordern Maschinen oder Anlagen für ihren Modulbaum eine zeitliche Ablaufsteuerung, so wird auch dieser Ablauf wiederum mit Modulen, den sogenannten \’Programmsequenz-Modulen\‘ erstellt. Zur einfacheren Erstellung solcher Abläufe, vor allem aber zur besseren Übersichtlichkeit steht dafür ein grafischer Sequenz-Editor zur Verfügung, der nach DIN66001/ ISO5807 implementiert wurde. Komplette IEC61131-3 Applikation auf Knopfdruck Per Kommando erzeugt ein integrierter Generator aus dem Modulbaum eine vollständige, gut strukturierte IEC61131-3-Applikation inklusive Visualisierung. Diese Applikation kann von CoDeSys sofort übersetzt und auf die Steuerung geladen werden kann. Das heißt, dass der Anwender keine einzige Zeile IEC61131-3-Code selbst schreiben muss – sämtliche Informationen werden aus den Modulen und den dahinter liegenden Bibliotheken herangezogen und korrekt in die Projektstruktur eingebettet. Dabei ist der generierte Quellcode einsehbar, sodass bei Bedarf auch direkt im erzeugten Code editiert werden kann. Anwender haben so die Möglichkeit, das objektorientierte Code-Generierungskonzept nachzuvollziehen. Mit Start der Steuerung wird die generierte Applikation ausgeführt – es sind keine weiteren Schritte mehr erforderlich. Interessant wird es natürlich, wenn die Applikation aufgrund einer Ausstattungsvariante oder kundenspezifischen Anpassung verändert wird: Der Applikationsentwickler modifiziert lediglich den Applikationsbaum mit den erforderlichen Modulen, gibt ihnen ggf. veränderte Parameter und passt das E/A-Mapping und den Ablauf an. Nach einem neuerlichen Generatorlauf ist die gesamte Applikation auf die Veränderungen angepasst und kann kompiliert und verwendet werden. Verfügbare und applikationsspezifische Module Für diesen Komfort bedarf es natürlich der entsprechenden Module. 3S-Smart Software Solutions als Hersteller von CoDeSys sieht sich dabei als Technologie-Anbieter und konzentriert sich deshalb auf die Bereitstellung von applikationsunabhängigen Modulen, z.B. für Zustandsmaschinen, zur Verwaltung persistenter Daten, für die Kommunikation bzw. das Netzwerkmanagement verteilter Applikationen, für Maschineneinstellungen, für das Rezept-/ Teileprogramm-Management, das Alarm- und Fehlermanagement sowie die Datenaufzeichnung. Das bedeutet, dass Maschinen- und Anlagenbauer spezifische Module für den Einsatz des CoDeSys Application Composer in aller Regel selbst erstellen – maßgeschneidert für deren Applikationen bzw. Produkte. Darüber hinaus werden Komponentenanbieter optimal angepasste Module für ihre Produkte mitliefern, um ihren Kunden einen Teil des Aufwands abzunehmen. Ob Anwender oder Komponentenanbieter – mit dem CoDeSys Application Composer Toolkit können sie solche spezifischen Modulbeschreibungen entwickeln. Bei Bedarf haben sie sogar die Möglichkeit, den Generator nach eigenen Bedürfnissen anzupassen bzw. zu erweitern. Das ist sinnvoll, wenn beim Generatorlauf zusätzliche Zusammenstellungen generiert werden sollen, wie z.B. Informationen für das ERP-System oder eine Visualisierung außerhalb von CoDeSys. Systemprogrammierung und Konfektionierung Damit wird klar, dass gut ausgebildete Applikationsprogrammierer durch den CoDeSys Application Composer nicht arbeitslos werden. Für Programmierer, die mit der bisherigen Programmierung der Serienmaschinen unterfordert waren, steigt sogar der Anspruch: Sie können sich auf die Entwicklung von Modulen und Systembausteinen konzentrieren und dabei ihr Potenzial voll ausschöpfen. Die optionale CoDeSys Professional Developer Edition bringt ihnen dabei Hochsprachen-Tools in die SPS-Programmierumgebung, um sie bei der Systemprogrammierung zu unterstützen z.B. mit Versionsverwaltung, statischer Code-Analyse, Laufzeit-Analysen oder automatisierten Applikationstest. Andererseits können nun die Anwender selbst die Konfektionierung und damit die Erstellung des Programmcodes für die Steuerungen vornehmen. Dazu brauchen sie lediglich Kenntnisse des Prozesses, Ablaufs oder der Maschinentechnologie – \’echte\‘ Programmierkenntnisse sind nicht nötig. In jedem Fall wird die Applikationsentwicklung effizienter, weil jeder im Projektierungsprozess eingebundene Entwickler sich auf seinen Bereich konzentrieren kann. Fehler, die z.B. durch copy-paste entstanden, werden damit konzeptuell unterbunden. Fazit

CODESYS GmbH
http://www.3s-software.com

Das könnte Sie auch Interessieren

Weitere Beiträge