idw - Informationsdienst
Wissenschaft
Das sichere Programmieren von speicherprogrammierbaren Steuerungen (SPS) erreicht ein neues Level: Erstmals hat das Fraunhofer IEM in Zusammenarbeit mit Codesys Development Methoden der statischen Codeanalyse in die für SPS gängige Entwicklungsumgebung Codesys integriert. Softwareentwickler:innen in der Automatisierungsbranche erhalten so in Echtzeit Hinweise auf Fehler in ihrem Code, die sie bereits im Entwicklungsprozess korrigieren können. Die Lösung ist seit dem 23. April 2024 im Release 5.0.0.0 der Codesys Static Analysis eingebunden.
Ähnlich einer Rechtschreibprüfung zeigt die statische Codeanalyse frühestmöglich Fehler und Gefahren im Programmcode an. Außerdem macht sie unbeabsichtigte Datenflüsse oder die falsche Verwendung von Programmierschnittstellen sichtbar. Softwareentwickler:innen können ihren Code so bereits während der Programmierung prüfen und ausbessern, ohne ihn kompilieren und ausführen zu müssen. „Die Technologie der statischen Codeanalyse ist im Bereich SPS-Programmierung eine absolute Neuerung. In anderen Branchen wird sie bereits sehr oft eingesetzt. Entwicklungsprozesse werden damit effizienter – und vor allem sicherer“, betont Jan Martin Persch, Wissenschaftler am Fraunhofer IEM.
Für die clevere Echtzeit-Korrektur setzte das Forschungsinstitut auf distributive Analyseframeworks mit geringem Speicherverbrauch. Die Analysen bieten Programmierer:innen umfangreiche Konfigurationsmöglichkeiten – und sind sowohl auf die Codesys-Programmierschnittstelle als auch auf eingebundene Drittbibliotheken anwendbar.
Vorteile für die Automatisierungsbranche
In der Automatisierungsbranche gehören SPS zur Grundausstattung. Durch die zunehmende Vernetzung von Maschinen und Anlagen stehen SPS-Programmierer:innen allerdings vor Herausforderungen: Die Gefahr für sicherheitskritische Entwicklungsfehler steigt. Richtlinien wie die europäische Norm IEC 61131-3 versuchen hier, Orientierung zu geben, doch ihre Anwendung ist aufwendig und erfordert den Aufbau besonderer Expertise. So ist das Schreiben von SPS-Programmcode zu einer komplexen Aufgabe für Softwareentwickler:innen geworden. Die Codeanalyse schafft hier Abhilfe: Sie zeigt Fehler beim Schreiben des Programmcodes auf, damit diese frühestmöglich behoben werden können.
Lösung ab sofort im Release erhältlich
Codesys ist die derzeit führende hardwareunabhängige IEC 61131-3-Automatisierungssoftware zur Projektierung und Entwicklung von Steuerungsanwendungen. „Zusammen mit dem Fraunhofer IEM haben wir den Nutzen der statische Codeanalyse für unsere Software erkannt. SPS-Programmieren wird dadurch künftig deutlich fehlerfreier“, sagt Bernhard Werner, Head of Core Technology bei Codesys Development. Das Unternehmen hat die Lösung im Anschluss an das Forschungsprojekt zur Marktreife weiterentwickelt. Die statische Codeanalyse ist ab sofort im Release 5.0.0.0 der Codesys Static Analysis eingebunden.
Gefördert wurde die Zusammenarbeit der Codesys Development GmbH und des Fraunhofer IEM im Rahmen des Zentralen Innovationsprogramms Mittelstand (ZIM) des Bundesministeriums für Wirtschaft und Klimaschutz (BMWK).
Jan-Martin Persch (Mail: jan.persch@iem.fraunhofer.de)
http://Safety und Security am Fraunhofer IEM: https://www.iem.fraunhofer.de/de/schwerpunktthemen/safety-and-security-by-design...
Das Fraunhofer IEM integrierte die statische Codeanalyse in die Automatisierungssoftware Codesys: So ...
iStockphoto.com / scyther5
iStockphoto.com / scyther5
Criteria of this press release:
Business and commerce, Journalists
Economics / business administration, Electrical engineering, Information technology, Mechanical engineering
transregional, national
Research results, Transfer of Science or Research
German
You can combine search terms with and, or and/or not, e.g. Philo not logy.
You can use brackets to separate combinations from each other, e.g. (Philo not logy) or (Psycho and logy).
Coherent groups of words will be located as complete phrases if you put them into quotation marks, e.g. “Federal Republic of Germany”.
You can also use the advanced search without entering search terms. It will then follow the criteria you have selected (e.g. country or subject area).
If you have not selected any criteria in a given category, the entire category will be searched (e.g. all subject areas or all countries).