Objektorientiertes Programmieren in der SPS-Welt
1. Dezember 2017 - 13:07 Uhr Arno Schmied Automation/Elektronik

Eine SPS wird häufig im Umfeld der Prozessindustrie sowie grundsätzlich dort eingesetzt, wo Vielfältigkeit und Komplexität technischer Systeme existieren, dies weil sie einen qualitativ hohen Standard garantiert. Was sich im IT-Bereich bereits millionenfach bewährt hat, ist in der SPS-Welt erst zögerlich auf dem Vormarsch.

 

Die objektorientierte Programmierung

Da der Ruf nach einer modernen, nachvoll­ziehbaren Software immer lauter wird, fliessen mittlerweile objektorientierte Programmiermethoden zunehmend in die Ausbildung von Automatisierungstechnikern ein. Und auch Ingenieure und Informatiker, die bereits im Studium mit der objektorientierten Programmierung vertraut gemacht wurden, erstellen immer öfter den Applikationscode für modulare oder komplexe Maschinen. Für sie ist eine Zerlegung der Applikation in relevante 'Objekte' ganz natürlich, auch deren vereinheitlichte Definition durch Schnittstellen, sowie die Vererbung von Programmcode für andere Bausteine.

 

Früher wurden industrielle Applikationen oft geringschätzig als 'Klapperlogik' bezeichnet. Mit der Möglichkeit, Steuerungen objektorientiert zu programmieren, steigt die Attraktivität der Applikationsentwicklung. Das entsprechende HF-Studium mit Vertiefung Automation verhilft entsprechend auch zu mehr Chancen auf dem Arbeitsmarkt.

 

Die Bündelung aller Automatisierungsaufgaben in einer modernen, objektorientierten Entwicklungsumgebung vereinfacht die Projektierung und Programmierung enorm und sorgt für eine übersichtliche Projektstruktur sowie maximale Modularität und Wiederverwendbarkeit. Moderne und durchgängige Entwicklungsumgebungen erweitern die IEC 61131-3 um die objektorientierte Programmierung (OOP) und sie ermöglichen die Modularisierung von Maschinenfunktionen in der Software und somit mechatronisches Engineering. In der Mechanik kommen genau solche erprobten Konstruktionen immer wieder zum Einsatz.

 

Dank der modularen Struktur der OOP können einmal erstellte und getestete Applikationsmodule ebenso einfach wiederverwendet werden. Dabei lassen sich die Software-Maschinenfunktionen (Objekte) im Baukastensystem zusammenstellen. Dies ist ein wichtiges Thema in der Ausbildung dipl. Techniker HF Vertiefung Automation.

Gibt es neue Ausprägungen von Maschinenteilen können diese durch Vererbung mit minimalem Programmier- und Testaufwand umgesetzt werden. Komplexes kann somit einfach und strukturiert umgesetzt werden. 




















Neben der Minimierung der Entwicklungszeiten und somit der Kosten, zählen die einfache Wartbarkeit und somit Wertsicherung Ihrer Software zu den überzeugenden Argumenten für den Einsatz der objektorientierten Programmierung.

 

 

Auch die HBU lehrt die Studierenden die objektorientierte Programmierung einer SPS im 6. Semester des Studiums dipl. Techniker/in HF Systemtechnik Vertiefung Automation. Hierzu wird eine SPS Steuerung der Firma Sigmatek und deren Entwicklungstool LASAL eingesetzt welches vollumfänglich objektorientiert ist.

 

Folgende Punkte werden dabei mit praktischen Beispielen realisiert.




Modular und Flexibel durch OOP

Der Vorteil der OOP ist ihre durchgängige Modularität von der untersten Ebene der einzelnen Funktion bis nach oben zum Gesamtprojekt. Maschinenfunktionen können einzeln oder in Gruppen entwickelt, getestet, hinzugefügt, ausgetauscht oder bei Nichtverwendung einer Option ausgeblendet werden.

 

Arbeiten mit Objekten

Beim objektorientierten Programmieren werden die verschiedenen Teile einer Maschine oder Anlage in Form von „Objekten“ repräsentiert. Hinter einem Objekt steht jeweils eine „Klasse.“ Sie ist der Bauplan des Objektes und enthält den Programmcode und die dazugehörigen Datenelemente.

 

Jede Klasse kann eine bestimmte Aufgabe übernehmen, wie beispielsweise die Messung und Auswertung einer Temperatur, Regelung eines Ventils oder Ansteuerung eines Förderbandes. Die vom Programmierer definierten Klassen werden in übersichtlichen Bibliotheken abgelegt.



Vererben und Aggregieren minimieren den Programmieraufwand

Mittels Vererbung kann eine Objektklasse dupliziert und dann verfeinert bzw. spezialisiert werden. Die Vererbung beschreibt die Beziehung zwischen der allgemeinen Klasse (Basisklasse) und einer abgeleiteten Klasse.

 

Eine abgeleitete Klasse erbt die Eigenschaften der Basisklasse, kann aber verändert oder um zusätzliche Informationen, wie Attribute oder Operationen, erweitert werden. Durch Aggregation (Gruppierung) können mehrere einzelne Klassen zu einer komplexen Klasse zusammengefasst werden. Einmal getestete Klassen lassen sich so übersichtlich in Bibliotheken ablegen und nach dem Baukastenprinzip zu komplexen Programmstrukturen zusammenfügen. 


 




Arno Schmied

Bereichsleiter Automation




Neuer Kommentar schreiben
300/300