Mit einem durchgängigen Softwaretool, das den gesamten Engineeringprozess – also ne-ben der Steuerungsprogrammierung und Visualisierung auch Motion Control und Safety – abdeckt, wird eine hohe Entwicklungseffizienz erzielt. Zudem sollte ein modernes Tool alle Projektphasen unterstützen: Projektieren, Programmieren, Parametrieren, Diagnostizieren – dazu eine frühe Testbarkeit und Simulation.
Flexibilität und Modularisierung
Modulare Maschinenkonzepte ermöglichen Differenzierung und damit einen großen Wettbewerbsvorteil. Jeder Kunde hat sehr spezifische Vorstellungen, welche Funktionen seine Maschine zu erfüllen hat. Ausgehend von einer Basismaschine und Standard- bzw. optionalen Modulen stellt der Maschinenbauer die kundenindividuelle Variante zusammen und nimmt eventuelle Anpassungen vor. Softwareseitig steht der Maschinenhersteller vor der Herausforderung \’Wie minimiere ich den Programmieraufwand bei einer Vielzahl von Maschinenoptionen?\‘. Hier bieten objektorientierte Engineering-Konzepte eine optimale Lösung. Mit der objektorientierten Programmierung ist es möglich, neue Ausprägungen von Maschinenteilen mit minimalem Programmier- und Testaufwand umzusetzen. Sie ist somit der Schlüssel zur Modularisierung. Wie in der Mechanik, wo eine erprobte Konstruktion (mechatronische Einheit) wiederverwendet wird, können dank der modularen Struktur einmal erstellte und getestete Applikationsteile einfach wieder verwendet werden, ohne diese noch einmal überprüfen zu müssen. Software wird somit \’nachhaltig\‘ und dies ist ein entscheidender Aspekt, da die Komplexität der Automatisierungsaufgaben immer noch zunimmt. Zudem lassen sich mit der objektorientierten Programmierung rund 30% der Engineeringkosten einsparen.
Objektorientierung
Grundprinzip ist eine durchgängige Modularität der einzelnen Programmblöcke von der untersten Ebene der einzelnen Funktionen bis hinauf zum Gesamtprojekt. Dadurch lassen sich selbst komplexe Programme strukturiert umsetzen und dann auch übersichtlich und flexibel halten. Eine \’Klasse\‘ ist der Bauplan eines Objektes und definiert den Programmcode und die Datenelemente. Jede Klasse übernimmt bestimmte Aufgaben wie beispielsweise die Ansteuerung eines Antriebs oder eines Ventils. Beim objektorientierten Ansatz sind die Daten gekapselt und können von außen nicht verändert werden. Die gekapselten Objekte kommunizieren über Schnittstellen mit der \’Außenwelt\‘. Wenn diese Schnittstellen klar definiert sind, lassen sich Objekte einfach austauschen und es können mehrere Programmierer an einem Projekt arbeiten. Die getesteten Objekte lassen sich flexibel zusammenstellen und verbinden. Damit wird einerseits eine sehr effiziente Softwaregenerierung möglich und zudem steigt die Qualität der Software, was wiederum zu einer Performancesteigerung der Maschine bzw. Anlage führt.
Benutzerfreundlichkeit im Fokus
Als wir Ende der Neunziger mit der Entwicklung von Lasal starteten, hatten wir schon das Gesamtengineering im Auge. Was muss ein einheitliches Tool bieten und wie lässt es sich einfach umsetzen? Wir haben mit Lasal ein System entwickelt, das grafisch unterstützt ist, wodurch die Software noch übersichtlicher wird. Die von Klassen erzeugten Objekte (Maschinenmodule) werden in Netzwerken dargestellt. Das heißt, der Code selbst ist nicht sofort ersichtlich. Dargestellt werden die Beziehungen der Programmteile zueinander sowie deren wichtigste Daten. So sieht der Entwickler mit einem Blick die Eigenschaften eines Maschinenteils und die Kommunikation mit anderen Maschinenteilen (Objekten). Der große Vorteil dabei ist, dass die Maschine in der Software grafisch nachgebildet wird. Das erleichtert die Umsetzung und hilft die Entwicklungs- und Wartungszeiten zu verkürzen. Zudem ist es Servicetechnikern so rasch und einfach möglich, eine Diagnose über die Fehlfunktion einer Maschine zu treffen. Wenn wir Lasal bei neuen Kunden präsentieren, gibt es immer einen Aha-Effekt, beim Blick auf ein Lasal-Netzwerk mit den Verschaltungen auf der grafischen Oberfläche zeigen. Da kommen Meldungen wie \“Hallo, das ist genau das Blockschaltbild meiner Mechanik, die ich in der Maschine drinnen habe.\“