Aus Raspberry Pi Geek 11/2022

Industrieanlagensteuerung simulieren mit Factory I/O und OpenPLC

© Pitinan / 123RF.com

Simulant

Martin Mohr

Um etwaige Fehler frühzeitig zu erkennen, erweist es sich als hilfreich, komplexe Arbeitsabläufe vorab zu simulieren. Das gelingt mit Factory I/O und OpenPLC.

Der RasPi eignet sich nicht nur für triviale Aufgaben, mit ihm lässt sich auch eine simulierte Industrieanlage steuern. Dazu verwenden wir auf dem Raspberry Pi OpenPLC [1] als Steuerungssoftware. Die Anlage simulieren wir mit der Software Factory I/O [2]. In den folgenden Abschnitten gehen wir detailliert auf beide Programme ein. Wir beschreiben die Funktionsweise und zeigen, wie Sie die zwei Applikationen zur Zusammenarbeit bewegen.

Factory I/O

Bei Factory I/O handelt es sich um eine Software, die verschiedene Arten von Industrieanlagen visualisiert und simuliert. Im ersten Schritt erstellen Sie die Anlage mit einem leicht zu bedienenden 3D-Editor. Ein Simulator erweckt die Konstruktion dann zum Leben. Der wirkliche Pfiff der Simulationssoftware besteht darin, dass sich reale Industriesteuerungen mit den Sensoren und Aktoren der simulierten Anlage verbinden lassen. Das erlaubt es, die komplette Software mit der realen Steuerung erst einmal zu testen, bevor diese dann in der echten Anlage ihren Job aufnimmt.

Für den RasPi-Bastler ist Factory I/O gleich aus mehreren Gründen eine tolle Sache. Zum einen testet man einen Aufbau erst einmal virtuell, bevor man sich tagelang mit dem realen Konstrukt beschäftigt. Zum anderen erlaubt es die Software, sich ohne große Kosten mit dem Thema Industriesteuerungen auseinanderzusetzen. Die Schnittstelle von Factory I/O ist so offen, dass sich jede beliebige Programmiersprache daran andocken lässt.

In diesem Artikel verwenden wir das Protokoll Modbus, um die Kommunikation zwischen dem Raspberry Pi und der simulierten Anlage aufzubauen. Bei Modbus handelt es sich um ein weitverbreitetes Protokoll für die Kommunikation zwischen Steuerungen und Anlagen. Details dazu finden Sie im Kasten “Modbus”.

Modbus

Modbus stammt ursprünglich aus der Automationstechnik. Mittlerweile gilt das Protokoll als Datenübertragungsstandard, den auch viele Geräte außerhalb der Automationstechnik unterstützen. Es arbeitet nach dem Master-Slave-Prinzip: Ein Busmaster steuert der bis zu 246 Slaves. Jeder Busteilnehmer hat eine Adresse von 1 bis 247, über die er kommuniziert. Die Adresse 0 reserviert Modbus für Broadcasts, dorthin gesendete Daten empfangen entsprechend alle Teilnehmer. Das Sichern der einzelnen Datenpakete ist mit CRC-Checksummen implementiert. Jeder Modbus-Teilnehmer nutzt interne Register, über die sich unterschiedliche Funktionen ansprechen lassen. Die Tabelle “Modbus: Funktionsübersicht” gibt dazu einen Überblick.

Es gibt drei Modbus-Varianten zur Datenübertragung. Zwei davon, Modbus RTU und Modbus ASCII, arbeiten über eine traditionelle RS485-Schnittstelle (EIA485). Modbus ASCII übermittelt die Daten im Klartext, was die Fehlersuche erleichtert. Man hängt sich einfach mit einem Terminal in die Leitung und liest die übertragenen Daten mit. Modbus RTU verwendet eine binäre Kodierung, die höhere Datenraten zulässt. Als dritte Spielart gibt es noch Modbus TCP. Er überträgt die Daten mittels Ethernet und stellt heute die am weitesten verbreitete Ausprägung des Protokolls dar. Modbus TCP erlaubt auch den Einsatz über Wi-Fi-Schnittstellen. Detaillierte Informationen und Protokollbeschreibungen finden Sie auf der Modbus-Webseite [3].

Beschreibung

Bezeichnung

Funktion

Datenbreite

Einzelner Ein-/Ausgang

Coil

Lesen, Schreiben

1 Bit

Einzelner Eingang

Discrete Input

Lesen

1 Bit

(Analoge) Eingänge

Input Register

Lesen

16 Bit

(Analoge) Ein-/Ausgänge

Holding Register

Lesen, Schreiben

16 Bit

Die erste Version von Factory I/O veröffentlichten die Entwickler bereits 2014. Man darf also getrost davon ausgehen, dass die Software keine Kinderkrankheiten mehr hat. Da der Hersteller der Anwendung üblicherweise Simulationsspiele entwickelt, lässt sich der Editor für die Anlagen fast wie ein Computerspiel mit Maus und Pfeiltasten bedienen. Das erleichtert den Einstieg in die Software extrem. Die Applikation enthält viele unterschiedliche Sensoren, Aktoren und Anlagenteile. Alles in allem lässt sich damit sehr leicht und schnell eine Anlage oder ein Aufbau zusammenklicken.

Die Installation der Software unter Windows verläuft ohne Komplikationen, Sie klicken sich einfach durch das Setup zu. Falls Komponenten fehlen, laden Sie diese herunter. Im Internet findet sich eine Videoanleitung, wie Sie das Programm unter Linux mit Wine zum Laufen bekommen [4]. Die Beschreibung bezieht sich auf Wine 3.20, Windows 7 und Msvcm80. Nur die ersten zwei Minuten des Clips beschreiben die Installation unter Wine. Auch hier gestaltet sich die Installation schmerzfrei. Da Wine jedoch etwas knifflig zu konfigurieren ist, verwenden wir hier das Programm Play on Linux, um die Installation zu vereinfachen.

Der Hersteller offeriert Factory I/O je nach Anwendungsfall unter diversen Lizenzen, wobei es zu jeder davon auch noch unterschiedliche Zahlungsmodelle gibt. Daher fällt es schwer, einen exakten Preis für die Software zu beziffern [5]. Für unsere Experimente genügt aber die freie 30-Tage-Demoversion.

Nach dem Start präsentiert sich das Programm mit einer klaren und strukturierten Dashboard-Ansicht (Abbildung 1). Auf der linken Seite befindet sich die Navigation, rechts der Inhalt. Die Navigation gliedert sich in fünf Punkte.

Abbildung 1: Das Dashboard von Factory I/O.

Abbildung 1: Das Dashboard von Factory I/O.

Unter Documentation and Tutorials finden Sie verschiedene Anleitungen sowie die vollständige Dokumentation der Software. Daneben gibt es hier Teilelisten, News und Informationen zu den vorhandenen Scenes. Worum es sich bei diesen Scenes genau handelt, klären wir gleich noch. Die Dokumentation ist komplett in einem leicht verständlichen Englisch geschrieben.

Über den Punkt New erstellen Sie ein leeres, neues Projekt, über Open öffnen Sie ein vorhandenes. Bei Scenes handelt es sich um komplette Testprojekte (Szenarien) zum Üben. Sie gestalten sich Schritt für Schritt ein wenig schwieriger, sodass Sie sich spielerisch dem Thema Anlagensimulation annähern. Die Beschreibungen der einzelnen Scenes finden sich im Dokumentationsbereich. Über Update Checker prüfen Sie, ob es eine neuere Version der Software gibt.

Modpoll

Bevor wir damit beginnen, ein Projekt in Factory I/O aufzusetzen, schaffen wir zunächst eine Möglichkeit, Testnachrichten mit Modbus zu erzeugen und zu empfangen. Modpoll bietet sich dazu als sehr einfaches und leistungsfähiges Tool an [6]. Die Installation beschränkt sich darauf, ein ZIP-Archiv herunterzuladen und zu entpacken.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 7 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Raspberry Pi Geek bei Google Play Readly Logo
Nach oben