SPS Programmierung nach IEC 61131-3
Mit modernen Ansätzen in der SPS-Programmierung steigern wir die Flexibilität und Produktivität Ihrer Maschinen und Anlagen.
Mit modernen Ansätzen in der SPS-Programmierung steigern wir die Flexibilität und Produktivität Ihrer Maschinen und Anlagen.
Herausforderungen bei der SPS Programmierung
Die SPS (speicherprogrammierbare Steuerung bzw. PLC, englisch Programmable Logic Controller) wird in der Automatisierungstechnik für Steuerungs- und Regelungsaufgaben überall eingesetzt, wo Prozesse automatisiert werden. Sie stellt eine offene und universelle Automatisierungslösung für nahezu alle Branchen und Anwendungen dar: allgemeiner Maschinenbau, Holzbearbeitungsmaschinen, Verpackungsmaschinen, Blechbearbeitung, Werkzeugmaschinen, Anlagenbau, Montageautomation, Gebäude- und Fördertechnik bis zu Verkehrsleitsystemen.
Die Herausforderung beim Einsatz dieser Maschinen ergibt sich aus den Veränderung der etablierten Rahmenbedingungen, die sich immer dynamischer entwickeln. Industrie 4.0 ist dabei ein zentraler Produktivitätstreiber mit dem Ziel, individuelle, variantenreiche und auf Kundenwunsch gefertigte Produkte bis zur Losgröße 1 zu Kosten wie in einer Massenproduktion herstellen zu können.
Dafür müssen die klassische Produktionstechnik und die Informations- und Kommunikationstechnologie viel enger miteinander vernetzt werden. Anbieter müssen ihre Maschinen zu anderen Anlagen und Informationssystemen „öffnen“, Prozessinformationen zur Verfügung stellen bzw. verarbeiten können. Dadurch entsteht eine ungeheure Dynamik.
Ebenso geraten Fertigungsunternehmen unter Druck, ihre Produktivität weiter zu steigern, um Kostennachteile zu vermeiden. Das sind ungewohnte Herausforderungen, aber vor allem große Chancen für jene, die das erkannt haben und aktiv werden.
Wir können Ihnen aufzeigen, wie das bei Maschinen und Anlagen mit SPS geht und Sie bei der Umsetzung unterstützen!
Vertrauen Sie auf unsere SPS-Expertise
„Seit über zwölf Jahren kombinieren wir OOP, CI und CD in der SPS-Programmierung. So entstehen mechatronische Systeme, die die Vorteile von SPS und Hochsprachenentwicklung vereinen. Unsere Frameworks ermöglichen schnelle und agile Applikationen für diverse Maschinen und Baureihen. Das Ergebnis: erweiterbare, wartbare und wiederverwendbare Software, die den Anforderungen von Industrie 4.0 entspricht.”
Wolfram Schäfer
Geschäftsführer iT Engineering Software Innovations GmbH
Einschränkungen bei der „klassischen” SPS Programmierung
Die Flexibilität spielt beim Aufbau einer modularen Systemstruktur eine wichtige Rolle: bei der Auswahl der Steuerung selbst und der Baugruppen, von der Sensorik über die Aktorik bis hin zur Antriebstechnik. Diese Flexibilität wird verstärkt über den gesamten Produktlebenszyklus einer Maschine bzw. Anlage bzw. für alle im Produktprogramm befindliche Typen innerhalb von Baureihen gefordert.
Die Einsatzszenarien (z. B. herzustellende Produkte, Absatzmengen, Produktvariationen) und Anforderungen (z. B. technische, logistische und sicherheits-/rechtliche) ändern sich in immer kürzeren Zeiträumen. Die modulare Hardware- und Systemstruktur der SPSen bietet für diese Anforderungen eine gute Grundlage. Doch was ist mit der Software?
In der klassischen Form der Programmierung von SPS-Steuerungen wird häufig der Fokus auf die Erfüllung funktionaler Anforderungen gelegt. Das ist richtig und wichtig, aber eigentlich selbstverständlich. Die nicht-funktionalen Anforderungen Wartbarkeit, Erweiterbarkeit und Wiederverwendbarkeit werden bei der „klassischen“ Programmierung oft vernachlässigt.
Probleme bei Vernachlässigung von nicht-funktionalen Anforderungen
- Programmierte Softwarefunktionen für eine Maschine können nicht bei einer anderen genutzt werden
- Höherer Aufwand bei Softwaretest oder Fehlersuche
- Funktionale Erweiterung führt oft zu Verhaltensänderung bei bestehenden Abläufen
- Höherer Aufwand für Anpassungen an der Software
- Abhängigkeit von einzelnen Programmierern
- Vorteile der agilen Softwareentwicklung können nicht genutzt werden
Berücksichtigung von nicht-funktionalen Anforderungen bei der SPS Programmierung
Bei der SPS Programmierung ist die Erfüllung funktionaler Anforderungen natürlich wichtig. Werden die nicht-funktionalen Anforderungen Wartbarkeit, Erweiterbarkeit und Wiederverwendbarkeit bei der Konzeption und Entwicklung berücksichtigt, schafft man nachhaltige Softwarelösungen, die den langen Produktlebenszyklen im Investitionsgüterbereich gerecht werden. Unterstützt wird die SPS Programmierung durch:
Software kann leicht an geänderte Spezifikationen angepasst werden.
Software kann leicht um neue Funktionen erweitert werden.
Software-Bausteine für verschiedene Maschinen, Anlagen und Projekte.
Continuous Integration
Kontinuierliche und automatisierte Prüfung des erstellten bzw. geänderten Source-Codes
- Ständige Verfügbarkeit eines ausführbaren Systems
- Frühzeitiges Erkennen zur Lösung von Problemen bei der Integration
- Steigerung der Effizienz bei der Softwareentwicklung
- Durchführung von automatisierten Tests (Unit-/ Regressions-Tests)
Statische Code-Analyse: Methode zur Bewertung des Source-Codes nach formalen Qualitätskriterien
- Erkennen von Fehlern bereits vor dem Testlauf
- Verbesserung der „Güte“ des Source-Codes
- Erleichterung der Wartbarkeit und Wiederverwendbarkeit von Programmen
Tool-gestüztes Code-Review
Code-Review ist die effizienteste Methode, um die Softwarequalität nachhaltig zu steigern. Die ständige Analyse des Source-Codes nach dem Vier-Augen-Prinzip ermöglicht dem Entwickler eine iterative Optimierung.
- Berücksichtigung und Steigerung nicht-funktionaler Qualitätsmerkmale
- Effiziente Möglichkeit zur Einbindung von Kompetenzen anderer Entwickler
- Erzielung einer wartbaren und erweiterbaren Software
Source-Code-Management
Effektive Unterstützung einer verteilten, dezentralen Arbeitsweise
- Unabhängiges Arbeiten an gleicher Softwareversion möglich
- Softwareentwicklung und -anpassung auch an externen Standorten (z. B. vor Ort beim Kunden)
- Spätere Versionierung der Änderungen und tool-gestützte Zusammenführung im zentralen Repository
Refactoring
Strukturverbesserung von Quelltexten unter Beibehaltung des bisherigen Programmverhaltens
Restrukturierung
Anpassung der Software bzw. von Modulen an neue Technologien
Entwicklungsumgebung TwinCAT3 von Beckhoff
TwinCAT3 (TwinCAT – The Windows Control and Automation Technology) ist eine komplette Entwicklungsumgebung für Steuerungen von Beckhoff.
Es ermöglicht dem SPS-Programmierer einen einfachen Einstieg in die mächtigen Sprachmittel der IEC 61131-3. Die Nutzung der Editoren und der Debugging-Funktionen hat die ausgereiften Entwicklungsumgebungen höherer Programmiersprachen zum Vorbild. Beckhoff bietet damit ein sehr offenes und softwaregetriebenes System an. TwinCAT3 unterstützt alle in der IEC 61131-3 beschriebenen Sprachen:
- Textuelle Sprachen: Anweisungsliste (AWL), Strukturierter Text (ST)
- Grafische Sprachen: Funktionsplan (FUP), Kontaktplan (KOP), Freigrafischer Funktionsplaneditor (CFC), Ablaufsprache (AS).
Mit TwinCAT3 kann auch die leistungsstarke Programmiersprache C++ verwendet werden: objektorientierte Programmiersprache, Echtzeit-Fähigkeit. Unsere Empfehlung: Aus jahrelanger Erfahrung präferiert iT Engineering Software Innovations bei speicherprogrammierbaren Steuerungen (SPS) die Systeme von Beckhoff aufgrund ihrer offenen und erweiterbaren Struktur.
Empfehlungen für die Softwareentwicklung von speicherprogrammierbare Steuerungen (SPS)
- Die anwendungsspezifische Programmierung des Steuerungsprogramms einer SPS sollte entsprechend der Norm IEC 61131-3 erfolgen. Unterstützt wird der Programmierer durch die Entwicklungsumgebung, die in der Steuerungsumgebung des SPS-Herstellers integriert ist. Bei SIMATIC-Steuerungen von Siemens wird der Programmierer durch das TIA Portal unterstützt.
- Die Methoden aus der Hochsprachenentwicklung sollten aus Gründen der Qualität und Wirtschaftlichkeit auch bei der Softwareentwicklung für SPSen angewendet werden. Das umfasst insbesondere die objektorientierte Programmierung (OOP) und damit auch die Schaffung von domänenspezifischen Frameworks.
- Nur so lassen sich zukunftssichere Steuerungskonzepte für SPSen realisieren. Die Beachtung nicht-funktionaler Anforderungen, wie Wartbarkeit, Erweiterbarkeit und Wiederverwendbarkeit garantieren schließlich auch eine höhere Softwarequalität!
- Diese Konzepte sind die perfekte Grundlage, um im nächsten Schritt mit der virtuellen Inbetriebnahme ein noch höheres Niveau bei Softwarequalität und Entwicklungsgeschwindigkeit zu erreichen.
Bereit für den ersten Schritt?
Schreiben Sie uns!
Unsere Kernkompetenz als Dienstleister liegt in der Entwicklung anspruchsvoller, individueller Softwarelösungen im industriellen Umfeld. Dabei verfügen wir über große Erfahrung im Geräte-, Maschinen- und Anlagenbau, im Fertigungsumfeld und in der Vernetzung von Maschinen.
Aufgrund dieses Wissens, gepaart mit unserer Kernkompetenz in der Softwareentwicklung, sind wir der perfekte Partner von der Beratung, über die Unterstützung bis zur vollständigen Implementierung von OPC UA-Schnittstellen – abgestimmt auf Ihr Anwendungsszenario. Wir stellen uns völlig flexibel auf Ihre Anforderungen ein.
- Jusistraße 4 | 72124 Pliezhausen
- info@ite-si.de
- +49 (0) 7127 9231–0