Startseite » Technik » Automatisierung »

Mit modularer Software zu mehr Effizienz im Anlagenbau

Templates und Funktionsbausteine erhöhen Wiederverwendbarkeit und Zuverlässigkeit von Code
Mit modularer Software zu mehr Effizienz im Anlagenbau

Immer öfter führt Software zu entscheidenden Alleinstellungsmerkmalen von Maschinen und Anlagen. Sie muss jedoch effizient entwickelt werden. Durch eine Modularisierung und Verwendung vorgefertigter Templates und Funktionsbausteine lassen sich Applikationen schneller und sicherer erstellen.

Während die mechanische und elektronische Modularisierung von Maschinen und Anlagen in Deutschland weit vorangeschritten ist, liegt die Software nicht selten als wenig strukturierter und schwer verständlicher „Spagetti-Code“ vor. Steht die Neuentwicklung einer Maschine an, versuchen Entwickler möglichst große Teile dieses Codes zu kopieren, um den Programmieraufwand zu reduzieren. Bei kleinen und übersichtlichen Projekten hat sich dies bewährt. Anders verhält es sich jedoch , wenn die Software über die Jahre gewachsen ist und bis zu hunderttausende Codezeilen umfasst. Hier wirkt sich das Kopieren von Code nachteilig auf die Qualität und Wartungsfreundlichkeit der Software und nicht zuletzt auf die Produktivität der Entwickler aus.

Die mechanische Konstruktion zeigt, dass und vor allem wie es anders geht: Längst wird eine Maschine aus Modulen mit definierter mechanischer Schnittstelle aufgebaut. Die so gekapselten Funktionsmodule bilden einen (zentral verwalteten) Baukasten, aus dem sich Konstrukteure bedienen, um neue Maschinenlösungen schnell und effizient aus erprobten Modulen zusammen zu stellen. Dies senkt den Aufwand für Bau und Test einer Maschine. Die Konstrukteure können sich ganz auf die Entwicklung neuer Funktionen und Alleinstellungsmerkmale konzentrieren, die gegebenenfalls den bestehenden Baukasten erweitern.
Zudem kann eine umfangreichere Entwicklungsaufgabe wegen der (vorab) klar definierten Schnittstellen der Module leichter auf mehrere Konstrukteure verteilt werden. Dadurch lassen sich Entwicklungs- und Testaufgaben parallel durchführen und damit das Time-to-Market weiter verkürzen. Es ist daher zielführend, auch in der Softwareentwicklung die Modularisierung der Software weiter voranzutreiben.
Allerdings übersteigt die Umsetzung und der Aufbau eines umfassenden modularen Softwarefunktionsbaukastens in Eigenregie oft die Möglichkeiten der Maschinen- und Anlagenbauer. Lenze hat daher schon vor Jahren damit begonnen, Anwender in Form von Engineering-Dienstleistungen und die Bereitstellung von vorgefertigten Standardfunktionsbausteinen, wie Wickler oder fliegende Säge, für intelligente Antriebe zu unterstützten. Nun hat das Unternehmen die Funktionsbausteine auch für Controller-basierte Automatisierungslösungen portiert und gleichzeitig um branchenspezifische Funktionsbausteine für die Konsumgüterindustrie wie ‚No gap – no Seal‘ erweitert. Weitere komplexe Funktionsbausteine für Knickarm-Roboter mit drei Grundachsen sollen bald folgen. Je nach Anwendungsfall und Anforderungsprofil kann der Entwickler damit Funktionsbausteine unterschiedlichen Abstraktionsgrads nutzen und Software für einzelne Maschinen oder komplette Anlagen – wie die Mechanik – zu großen Teilen auf Basis von getesteten und in vielen Anwendungen erprobten Standardfunktionen aufbauen. Mit zunehmender Verbreitung modularer Software und entsprechenden Entwicklungsmethoden ist zudem zu erwarten, dass – wie in der Elektronik oder Softwarebranche in vielen Bereichen zu beobachten – auch Drittfirmen Funktionsbausteine und zugehörige Testvektoren zur Validierung entwickeln und anbieten.
Damit Anwender auch kundenspezifische Funktionsbausteine, eventuell mittels einfacheren Standardfunktionsblöcken, schnell erstellen und in das restliche Projekt einbinden können, bietet sich der Einsatz von Templates an. Sie bieten vorgefertigte Softwarestrukturen, wie Fehlerbehandlungsroutinen, Schnittstellen, Datenbanken und Zustandsmaschinen. Wie bei einer Word-Vorlage kann sich der Anwender auch hier ganz auf die Erstellung der eigentlichen Funktionen oder Inhalte konzentrieren.
Objektorientierte Programmiersprachen unterstützen die Modularisierung von Software optimal, da die Grundidee dieser Sprachen die Kapselung von Funktionen und Daten in ‚Objekten‘ ist. Methoden wie die Vererbung erlauben es, schnell neue Objekte auf Basis bestehender Objekte zu erzeugen und so neue Funktionalitäten und Varianten besonders effizient zu realisieren. Ein weiterer Vorteil der objektorientierten Sprachen liegt im Vergleich zu den ‚Spezialsprachen’ der IEC 61131 im wesentlich größeren Verbreitungsgrad in Ausbildung und Unternehmen. Offene und leistungsfähige Programmierumgebungen wie L-force Engineer von Lenze unterstützen daher nicht nur die Programmierung in objektorientierten Hochsprachen, sondern erlauben auch die Kombination von C-Code-ähnlichen Strukturierten Text oder etwa in KOP erstellten Code und vorgefertigten Funktionsbausteinen in einem Projekt.
Malte Schlüter Head of Consumer Goods, Lenze, Aerzen
Unsere Webinar-Empfehlung
Industrieanzeiger
Titelbild Industrieanzeiger 4
Ausgabe
4.2024
LESEN
ABO
Newsletter

Jetzt unseren Newsletter abonnieren

Tipps der Redaktion

Unsere Technik-Empfehlungen für Sie

Webinare & Webcasts

Technisches Wissen aus erster Hand

Whitepaper

Aktuelle Whitepaper aus der Industrie

Unsere Partner

Starke Zeitschrift – starke Partner


Industrie.de Infoservice
Vielen Dank für Ihre Bestellung!
Sie erhalten in Kürze eine Bestätigung per E-Mail.
Von Ihnen ausgesucht:
Weitere Informationen gewünscht?
Einfach neue Dokumente auswählen
und zuletzt Adresse eingeben.
Wie funktioniert der Industrie.de Infoservice?
Zur Hilfeseite »
Ihre Adresse:














Die Konradin Verlag Robert Kohlhammer GmbH erhebt, verarbeitet und nutzt die Daten, die der Nutzer bei der Registrierung zum Industrie.de Infoservice freiwillig zur Verfügung stellt, zum Zwecke der Erfüllung dieses Nutzungsverhältnisses. Der Nutzer erhält damit Zugang zu den Dokumenten des Industrie.de Infoservice.
AGB
datenschutz-online@konradin.de