So wird Raspberry Pi 3 zum Industrie-Controller
Anbieter zum Thema
Mit Raspberry Pi 3 können Entwickler schnell programmierbare Industrie-Steuerungen für Automatisierungs-Systeme kreieren, etwa fürs Prototyping. Wie, verrät dieser Beitrag.

Wenige kleine Unternehmen benötigen wirklich die Kombination von Robustheit, hoher I/O-Kapazität und komplexer Funktionalität, für die speicherprogrammierbare Steuerungen (PLCs) ursprünglich ausgelegt waren. Es sind zwar abgespeckte PLCs verfügbar, aber die Entwickler haben auch die Möglichkeit, auf der Suche nach effizienter industrieller Überwachung und Steuerung auf eine Vielzahl von kostengünstigen Hardware- und Softwarelösungen aus dem Open-Source-Bereich zurückzugreifen.
Ein Beispiel für eine derartige Lösung ist die kleine PC-Platine Raspberry Pi 3 mit den entsprechenden Zusatzplatinen, etwa für die Industrie. In diesem Artikel werden die Haupteigenschaften des Raspberry Pi 3 beschrieben, bevor wir näher auf die Verwendung für Überwachung und Steuerung eingehen.
Raspberry Pi für die industrielle Steuerung
Für viele kleinere Betriebe bietet die Plattform Raspberry Pi 3 eine kostengünstige Lösung mit hoher Leistungsfähigkeit. Das Board Raspberry Pi 3 ist in der Lage, dedizierte industrielle Automatisierungsaufgaben zu bewältigen. Es kombiniert einen Broadcom-Arm -Cortex-A53-basierenden SoC-Baustein (System-On-Chip) mit Quadcore-CPU (1,2 GHz Takt) mit 512 KB L2-Cache, 1 GByte RAM und digitalen Schnittstellen mit den Netzwerkstandards Wi-Fi und Bluetooth. Geeignet ist auch das aktuelle Topmodell, der Raspberry Pi 3B+, das mit 1,4 GHz taktet.
Dank Header vielfältigste Einsatzmöglichkeiten
Des Weiteren verfügt Raspberry Pi über eine Stiftleiste mit 40 Kontakten, darunter 26 GPIOs (General Purpose Input/Output) für vielfältigste Erweiterungen und Steuerungslösungen, etwa Pulsweitenmodulatoren, Zeitgeber und serielle Schnittstellen. Entwickler können beliebige nicht zugewiesene GPIOs als Interrupt-Leitung, Eingang oder Ausgang mit bis zu 16 Milliampere (mA) (bis zu 50 mA insgesamt pro GPIO-Bank) verwenden.
Wie auch andere Mitglieder der Raspberry Pi-Familie macht der Raspberry Pi 3 so die Embedded-Entwicklung selbst für Anfänger relativ einfach und ist dabei so leistungsfähig, dass er auch die komplexeren und anspruchsvolleren Anforderungen von erfahrenen Entwicklern erfüllt.
Um den Raspberry Pi zu starten, müssen die Entwickler nur die Videoanschlüsse der Platine mit einem Display und die USB-Anschlüsse mit Tastatur und Maus verbinden. Was die Softwareentwicklung betrifft, so können die Entwickler auf einem breiten Ökosystem aufbauen, das in Teilen auf dem von der Raspberry Pi Foundation unterstützten freien Linux-basierenden Betriebssystem Raspbian basiert, das von einer Speicherkarte über die Mikro-SD-Schnittstelle geladen wird.
Hardware-Erweiterungen für die Automatisierung
Neben seiner Leistung und der einfachen Entwicklung macht die leichte Erweiterbarkeit seiner Funktionalität den Raspberry Pi für die vielfältigen Anforderungen der Automatisierung in der Industrie hervorragend geeignet. Wenn die Entwickler Hardwaremerkmale hinzufügen möchten, müssen sie nur eine als HAT (Hardware Attached on Top, aufgesetzte Hardware) bezeichnete Zusatzplatine auf die Raspberry Pi 3-Platine aufstecken.
Ebenso wie bei komplexeren industriellen Systemen bietet das HAT einen Standardansatz zur Identifikation und zur automatischen Konfiguration der GPIOs und Treiber je nach Bedarf. So können die Entwickler den Raspberry Pi im Handumdrehen durch einfaches Einstecken des Automation-HAT PIM213 von Pimoroni (Abbildung 1) für industrielle Anwendungen aufrüsten.
Das speziell für die Überwachung und Steuerung von Automatisierungssystemen gedachte Automation-HAT von Pimoroni verfügt über mehrere I/O-Kanäle, z. B. analoge und digitale Eingänge, Ausgänge mit Stromversorgung und Relaissteuerung. Die I/O-Kanäle können mit bis zu 24 V betrieben werden und bieten große Eingangs- und Ausgangspuffer. Die Relais-Ausgänge eignen sich für bis zu 2 A, was zur Steuerung von 24-V-Bausteinen mit geringer Leistungsaufnahme ausreicht, z. B. für das Magnetventil 81 546 001 von Crouzet.
Phyton-Modul für die Softwareentwicklung
Für die Softwareentwicklung mit dem Automation-HAT bietet Pimoroni ein passendes Python-Modul, über das die Hardwarefunktionen des HATs mit wenigen Codezeilen genutzt werden können. Wenn das Pimoroni-Modul in ein Python-Programm importiert wird, erstellt es Softwareobjekte für die analogen und digitalen Eingänge, den Relaisausgang und die LED-Steuerung, jeweils einschließlich der entsprechen Low-Level-Funktionen für das Lesen und Schreiben (Listing 1; alle Listings finden Sie auf der Seite von Digi-Key über folgenden Link:).
Jedes Objekt identifiziert dabei den entsprechenden Kanal und weitere zugehörige Daten. Das Objekt für den Analogeingang erhält z. B. beim Erstellen die maximale Spannung am zugeordneten Pin (siehe Funktion "init" in Listing 1). Das ADC-Objekt ruft zur Durchführung einer Analog-Digital-Wandlung das zu Grunde liegende ADC-Modul auf (ads1015.read in Listing 1). Das ADC-Modul führt wiederum die erforderlichen Low-Level-I2C-Transaktionen durch, die zum Einrichten des ADC und zur Durchführung einer Wandlung erforderlich sind, bevor es den Wert in verwendbarer Form zurückgibt (Listing 2).
Einfaches Ein- und Ausschalten eines Relais
Der Vorteil für den Entwickler ist, dass er zum Auslesen eines analogen Werts für das analoge Objekt einfach nur eine High-Level-Lesefunktion (.read()) für den angegebenen Analogeingang (.one) ausführen muss:
value = automationhat.analog.one.read()
Zudem unterstützt die Bibliothek dieses einfache Modell auch für andere HAT-Funktionen. So ist das Ein- oder Ausschalten eines Relais nur ein einfacher Aufruf:
automationhat.relay.write(1) # 1 = ON, 0 = OFF
(ID:45410555)