Programmierung PLC Developer Heutige Automatisierungen lösen komplexe Problem­ stellungen, die weit über die reine Steuerung der An­ lage hinausgehen. Für diese vielschichtigen Aufgaben­ stellungen ist die Programmierung in der IEC 61131-3 Programmiersprache Strukturierter Text (ST) gut geeignet. Diese Sprache bietet die Möglichkeit einer effizienten prozeduralen Programmierung. Mit dem PLC Developer wird ein Tool zur Verfügung gestellt, das den Anlagen-Programmierer in allen Phasen der Software-Entwicklung umfassend unterstützt. Im Kon­ text der Automatisierung werden Software Projekte im Zusammenhang mit einer Maschine erstellt. Das zentrale Werkzeug für die Lösung der Automa­ tisierungsaufgaben stellt das SolutionCenter dar. Der PLC Developer ist zentraler Bestandteil dieses ­Engineering-Tools. Somit können alle Möglichkeiten des SolutionCenters wie z. B. Verlinkung von Pro­ jekten, Versionsverwaltung und der Eclipse-Markt­ place genutzt werden. Die M1-Steuerung stellt eine Multitasking-Umgebung auf Basis des Betriebssystems VxWorks® zur Verfügung. Jedes Software-Modul das mit dem PLC Developer erstellt wird, kann in bis zu 16 Tasks gegliedert werden. Die erstellten Tasks kön­ nen sowohl zyklisch als auch event-gesteuert gestar­ tet werden und dabei die Möglichkeiten des Betriebs­ systems nutzen. Das Erstellen von Code ist eine zentrale Aufgabe des PLC-Programmierers. Eine optimale Übersicht bietet die Projekt-Ansicht des PLC Developer. Hier werden alle zu einem Projekt gehörenden Dateien (POU‘s, Bibliotheken usw.) in einer flachen oder strukturierten Ansicht dargestellt. 386 Systemübersicht • Bachmann electronic GmbH • 05/2017 • Technische Änderungen vorbehalten – es sind ausschließlich die Spezifikationsangaben des jeweiligen Anwenderhandbuches maßgeblich. Programmierung Der Editor des PLC Developer unterstützt die Orien­ tierung im Code durch z. B. Syntax-Highlighting oder faltbare Code-Bereiche. Während der Eingabe des Quellcodes wird der Programmierer durch automa­ tische Quellcode-Vervollständigung, Syntax-Prüfung, Code-Snipples oder auch dynamische Anzeige von Informationen zum Code (z. B. Quelltext-Dokumen­ tation) unterstützt. Zu dem aktuell ausgewählten POU werden sämtliche Variablen in einer Gliederungs-­ Ansicht dargestellt. Die Funktionalität des Editors kann durch zahlreiche Eclipse-PlugIns erweitert werden. Kompilieren und Linken wird automatisch durch das Tool gesteuert. Das Ergebnis ist eine fertige, ausführ­ bare Programmdatei für die M1-Steuerung. Für die Fehlersuche wird der Debugger über das grafische ­Interface bedient. Der verwendete Debugger ermög­ licht es, alle Bereiche des Programmes im Schritt­ betrieb zu untersuchen. Über Online-Change ist es möglich den Programm-Code im laufenden Betrieb auszutauschen. Breakpoints ermöglichen eine opti­ male Fehlersuche. Variablen-Werte werden ständig dargestellt und können im laufenden Betrieb manipu­ liert werden (Forcen). Es stehen verschiedene Listen zur Verfügung (Watchlisten, Forcelisten), um Variablen zum DebugZeitpunkt zu organisieren. Die im SolutionCenter konfigurierte Steuerung kann in den PLC Developer eingelesen werden. Weiterhin besteht die Möglich­ keit, bestehende M-PLC-Projekte und Biblio­theken zu importieren. Allgemein •Vollständige Integration in das SolutionCenter •Versionsverwaltung innerhalb des ­SolutionCenter •Anbindung an den Eclipse-Marketplace •3rd Party Plugins bzw. externe Plugins •Importieren/Exportieren von M-PLC-Projekten •16 Task (zyklisch (Time/Sync), Event, ­Freerunning) •Hardware-Import (vollständig/partiell) Editor •Strukturierung von Projekten durch Unter­ verzeichnisse •Intellisense: automatische Ergänzung von Strukturelementen •Syntax-Highlighting •Faltbare Code-Bereiche, z. B. für komplette while-Schleifen •Sprung zur Deklaration von Variablen und Funktionen aus dem Code •Code-Snipplets (durch den Anwender ­modifizier- und erweiterbar) •PLC-Aufrufbaum Debuggen •Stepping (Step-Into, Step-Over, Step-Return) •Ablaufkontrolle •Debuggen von mehreren Task gleichzeitig Bibliothek •Erstellen von eigenen Bibliotheken in IEC 61131-3/ST •Import von Bibliotheken aus M-PLC / CoDeSys 2.x 387 Systemübersicht • Bachmann electronic GmbH • 05/2017 • Technische Änderungen vorbehalten – es sind ausschließlich die Spezifikationsangaben des jeweiligen Anwenderhandbuches maßgeblich.