- Anzeige -
Einfache Umsetzung komplexer Funktionen

Einsatz von Matlab Simulink und PLCnext Technology in der Prozessindustrie

30.09.2019 In einer prozesstechnischen Anlage werden die technischen Funktionen trotz Digitalisierung und Industrie 4.0 nicht einfacher, wenn man sie auf das kleinste Detail herunterbricht. Die Umsetzung einer schnellen kaskadierten Regelung auf einer kleinen Steuerung erweist sich etwa als komplexe Aufgabe. Die richtigen Werkzeuge können jedoch helfen, den hohen Schwierigkeitsgrad zu bewältigen, beispielsweise die Kombination der bewährten Software Matlab Simulink mit der neuen Generation der PLCnext-Controller von Phoenix Contact.

Es gibt eine Vielzahl von Applikationen, deren Realisierung sich schwierig gestaltet: kaskadierte Regelungen, schnelle Momentregelungen oder auch die Umsetzung einer komplexen mathematischen Formel in einer steuerungstechnischen Anwendung. In der Regel lassen sich derartige Applikationen in IEC 61131-Code für eine SPS programmieren, was sich nicht unbedingt als komfortabel herausstellt.

Hat der Programmierer nun eine schwierige Formel gemäß IEC 61131 in strukturiertem Text erstellt, ist sie oft nicht wiederzuerkennen. Dementsprechend fallen die Optimierung oder Fehlersuche ebenfalls nicht leicht. Im nächsten Schritt muss die komplexe Funktion erprobt werden. Hier ergeben sich ebenso Hürden, wenn der klare Überblick fehlt. Denn die Verbesserung einer Regelung zeigt sich bereits bei weniger schwierigen Aufgaben als zeitaufwändig.

Die genannten Herausforderungen stellen sozusagen Klassiker dar, welche die Programmierer schon lange beschäftigen. Allerdings kommen neue Themenbereiche hinzu. In der Prozessindustrie wird immer häufiger auf Basis modularer Ansätze automatisiert, insbesondere seitdem mit MTP (Module Type Package) gemäß VDI/VDE/NAMUR 2658 eine einheitliche Softwareschnittstelle Einzug in die Branche gehalten hat.

Jetzt verfügen die einzelnen Module über einen eigenen Controller, der die Regelungen übernimmt. Auf diese Weise wird das zentrale Leitsystem entlastet. Die Programmierumgebung, in der der Anwender die als Beispiel angeführte Regelung realisiert, ändert sich jedoch: vormals Leitsystemumfeld, nun allgemeine Steuerungstechnik.

Verwendung vorgefertigter Funktionsmodule

Um solche komplexen Aufgaben einfacher und eleganter in der Steuerungstechnik umzusetzen, bietet sich die Software Matlab Simulink an. Bei dem Tool handelt es sich um ein hochentwickeltes Werkzeug, mit dem mathematische genauso wie regelungstechnische Lösungen entwickelt, getestet und in Code überführt werden können. Die Idee zu Matlab kam bereits in den 1970er Jahren in den USA durch Cleve Moler an der Universität New Mexico auf.

Mitte der 1980er Jahre wurde die Software dann in ein kommerzielles Produkt umgewandelt. Ab den 2000er Jahren hat die Verbreitung von Matlab zugenommen, unter anderem weil das Tool in die Lehrpläne der Universitäten aufgenommen worden war.

Durch die anschließende Erweiterung von Matlab um das Modul Simulink können die erstellten Programme jetzt simuliert sowie Blöcke zur Modellierung von Systemen genutzt werden. So lassen sich die Systeme übersichtlich grafisch visualisieren. Für die Software stehen zahlreiche sogenannte Toolboxen zur Verfügung, welche die Verwendung vorgefertigter Funktionsmodule wie die „Signal Processing Toolbox“ oder die „Fuzzy Logic Toolbox“ erlauben.

Wie schon erwähnt, gibt es entsprechende Lösungen seit den 1980er Jahren. Neu ist, dass der Anwender das System auf einfache Weise mit einer industrietauglichen Steuerung kombinieren kann. Dazu ist die SPS als „Target“ für den Code hinzugefügt worden, wo bislang reine Microcontroller als Laufzeitumgebung erhältlich waren oder C-Code erzeugt werden konnte. Nun lässt sich ein komplexer Regler in Simulink entwerfen, im gesamten Frequenzbereich unter dem Einfluss von Störgrößen testen, mit Hilfe der Simulink-Tools optimieren sowie abschließend als Programm für den SPS-Controller exportieren.

Export auf das jeweilige SPS-System

Bild 1

Bild 1: Darstellung eines Regelkreises in Simulink.

Dem Anwender eröffnen sich somit vielfältige Möglichkeiten, die in einer Engineering-Umgebung für Steuerungen in der Regel nicht angeboten werden. Besonders das Erproben und Verbessern der Regler erweist sich als ein langwieriger Prozess, bei dem der Ingenieur für jede Erleichterung dankbar ist. Matlab Simulink umfasst alle klassischen Methoden der Regelungstechnik, wie das Bode-Diagramm, Wurzelortskurven oder die Ortskurve des Frequenzgangs, was die Code-Entwicklung vereinfacht.

Ein weiterer Vorteil der Software ergibt sich aus dem Einsatz von grafischen Blöcken für den Entwurf des Reglers. Eine Verstärkung lässt sich beispielsweise einfach per Drag and Drop hinzufügen, wobei der Entwurf anders als in einer SPS-Umgebung in einer für die Regelungstechnik geeigneteren Ebene stattfindet (Bild 1).

Hat der Programmierer den Regler in einer konventionellen SPS-Umgebung geplant, wird er mit dem Problem des Testens konfrontiert. In einer solchen Umgebung können zwar Eingangssignale simuliert werden, was sich allerdings im gesamten Frequenzbereich als schwierig zeigt. Mit den umfangreichen Möglichkeiten von Simulink lässt sich die Inbetriebnahme im Feld erheblich verkürzen, wenn der Programmierer das Verhalten des Reglers bereits im Vorfeld prüfen konnte.

Bild 2

Bild 2: Auswahl des PLCnext-Controllers AXC F 2152 als Target.

Ist der Regler schließlich final modelliert und getestet, kommt die Neuerung im System zum Tragen: Der konzipierte Regler kann passend für das jeweilige SPS-System exportiert werden. Targets – das heißt sogenannte PLC-Coder – gibt es für das TIA-Portal von Siemens, B&R, Codesys, Phoenix Contact und einige weitere Hersteller.

Die Anbindung an harte Echtzeitsysteme mit dem jeweils kompletten I/O-Portfolio und den Feldbussystemen gestaltet sich jetzt einfacher. Und aus dem anderen Blickwinkel betrachtet hat sich Matlab Simulink zu einem greifbaren und sinnvollen Tool für die Automatisierungstechnik entwickelt (Bild 2).

Applikationsprogramm aus dem Online-Store

Mit der PLCnext Technology stellt Phoenix Contact eine neue, offene Steuerungsgeneration auf Basis des Linux-Betriebssystems zur Verfügung, die verschiedene Vorteile eröffnet. Der wirtschaftliche PLCnext-Controller AXC F 2152 bietet mit zwei unabhängigen 800 MHz-Prozessoren eine gute Plattform, um ein Simulink-Modell auf einem Core ablaufen und auf dem anderen Core zum Beispiel Standardaufgaben ausführen zu lassen.

Bild 3

Bild 3: Einfügen eines Simulink-Modells als Bibliothek in die Engineering-Umgebung PLCnext Engineer.

Der in Simulink erzeugte Code kann einfach als Programm in das Projekt integriert sowie als Task auf einem der beiden Prozessoren mit einer beliebigen Taskzeit abgearbeitet werden. Der Anwender ist nun in der Lage, die erstellten Modelle in der Engineering-Umgebung zu öffnen und während der Laufzeit online zu beobachten, was zu einer umfassenden Transparenz führt.

Aus lizenztechnischen Gründen lässt sich eine Änderung des Modells nur in Matlab Simulink realisieren (Bild 3).

Doch die Steuerungstechnik hält heute noch weitere Möglichkeiten bereit. Mit dem PLCnext Store kann der Anwender beispielsweise ein Applikationsprogramm ganz oder teilweise auf den Controller laden, wie er es von den Apps für sein Smartphone kennt.

Bild 4

Bild 4: Einfügen des Simulink-Modells als unabhängige Task.

Dazu verbindet er den AXC F 2152 unter dessen User-ID mit dem PLCnext Store. Danach wird die Steuerung anhand ihrer UUID (Universally Unique Identifier) angemeldet und der Anwender wählt im Store aus, welche Applikation er auf dem PLCnext-Controller installieren möchte. Er erhält somit ohne Nutzung eines Engineering-Systems sowie ohne Programmierkenntnisse in IEC 61131 ein fertiges Applikationsprogramm.

Darüber hinaus umfasst der PLCnext Store Bibliotheken sowie Programmkomponenten. Ein Institut könnte also einen komplexen Regler entwerfen und diesen auf einfache Weise über den PLCnext Store bereitstellen – sei es kostenfrei oder gegen eine Lizenzgebühr. Industrie 4.0 ist folglich in der Prozessindustrie angekommen (Bild 4).

Kombination unterschiedlicher Programmiersprachen in Echtzeit

Mit dem NOA-Konzept können offene, sichere und skalierbare Systeme – wie PLCnext Technology – in der Prozessindustrie eingesetzt werden. Das Ecosystem erlaubt die Kombination von Programmsequenzen, die in unterschiedlichen Programmiersprachen erstellt worden sind, in Echtzeit. Dazu lässt das zum Patent angemeldete Task-Handling Programmroutinen wie bei einem klassischen IEC 61131-Code ablaufen. Hochsprachenprogramme, die beispielsweise in C/C++ oder C# erzeugt worden sind, werden somit gleichzeitig mit den IEC 61131-Programm abgearbeitet (Bild 5).

Bild 5

Bild 5: Mit PLCnext Technology können Entwickler unabhängig voneinander in der von ihnen präferierten Sprache programmieren.

Die PLCnext Technology stellt den konsistenten Datenaustausch sowie die synchrone Ausführung des Programmcodes sicher und macht Hochsprachenprogramme automatisch deterministisch. Entwickler können also parallel und unabhängig voneinander agil sowie in der präferierten Programmiersprache an einzelnen Teilen einer komplexen Applikation arbeiten. So lässt sich das Know-how der IEC 61131-Experten mit neuen Ideen und Programmteilen aus der Hochsprachenwelt sowie dem Wissen junger Entwickler aus dem IT-Umfeld verbinden.

 

Dipl.-Ing. (FH) Thilo Glas

Über den Autor

Dipl.-Ing. (FH) Thilo Glas

Senior Specialist Engineering im Industry Management Process, Phoenix Contact Electronics GmbH, Bad Pyrmont

Loader-Icon