Von einem effizienten Software-Engineering sind nicht nur die qualitative Entwicklung von Prozessfunktionen, sondern insbesondere die einfache Umsetzung von Kundenwünschen und die schnelle Verfügbarkeit von Maschinen in den Produktionsprozessen der Endkunden abhängig. Zur Verfügbarkeit trägt die ausgelieferte Maschinensoftware durch hohe Qualität, Diagnosefähigkeit und einfache Funktionserweiterung bei, und zwar von der Steuerung über die gesamte Peripherie bis zum HMI. Programmiernorm bildet die Grundlage Die IEC 61131-3 hat sich als normativer Standard zur SPS-Programmierung weltweit durchgesetzt. Mit ihr verfügen Maschinenbauern über eine wichtige Basis für die Zukunft – die Strukturierung von Maschinensoftware mit Hilfe definierter Sprachregeln, Datenstrukturen, Schnittstellen und Bausteinen. Damit etablierten sich Grundregeln in der Praxis, um Softwareprogramme übersichtlicher zu strukturieren, einfacher zu pflegen und die Code-Qualität insgesamt zu steigern. Entwicklern auf der ganzen Welt verstehen Maschinenprogramme auf Basis der IEC 61131-3 – unabhängig von den unterschiedlichen Maschinenprozessen, Automatisierungsgraden und regionalen Sprachen. Die Normkonformität wurde zwischenzeitlich von allen wichtigen Steuerungsherstellern in ihren Steuerungsprodukten verankert. Das macht sie zu einer Grundlage für den weitergehenden Fortschritt in der Fabrikautomation, die nicht mehr wegzudenken ist. Die herstellerübergreifenden Organisation PLC-open hat auf dieser Basis in den Folgejahren funktionelle Erweiterungen erarbeitet und standardisiert. Eines der wichtigsten Ergebnisse war die Definition von grundlegenden Funktionen für Motion Control aus der Sichtweise des SPS-Programmierers. Damit trug die PLCopen der Forderung von Anwendern Rechnung, Bewegungsfunktionen in Form verständlicher Funktionsbausteine herstellerneutral und wiederverwendbar abzubilden. Mit Erfolg, denn heute wird der Begriff PLCopen mit dem weltweit einzigen Sprachstandard für Motion Control gleichgesetzt – obwohl dieser nur ein Teilaspekt vieler Standardisierungsarbeiten dieser Organisation ist. Neue Wege der modularen Programmierung Damit haben in den vergangenen Jahren die wichtigsten Elemente und das Grundverständnis für eine effizientere Entwicklung von Maschinensoftware in der Industrie Einzug gehalten. Parallel machten sich für Maschinenhersteller und Steuerungshersteller aber auch andere Einflüsse zunehmend bemerkbar: Ursprünglich aus dem IT-Bereich und höheren Automatisierungsebenen kommend, zeigten die Abstraktionsmöglichkeiten der Hochsprachenprogrammierung, die sog. \’Programmiersprachen der dritten Generation\‘, neue Wege zur kompakten Beschreibung komplexer Prozessabläufe auf. Eines ihrer wichtigsten Elemente, die Objektorientierung, wurde deshalb folgerichtig in der unlängst verabschiedeten dritten Version der IEC 61131-3 über erweiterte Sprachelemente integriert. Migration zur objektorientierten Programmierung Für den Maschinenhersteller sind Begriffe wie Methoden (Funktionsroutinen), Interface (Schnittstellendefinition eines Satzes an Methoden), Objekte (Instanzen von Funktionsbausteinen) oder Klassen (Objekttypen) zunächst fremd. Die Vorteile dieser Konstrukte zeigen sich aber schnell durch die übersichtliche Kapselung funktioneller Abläufe, der leichten Änderbarkeit und Wiederverwendung sowie des insgesamt kompakteren Projektcodes. In Kombination mit den weltweiten Programmierstandards IEC 61131-3 erhielten Anwendern damit eine ideale Basis, um von der bisherigen funktionalen SPS-Programmierung zur objektorientierten Programmierung zu migrieren. Bewährtes Know-how als bestehender IEC-Code lässt sich weiter verwenden und schrittweise in eine modulare, objektorientierte Softwarearchitektur überführen. Heute stehen für die nächste Generation hochautomatisierter Produktionsanlagen und ihrer komplexen Software mächtige Engineering-Werkzeuge zur Verfügung, die alle wesentlichen Eigenschaften zur modernen Anwendungsprogrammierung enthalten. Maschinenhersteller können sich nun der Herausforderung stellen, das in Jahrzehnten entwickelte Prozess-Know-how in eine zukunftsfähige Softwarearchitektur zu überführen. Diese muss heute folgende Anforderungen erfüllen: – Einheitliche Projekt- und Programmstruktur – Hohe Modularität des Programmcodes zur Abstraktion und vereinfachten Abbildung komplexer Prozesse – Durchgängige Verwendung der heutigen Pro grammierstandards IEC 61131-3 (3rd Edition) und PLCopen als Basis – Hohe Wiederverwendbarkeit vorhandener Softwaremodule, bspw. zur Erstellung von Maschinenvarianten – Problemlose Anpassung und Erweiterbarkeit Template-basierte Projekterstellung Das \’Generic Application Template\‘ (GAT) von Bosch Rexroth steht Anwendern als Template-basierte Toolbox-Lösung zur Verfügung. Damit lassen sich die genannten Anforderungen an eine Softwarearchitektur, die auch für künftige Weiterentwicklung tragend ist, mit erheblich reduziertem Initialaufwand umzusetzen. Zu den Vorteilen von GAT zählt die geringe Einarbeitungszeit, die schnelle Verfügbarkeit eines direkt anwendbaren Maschinencodes für Motion-Logic-Anwendungen und die Flexibilität, um den unterschiedlichen Anforderungen an eine skalierbare Softwarestruktur Rechnung tragen zu können. GAT verfolgt den Grundgedanken, dass das Maschinenprogramm ein Modul oder mehrere funktionale Module zentral koordiniert. Das über Benutzervorgaben erstellte Projekt enthält alle elementaren Bestandteile für eine Maschinensteuerung. Sämtliche Code-Teile des Projekts sind offen zugänglich und über definierte Schnittstellen einfach zu ergänzen oder anzupassen. (Abb. 1) Zu den Grundfunktionen und Eigenschaften von GAT zählen insbesondere: – Initialisierung der Softwaremodule beim Pro- grammhochlauf und Herstellen der Betriebs- bereitschaft von Steuerung und angebunde- ner Peripherie – zentrale Statusmaschine zur Steuerung einer Maschine mit den bereits hinterlegten Betriebsarten \’Automatik\‘ oder \’Manual\‘ – alternative Verwendung dezentraler Status- maschinen für modulare Anlagenkonzepte – intelligente Aufteilung der verfügbaren Ressourcen in Form von Tasks und einstellbarer Zykluszeiten – durchgängiges Diagnosekonzept von der Er- kennung, über Reaktion und Diagnose bis zur Quittierung von Fehlern – Visualisierung zur Anzeige und Steuerung der Maschinenzustände Gemeingültige Basisfunktionen stehen dabei als geprüfter und vollständiger Software-Code zur Verfügung. Als eine der wesentlichen Eigenschaften sind Template- und Anwender-Code strikt voneinander getrennt. Zur Sicherstellung der Projekt- und Datenkonsistenz bei Änderungen in Programmen werden Betriebsarten, Zustandsmaschinen, Module und Antriebs-peripherie über eine zugriffsgeschützte Funktionsbibliothek ML_TechTemplate organisiert. Integrierte Motion Control Eine Besonderheit von GAT ist, dass die Motion Control-Funktionalität homogen integriert ist. Deshalb erfolgt der Zugriff auf Antriebsdaten über die offene Funktionsbibliothek ML_TechInterface, die unabhängig von GAT einsetzbar ist. Sie basiert auf den standardisierten Motion-Bausteinen der PLC-open und bündelt diese zu einer einfach zu verwendenden Datenschnittstelle in Form von Bausteinen und Strukturen. Gegenüber der Verwendung der Basis-Bausteine der PLCopen erfolgen Initialisierung, Kommandierung und Diagnosen eines Antriebs übersichtlich über ein Datenobjekt. Darüber hinaus stellt ML_TechInterface verwendungsfertige Visualisierungsmasken bereit, über die sich Anwender den entsprechenden Status von System und Achsen anzeigen lassen und Achskommandierungen ausführen können. Diese eignen sich insbesondere bei Erstimplementierung und Inbetriebnahme. (vgl. Abb. 2) GAT-Funktionen im Detail Um die Vorteile des modularen Software-Engineerings mit GAT vollständig zu nutzen, ist eine strukturelle Aufteilung der zu projektierenden Gesamtmaschine in funktionelle Teilmodule sinnvoll. Die projektspezifischen Eingaben nimmt der Anwender mit GAT über einen dialoggestützten Wizard vor, der die Projektelemente für Erstellung und Bearbeitung in übersichtlicher Form darstellt. Gleichzeitig führt der Wizard den Programmierer an die jeweiligen Stellen im Programmcode. (vgl. Abb. 3) Jedes Teilmodul im Projekt wird dabei als funktionale Einheit betrachtet, das über eine vordefinierte Moduldatenschnittstelle für Steuerung- und Statusinformationen mit anderen Modulen kommuniziert. Abhängig von der Zielanwendung können Anwender bei Projektierungsbeginn neben den vordefinierten Betriebsarten \’Automatik\‘ und \’Manual\‘ weitere Betriebsarten der zentralen Statusmaschine definieren. Auch hierbei erfolgen \’Hinzufügen\‘, \’Umbenennen\‘ oder \’Löschen\‘ über einen Dialog, der Programmcode wird entsprechend der in GAT hinterlegten Regeln automatisch nachgeführt. Jedes Teilmodul folgt dabei zunächst defaultmäßig der zentralen Statusmaschine, der Anwender kann die modulabhängige Zuordnung ändern. Die modulspezifischen Abläufe codiert der Anwender anschließend im vorbereiteten Applikationsrahmen. Zur Strukturierung und für mehr Transparenz lassen sich zudem bei komplexeren Prozessen hinter jeder Betriebsart Zustände hinterlegen. Auch dabei unterstützt GAT durch dialoggestütztes Hinzufügen von Zuständen und Bedingungen zwischen Zuständen (sogenannte Transitionen). (vgl. Abb. 4) In jedem Teilmodul des Projekts ist ein sogenannter Achs-Container \’Axes\‘ enthalten, über den alle in dem Modul verwendeten Achsen als Datenstrukturen organisiert sind. Über diese erfolgt die Adressierung zum Zugriff auf die im Projekt benötigten Achsinformationen. Hinzufügen, Umbenennen oder Bearbeiten einer Achse nimmt der Anwender auf Knopfdruck über einen Dialog im GAT-Wizard vor. Damit entfällt das zeitraubende und fehleranfällige Ausprogrammieren. Auf diese Weise ist es möglich, in der Anwendung entsprechende Eingangsvariablen des Bibliothekbausteins MB_AxisInterface einfach zu ändern und bspw. von Positionierung auf Synchronisation umzuschalten. Diagnose- und Statusinformationen stellt der Baustein über die vordefinierten Datenstrukturen bereit, um sie z.B. mit angebundenen Visualisierungen verwenden zu können. Das automatisierte Hinzufügen eines neuen Teilmoduls wird durch entsprechende Interaktion im Wizard-Dialog angestoßen. Dabei ist es möglich, auch neue Instanzen bestehender Module zu erstellen. Verwaltung und Aufruf der Teilmodule im Anwendungsprogramm erfolgen mit GAT automatisch über die Funktionsbibliothek ML_TechTemplate. Einzelne Module lassen sich dabei über ein einziges Bit deaktivieren. Das stellt bspw. für Inbetriebnahmen oder Maschinenvarianten einen sehr wertvollen Mechanismus dar. Zentrale Funktionen für Diagnose und Behandlung von Fehlern sind in GAT bereits integriert. Die aus unterschiedlichen Quellen stammenden Fehlerinformationen werden über die vernetzten Teilmodule an einem Funktionsbaustein im Projekt zusammengeführt. Über das entsprechende Status-Strukturelement stehen diese Informationen in der Anwendung bereit. Gleichzeitig veranlasst der GAT-basierte Programmcode bei auftretenden Fehlern entsprechend ihrer Kategorisierung eine automatische Behandlung und gegebenenfalls eine definierte Fehlerreaktion. Die geforderte Wiederverwendbarkeit entwickelter Module ist durch einfaches Exportieren und Importieren des Codes über den Projektexplorer im Engineering-Tool gewährleistet. Die Einbindung eigener GAT-basierter Maschinenprojekte als Template in den GAT-Wizard ermöglicht anwendungsspezifische Projekte auf Basis dieser Toolbox-Lösung. Zur Maschinenbedienung auf externen HMI-Geräten steht eine mehrsprachige Visualisierungsmaske zur Verfügung, die über \’Visualisierungen\‘ im GAT-Wizard eingebunden wird. Diese Maske besteht aus den Bereichen Kopfzeile mit Statusinformationen, Hauptbildbereich mit menüabhängigen Anzeigen und Funktionstasten sowie einer Fußzeile mit Tasten zur Bedienbildumschaltung. Änderungen und Erweiterungen können Anwender über das entsprechende HMI-Tool durchführen. Fazit Die heute verfügbaren Programmierstandards IEC 61131-3 3rd-Edition und PLCopen schaffen die optimalen Voraussetzungen zur Entwicklung modularer Maschinensoftware. Die damit gemachten Erfahrungen in der Automatisierung unterschiedlicher Anwendungen sind frühzeitig in die Entwicklung von GAT eingeflossen. Auf dieser Grundlage leistet die Template-basierende Projekterstellung einen wertvollen Beitrag für das zeit- und kostensparende Software-Engineering in der Fabrikautomation. Basierend auf definierten Schnittstellen und klarer Strukturierung des mit GAT erstellten Projektcodes gewinnen Anwendungsprogramme an Kompaktheit und Übersichtlichkeit. Zusätzlich erhöhen sich Transparenz und Qualität während der Codierung, um die Pflege umfangreicher Anwendungssoftware z.B. in Projektteams sicherzustellen. Zudem können Hersteller Maschinenvarianten flexibler und einfacher erstellen sowie kundenspezifische Anforderungen schneller umsetzen.
Effizient Programmieren mit automatischer Codegenerierung
-
Security
Cyber-Sicherheit wird zum integralen Bestandteil der Maschinenkonzepte
Ab 2027 wird Cyber-Sicherheit verpflichtend: Maschinenhersteller müssen umfassende Security-Maßnahmen wie Security-by-Design und Update-Strategien integrieren. Phoenix Contact unterstützt praxisnah.
-
Bis 250mm Zeichenhöhe
Die fehlerunanfällige, widerstandsfähige Konstruktion und die einfache Bedienung sind die großen Vorteile der industriellen Großanzeigen der Serie S302.
-
Sensor für robuste Absolutpositionierung
Präzision im Heavy-Duty-Modus: Weg-Codier-System mit IO-Link
Wo automatisierte Laufkatzen und Hafenkräne tonnenschwere Lasten bewegen, benötigt die Steuerung absolute Positionsgeber für Positions- und Geschwindigkeitsdaten. Raue Umgebungsbedingungen dürfen die Zuverlässigkeit der Sensorik nicht beeinträchtigen. In solchen…
-
Zertifizierung nach IEC62443-4-1/2
Sicherheitssteuerung
Im November erhielt die Sicherheitssteuerung Flexi Compact von Sick vom Tüv Süd die Zertifizierung nach IEC62443-4-1/2.
-
Elektroexporte im September: Bester Monat im Jahresverlauf
Die Exporte der deutschen Elektro- und Digitalindustrie sind im September um 9,6% gegenüber Vorjahr auf 22,2Mrd.€ gestiegen.
-
Komponenten für energieoptimierte Maschinenkonzepte
Effizient antreiben, intelligent bremsen
Der Auftritt von KEB Automation auf der SPS steht ganz im Zeichen der…
-
Stahlketten sichern Performance von Umreifungsanlagen
Gut verpackt
Wer seine Produkte in die ganze Welt verschickt, muss sicher sein können, dass…
-
Kabelmanagement-Lösung
Kabeldurchführungsplatte für extreme Außenbedingungen
Mit der KEL-DPU-OD bringt Icotek eine Kabeldurchführungsplatte auf den Markt, die speziell für…
-
Auftragsbestand im Verarbeitenden Gewerbe im September: +0,6% zum Vormonat
Der reale (preisbereinigte) Auftragsbestand im Verarbeitenden Gewerbe ist nach vorläufigen Ergebnissen des Statistischen…
-
Märkte für elektronische Komponenten und Baugruppen wachsen zweistellig
Die globalen Märkte für elektronische Komponenten und Baugruppen verzeichnen ein starkes Wachstum.
-
Werkzeugmaschinenbestellungen haben Talsohle erreicht
Im dritten Quartal sank der Auftragseingang in der deutschen Werkzeugmaschinenindustrie um 5%.
-
Ginzinger und Limes Security
Whitepaper zeigt praxisnahen Weg zum Cyber Resilience Act
Ginzinger Electronic Systems und Limes Security haben ein gemeinsames Whitepaper zum Cyber Resilience…
-
Sicher und vollständig kalibrieren: detaillierte Checkliste von DataTec
Checkliste für sichere und vollständige Messgeräte-Kalibrierung
Messgeräte entsprechen ab Werk nur für begrenzte Zeit ihren Spezifikationen – meist ein…
-
Panduit stellt besonders kurzen, geschirmten Keystone-RJ45-Jack vor
Keystone-Buchse: kompakt und kurz
Panduit erweitert sein Portfolio um kompakte Cat-6/Cat-6A-Keystone-Module, die sich einfach in Standard-Keystone-Aufnahmen vieler…
-
OPC UA für die Feldebene
Aktueller Status und Ausblick
OPC UA FX (Field eXchange) ist ein zentraler Bestandteil der Weiterentwicklung von OPC…
-
Inverse modulare Kabeldurchführungen mit geteiltem Rahmen
Flexible Kabeldurchführung
Mit KDSI-SR-G erweitert Conta-Clip sein modulares Kabeldurchführungssystem um einen zweigeteilten Rahmen, der die…
-
Sichere Fernwartung – leicht gemacht
Keine Chance für Cyber-Brechstangen
Online-Kriminelle haben die OT für sich entdeckt – das zeigen u.a. rasant steigende…
-
Neue Not-Halt-Baureihe
Robuste Not-Halt-Schalter mit M12-Anschluss
Mit Quartex Connect bringt Schlegel eine neue Not-Halt-Baureihe für 22,3mm-Bohrungen auf den Markt…
-
Weidmüller Stripax – jetzt auf der Conrad Sourcing Platform
Schnell, einfach und präzise abisolieren
Weidmüller bringt die neue Generation der Stripax-Abisolierzange auf den Markt.
-
TKD Kabel erweitert Produktfinder zum Kundenportal
Schneller zum Kabel, das passt
TKD Kabel hat seinen Online-Produktfinder zu einem kundenorientierten Portal ausgebaut, das den Zugang…
-
VDMA-Studie
Mehr als die Hälfte der Maschinen- und Anlagenbauer setzt auf OPC UA
Laut aktueller Interoperabilitätsstudie des VDMA sehen 84% der Unternehmen einen konkreten Bedarf an…
-
Energieverbrauch der Industrie um 1,9% gestiegen
Die deutsche Industrie hat im Jahr 2024 insgesamt 3.343 Petajoule Energie verbraucht.
-
Time Sensitive Networking
TSN-Layer-3-Switch für präzise Echtzeitkommunikation
Mit dem TSN-6325-8T4S4X präsentiert Spectra einen Managed Industrial Ethernet Switch, der für zeitkritische…
-
Für Motion-Control-Anwendungen
BiSS-Master-Chip mit SPI und RS-422-Transceiver
Mit iC-MBE stellt iC-Haus einen SPI-zu-BiSS-Master-Konverter vor, der die Integration der offenen BiSS-…
-
Industrielle Bildverarbeitung
Neues Deep-Learning-Feature in Halcon 25.11
MVTec erweitert seine Machine-Vision-Software Halcon 25.11 um das neue Deep-Learning-Feature Continual Learning.
das könnte sie auch interessieren
-
Multivariable und energieeffiziente Steuerung
Multivariabel und energieeffizient
-
Sensoren, Ladekabel und Cybersicherheits-Zertifizierung
Zertifizierte, sichere Entwicklungsprozesse
-
OPC UA als Enabler für Data Spaces und KI
Semantische Standards
-
Multilevel-Technologie vermeidet LC-Filter und senkt Energiekosten
Drei Level für weniger Verluste

















