Die Technologiemodule sind inzwischen für die Controller-basierten Automatisierungslösungen verfügbar und wurden um branchenspezifische Bausteine für die Konsumgüterindustrie erweitert.

Die Technologiemodule sind inzwischen für die Controller-basierten Automatisierungslösungen verfügbar und wurden um branchenspezifische Bausteine für die Konsumgüterindustrie erweitert.Lenze

Innovative und produktive Maschinen in immer kürzerer Zeit zur Marktreife bringen, häufig mit knappen Ressourcen oder gar Mangel an Fachkräften und fast immer unter deutlichem Kostendruck – dies sind die Herausforderungen, denen sich Maschinenbauer heute konfrontiert sehen. Zudem entstehen die entscheidenden Alleinstellungsmerkmale der Maschinen vom Wettbewerb immer öfters erst über die Software. Daher ist eine möglichst sichere und effiziente Software-Entwicklung ein wichtiger Schlüssel zum Erfolg. Maschinenbauer, die ihre Software standardisieren und modularisieren, haben trotz der schwierigen Rahmenbedingungen Erfolg. Die Gründe sind schnell skizziert: kürzere Entwicklungszeiten, geringere Engineeringkosten bei gleichzeitig höherer Qualität in der Software. Lenze unterstützt Maschinenbauer bei der Standardisierung und Modularisierung mit der Applikationssoftware Lenze Fast. Mit deren getesteten und standardisierten Funktions- und Technologiemodulen und dem so genannten Application Template lässt sich Maschinensoftware schneller und sicherer erstellen.

Nachholbedarf beim Software-Engineering

In benachbarten Disziplinen wie Mechanik und Elektronik hat sie schon längst Einzug gehalten, die Modularisierung. Die Software einer Maschine liegt dagegen nicht selten als wenig strukturierter und schwer verständlicher ‚Spaghetti-Code‘ vor. Bei der Neuentwicklung einer Maschine versuchen Entwickler möglichst große Teile dieses Codes zu kopieren, um den Programmieraufwand zu reduzieren. Zugegeben: Bei kleinen, übersichtlichen Projekten hat sich dieses Vorgehen bewährt. Aber wehe, die Software ist über Jahre gewachsen, besteht aus zigtausenden Zeilen Programmcode, die vielleicht von unterschiedlichen Entwicklern programmiert und nur unzureichend dokumentiert sind. Dann wirkt sich das schlichte ‚copy and paste‘ nachteilig auf die Qualität und Wartungsfreundlichkeit der Software aus – und damit auch auf die Produktivität der Entwickler.

Die Gefahr besteht, dass Fehler oder nicht (mehr) genutzter Code aus alten Projekten in das neue Projekt einfließen. Selbst ein fehlerfreier Spaghetti-Code behindert aufgrund seiner eingeschränkten Verständlichkeit die Wartung und Modifikation der Applikation erheblich. Programmanpassungen können zudem unerwartete Fehler in bereits geprüften Programmteilen verursachen – unter Programmierern gefürchtete Seiteneffekte. Jede Programmerweiterung wird so zum Risiko und kann zeitaufwendige Tests der kompletten Maschine nach sich ziehen, die den geplanten Serienanlauf oder den Auslieferungstermin gefährden. Nicht zuletzt lassen sich solche Projekte schlecht team- oder unternehmensübergreifend auf mehrere Programmierer verteilen und abstimmen. Kostspielige Mehrfachentwicklungen sind die Folge.

Das mit der Realisierung tausender Wickler-Applikationen gewachsene Erfahrungswissen ist im Technologie-Modul Wickeln gebündelt.

Das mit der Realisierung tausender Wickler-Applikationen gewachsene Erfahrungswissen ist im Technologie-Modul Wickeln gebündelt.Lenze

Konstrukteure mit Vorbildfunktion

Dass es anders besser funktioniert, zeigt die mechanische Konstruktion: Hier hat sich längst etabliert, die Maschine aus Modulen mit definierter Schnittstelle aufzubauen. 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. Dadurch sinkt der Aufwand für den Bau und Test einer Maschine. Die Konstrukteure können sich ganz auf die Entwicklung neuer Funktionen und Alleinstellungsmerkmale konzentrieren, die den bestehenden Baukasten erweitern. Zudem lassen sich umfangreichere Entwicklungsaufgaben wegen der (vorab) definierten Schnittstellen einzelner Module leichter auf mehrere Entwickler verteilen und parallel bearbeiten. Diese Parallelisierung verkürzt das Time-to-Market zusätzlich. Es ist daher zielführend, auch in der Softwareentwicklung die Modularisierung weiter voranzutreiben.

Software-Modularisierung in Eigenregie: ein ganz großes Rad

Umsetzung und Aufbau eines umfassenden modularen Softwarefunktionsbaukastens in Eigenregie übersteigen oft die Möglichkeiten eines Maschinenbauers. Der Grund: Bei einem OEM mit 30 bis 70 Angestellten sind im Schnitt gerade einmal 1,6 Mitarbeiter für die Automation zuständig. Sie würden Jahre für die Entwicklung eines Baukastens benötigen, bevor das Unternehmen überhaupt spürbare Wettbewerbsvorteile realisieren könnte. Als System- und Technologiepartner des Maschinenbaus hat Lenze daher schon vor Jahren begonnen, Anwender mit der Bereitstellung vorgefertigter und wiederverwendbarer Standardfunktionsbausteine für intelligente Antriebe zu unterstützen. In diesen Bausteinen ist das umfangreiche Applikationswissen zu Themen wie Wickeln, Pick and Place, Kurvenscheibe oder fliegende Säge gebündelt. Diese Technologiemodule sind inzwischen für die Controller-basierten Automatisierungslösungen verfügbar und wurden um branchenspezifische Bausteine für die Konsumgüterindustrie erweitert. Sie decken grundlegende Funktionen einer Maschine ab, zum Beispiel das Zuführen, Abwickeln, Einschweißen, Versiegeln oder Fördern. Je nach Anwendungsfall und Anforderungsprofil kann der Entwickler damit Funktionsbausteine unterschiedlichen Abstraktionsgrads nutzen und bis zu 80 % des Softwarecodes auf Basis getesteter und vielfach erprobter Standardfunktionen generieren. Das schafft Zeit für die Umsetzung der speziellen Ausprägungen einer Maschine, die den Wettbewerbsvorteil ausmachen.

In der Entwicklungsumgebung steht für jedes Technologie-Modul ein Visualisierungselement zur Verfügung, das die Inbetriebnahme erleichtert.

In der Entwicklungsumgebung steht für jedes Technologie-Modul ein Visualisierungselement zur Verfügung, das die Inbetriebnahme erleichtert.Lenze

Wickeln gehört seit mehr als 65 Jahren zu Lenzes Kernkompetenz. Dieses mit der Realisierung tausender Wickler-Applikationen gewachsene Erfahrungswissen ist im Technologie-Modul Wickeln gebündelt. Da die verschiedenen Applikationen unterschiedlichste Anforderungen an die Funktionalitäten stellen, etwa bei der Durchmesser-Berechnung, Massenträgheits-Identifikation, Reibungskompensation oder der Zugkraftkennlinie, skaliert Lenze dieses Know-how – ebenso wie das der anderen Technologiemodule – und kapselt den Funktionsumfang. Konkret: Für vergleichsweise einfache Anwendungen, die keine Massenträgheits-Identifikation erfordern, sehr wohl aber eine konstante Zugkraft, stellt das Unternehmen einen passenden Baustein mit wenigen Parametern und Schnittstellen bereit. Dies erleichtert und beschleunigt die Integration. Ebenso gibt es Bausteine für hochkomplexe Anwendungen, die etwa eine Zugkraftgenauigkeit bis auf das letzte Prozent fordern. Dieses Technologie-Module stellen die Parameter und Zusatzfunktionen wie Reibungs-Identifikation und Beschleunigungskompensation in ihrer ganzen Bandbreite zur Verfügung.

Individualität von der Stange

Damit Anwender auch kundenspezifische Funktionsbausteine, auch mithilfe von Standardfunktionsblöcken erstellen und in das Automatisierungsprojekt einbinden können, bietet sich der Einsatz von Templates an. Sie stellen vorgefertigte Software-Strukturen, wie Fehlerbehandlungsroutinen, Schnittstellen, Datenbanken und Zustandsmaschinen bereit. Vergleichbar mit einer Word-Vorlage kann sich der Entwickler auf die Erstellung der eigentlichen Funktionen konzentrieren. Das Fast Application Template bietet solch eine Software-Struktur für die Realisierung modularer wiederverwendbarer Applikations-Software.

Objektorientierte Programmiersprachen unterstützen die Modularisierung von Software, da deren Grundidee die Kapselung von Funktionen und Daten in ‚Objekten‘ ist. Methoden wie die Vererbung erlauben es, schnell neue Objekte auf Basis vorhandener zu erzeugen und so weitere Funktionalitäten und Varianten effizient zu realisieren. Ein weiterer Vorteil der objektorientierten Sprachen liegt in der wesentlich größeren Verbreitung in Ausbildung und Unternehmen im Vergleich zu den Spezialsprachen der IEC 61131. Offene und leistungsfähige Programmierumgebungen wie der PLC-Designer V3 unterstützen daher nicht nur die Programmierung in objektorientierten Hochsprachen, sondern auch die Kombination von C-Code-ähnlichem Strukturierten Text (ST) oder in KOP (Kontaktplan) erstelltem Code mit vorgefertigten Funktionsbausteinen in einem Projekt. Die damit und Fast gesparte Entwicklungs- und Testzeit kann der Programmierer auf die Differenzierung des eigenen Produktangebots und seiner Kernkompetenz verwenden und damit die Wettbewerbsposition seines Unternehmens verbessern.