SONDERDRUCK

Sonderheft

HMI & IPC

Sonderdruck

André Massow

Raspberry Pi für die Industrie In der Maker-Szene etabliert, spielt der Raspberry Pi auch in der Automatisierungswelt zunehmend eine Rolle. Doch der Mini-Rechner ist nicht für den 24/7-Betrieb ausgelegt. Eine speziell für das industrielle Umfeld modifizierte Version schafft Abhilfe – sowohl als ­Embedded-PC- als auch als Panel-PC-Variante.

D

er Single-Board-Computer Raspberry Pi ist mit über 12 Mio. verkauften Exemplaren der am dritthäufigsten verkaufte Computer der Welt. Mittlerweile ist er nicht mehr nur im Bereich der Hobbyanwender der Maker-Szene anzutreffen, sondern auch zu­nehmend im industriellen Umfeld. Dort verwenden immer mehr Entwickler für Prototypen und Evaluierungen Systeme auf Basis des Open-Source-Mini-Rechners. Das erfolgt oft erst einmal ohne professionelles Gehäuse und mit einer Versorgungsspannung über ein Standard5V-USB-Netzteil. Benötigte Schnittstellen und Zusatzfunktionen werden

in diesen Fällen mit diversen Pi-Hat-Aufsteckmodulen realisiert. Die jeweils gestellte Aufgabe ist damit oft schon gelöst, aber der Aufbau ist entsprechend in keiner Weise für einen 24/7- Produktivbetrieb geeignet. Ein Beispiel: USB-Netzteile sind häufig zu schwach dimensioniert, wodurch Folgefehler wie korrupte µSDKarten durch die unzuverlässige Spannungsversorgung auftreten. Für den zuverlässigen Betrieb könnten Unternehmen auf klassische Panel- PC- und Steuerungssysteme zurückgreifen, sind aber oft nicht bereit, dafür den Preis klassischer Industrieprodukte zu bezah-

len. Schließlich sind die Einsatzgebiete häufig sehr überschaubar und der Prototyp läuft so gut, dass eine aufwendige Portierung in ein anderes System gescheut wird. Darüber hinaus sind bei diesen Anwendungen der Einsatz im erweiterten Temperaturbereich und hohe Langzeitverfügbarkeit eher nicht im Fokus der Anwender. Entscheidender ist die Softwarekompatibilität zum Raspberry-Pi-Öko­ system und die damit verbundene ­Verfügbarkeit einer Vielzahl von Softwarebibliotheken, Anwendungsprogrammen und Dokumentationen im Open-SourceBereich.

(Bilder: Janz Tec)

20

Sonderdruck HMI & IPC 2017 . www.computer-automation.de

Sonderdruck

Bluetooth- und WLAN-­ Anbindung Aufgrund vieler Kundenanfragen entwickelte Janz Tec den auf dem Mini-Rechner basierenden Embedded-PC emPC-A/RPI3. Die aktuellen Generationen mit dem Raspberry-Pi-3-Model-B sind CE-konform und verfügen über Bluetooth- und WLAN-Anbindung. Diese zwei Funkschnittstellen eröffnen ganz neue Anwendungsfelder, insbesondere im IoT-Umfeld, beispielsweise zur Anbindung von Bluetooth-basierten Funksensoren. Doch ein weiteres Themenfeld, das für viele Anwender interessant ist, ist die Kombination mit einem integrierten Display mit Touchbedienung. Deshalb entwickelte Janz Tec den Panel-PC emView-7/RPI3. Dieser bietet durch den Einsatz des Raspberry-Pi-3-Model-B in Kombination mit dem offiziellen Raspberry-PiDisplay einen kostengünstigen und schnellen Einstieg in die Realisierung industrieller HMI-Anwendungen, die Multitouch unterstützen. Das Display bietet eine Auflösung von 800 × 480 Pixeln sowie kapazitive Multitouch-Funktionalität. So wurde das Gerät zum jüngsten Mitglied der emView genannten PanelPC-Familie von Janz Tec und stellt das Einstiegsmodell dieser Serie dar.

100 % kompatibel Der emView-7/RPI3 besitzt die gleichen Schnittstellen wie der Embedded-PC emPC-A/RPI3. Er ist 100-prozentig kompatibel zu den frei verfügbaren Standard-Raspberry-PiBetriebssystemen: Linux-Distribution Raspbian und Microsoft-Windows-10-IoT-Core. Ein wesentliches Feature ist die von Janz Tec entwickelte Basisplatine, welche die stabile 5V-Spannungsversorgung des Moduls sicherstellt. Der Eingangsspannungsbereich liegt bei 9 bis 32 V und ist somit ideal für den 24- und 12-VBetrieb geeignet. Dabei werden die Versorgungspannung und die industriellen Schnittstellen CAN Bus, serielle Schnittstelle RS232/RS485 sowie die je vier digitalen Ein- und Ausgänge auf einer gemeinsamen 24-poligen I/O-Buchse realisiert.

Das Blockschaltbild der Basisplatine des Embedded-PC emPC-A/RPI3.

Über eine D-Sub-Buchse wird eine serielle Konsole bereitgestellt, so dass Debug- und Wartungsarbeiten über eine Terminalverbindung möglich sind. Der Einsatztemperaturbereich zwischen 0 und +45 °C ist ein wenig eingeschränkter als bei manchen anderen industriellen Raspberry-Pi-basierten Produkten, aber der Fokus von Janz Tec liegt auf dem möglichst zuverlässigen Dauerbetrieb des Systems unter Berücksichtigung der Limitierungen des Moduls. Schon bei der Entwicklung der Basisplatine stand die spätere Softwarekompatibilität zu Mainline-Linux-Treibern im Vordergrund. Aus diesem Grund wählte man für die industriellen Schnittstellen elektronische Bauteile aus, die auch auf anderen Hat-Erweiterungsplatinen zu finden sind. Der Microchip-MCP2515CAN-Controller steuert den galvanisch getrennten CAN-Bus-Anschluss und ein NXP-SC16IS740-UART stellt die zwischen RS232 und RS485 umschaltbare serielle Schnittstelle bereit. Angesprochen werden die Schnittstellen über Standard-LinuxTechniken, wie die SocketCAN-Bibliothek für den CAN-Bus und dem Linux-Gerätenamen /dev/ttySC0 für

www.computer-automation.de . Sonderdruck HMI & IPC 2017

die serielle Schnittstelle. Die je vier digitalen Ein- und Ausgänge und die zwei Benutzer-LEDs sind intern an die GPIO-Anschlüsse angeschlossen. Damit steht eine Vielzahl an frei verfüg-baren Bibliotheken und Anwendungen zu deren Programmierung und Ansteuerung bereit.

Warum nicht das ­Compute-Module? Die Softwarekompatibilität war auch einer der ausschlaggebenden Punkte für die Verwendung des StandardRasp-berry-Pi-3-Model-B-Moduls anstatt der ebenfalls beliebten Compute-Module. Auch wenn diese Module eine höhere Integration und kompaktere Bauformen erlauben, ist die Software-Unterstützung hier nicht so umfassend wie für die Standard-Varianten. Außerdem wären populäre Features, wie WLAN und Bluetooth, nicht so einfach realisierbar gewesen. Eine der häufigsten eingesetzten Erweiterungen ist die RTC-Platine. Sie stellt die beim Modul nicht enthaltene Echtzeituhr bereit. Auf der Basisplatine emView-7/RPI3 wird die batteriegepufferte Echtzeituhr mit dem Microchip MCP7940N realisiert. Die verwendete Knopfzelle vom Typ CR2032 stellt der Uhr für

21

22

Sonderdruck

Der Panel-PC emView-7/RPI3 ist mit Anschlüssen für Versorgungsspannung, I/O, CAN-Bus, RS232/ RS485, Netzwerk, USB und serieller Konsole ausgestattet.

viele Jahre die notwendige Energie zur Verfügung. Viele Tests haben gezeigt, dass die Zuverlässigkeit des Systems neben der Spannungsversorgung ganz wesentlich von der Qualität der verwendeten µSD-Karte abhängt. Diese muss zwingend für den Einsatz in industriellen Umgebungen ausgelegt sein; normale Consumer-µSDKarten fallen oft nach kurzer Zeit aus. Daraufhin sind sie entweder nicht mehr lesbar oder zeigen gravierenden Datenverlust. Der verwendete µSD-Kartentyp muss daneben das Ausschalten der Versorgungsspannung ohne vorheriges Herunterfahren des Betriebssystems mehrere tausend Male ohne Probleme überstehen. Der emView-7/RPI3 ist ab Werk mit einer entsprechenden µSDKarte eines darauf spezialisierten Markenherstellers ausgestattet. Häufig ist bei Systemen aus dem Embedded-Umfeld die Installation von Zusatzsoftware sehr kompliziert. Fehlende Funktionen müssen zunächst bei kommerziellen Anbietern angefragt und erworben oder zumindest aufwendig für die jeweilige Hardwareplattform mit einer C/C++Toolchain compiliert werden.

Flexibilität bei der Software Beim emView-7/RPI3 können Anwender mit Linux als Betriebssystem und der Raspbian-Linux-Distribution frei verfügbare Open-Source-Projekte mit Hilfe des enthaltenen Paketmanagers nachinstallieren. Wird beispielsweise die Funktion eines MQTT-Brokers auf dem System benötigt, können Anwender das dafür notwendige Paket mit dem Auf-

ruf ‚apt-get install mosquitto‘ installieren. Die Flexibilität beginnt schon bei der Auswahl der gewünschten Linux-Distribution. Soll beispielsweise statt der speziell angepassten und vorkonfigurierten Distribution, die Janz Tec mitliefert, die StandardRaspbian-Distri-bution von der Raspberry-Pi-Webseite verwendet werden, so können Anwender die Treiber für CAN-Bus, serielle Schnittstelle und RTC einfach nachinstallieren. Da  nicht jeder Benutzer Kenntnisse in Linux-Treiberentwicklung und Compilierung mitbringt, hat Janz Tec auf GitHub (https://github.com/ janztec/empc-arpi-linux-drivers) ein Treiberinstallations-Skript veröffentlicht. Dieses lädt automatisiert die Linux-Kernel-Quelltexte für die aktuell installierte Kernelversion herunter und compiliert und installiert die Treiber als Kernelmodule. Standardeinstellungen an Linux-Konfigurationsdateien lassen sich ebenfalls automatisch vornehmen, beispielsweise wird der CAN-Bus auf eine Datenrate von 500 KBit/s voreingestellt und die grüne LED als µSD-Aktivitätsanzeige konfiguriert. Das Skript liegt im Quelltext vor, so dass die jeweils vorgenommen Einstellungen genau nachvollziehbar und damit auch individuell anpassbar sind. Der Raspberry Pi bildet kaum Einstiegshürden zur Entwicklung eigener Software. Je nach Kenntnisstand und Vorlieben des Software-Entwicklers, können diverse Programmiersprachen genutzt werden, angefangen von einfachen grafischen Programmiersprachen – wie Scratch, Perl oder Python – bis hin zu klassischen Hochsprachen wie C, C++ und Java. Eine Reihe im Internet frei verfügbarer Anleitungen und Softwarebiblio-theken aus dem Maker-Umfeld, sind bereits durch die große Gemeinschaft an Nutzern so ausgereift, dass

sie oft rei- bungslos im industriellen Einsatz laufen. Hier sind beispielsweise die Projekte zum Zugriff auf GPIOs (http://wiringpi.com/), auf serielle Schnitt-stellen (http://elinux.org/Serial_port_programming) und den CAN-Bus sehr interessant (http://public.pengutronix.de/software/libsocketcan/). Durch die Nutzung freier Software lässt sich potenziell viel Zeit und Geld bei der Entwicklung der eigenen Anwendung sparen, so dass mehr Ressourcen in die Verbesserung der eigenen Produkte investiert werden können. Die damit verbundene Verkürzung von Produkteinführungszeiten ist ein weiterer Vorteil. Auf der anderen Seite stellt Linux mit seinen vielfältigen Lizenzbedingungen, die sich von Softwarepaket zu Softwarepaket unterscheiden können, für viele Unternehmen auch eine Hürde dar. Die Gefahr von unbewussten Lizenzverletzungen steht dem Einsatz von Linux außerhalb von Prototypen häufig im Wege. Die von Janz Tec standardmäßig ausgelieferte Distribution basiert daher auf Raspbian Lite. Sie enthält ausschließlich Softwarepakete, die unter freien Softwarelizenzen stehen und damit auch im professionellen Umfeld genutzt werden dürfen.

Die Alternativen Bei anspruchsvolleren Anforderungen von Kundenseite bezüglich des Umgebungstemperaturbereichs oder der Langzeitverfügbarkeit kann es sinnvoll sein, vom Einsatz einer R ­ aspberry-Pi-basierten Lösung abzuraten und alter-nativ die anderen seit Jahren erprobten und bewährten Industrieund Panel-PC-Lösungen der emPCund emView-Serien zu wählen. Hardwareseitig liegen andere Systeme in der gleichen Leistungsklasse wie der Raspberry Pi, sind dazu aber modular aufgebaut und können um zusätzliche Schnittstellen erweitert werden. Die klassischen industriellen Rechner verfügen bei Bedarf über eine aufwendige passive Kühllösung für den zuverlässigen Betrieb bei Umgebungstemperaturen von –40 bis +60 °C.

Sonderdruck HMI & IPC 2017 . www.computer-automation.de

Sonderdruck

Von der Softwareseite sind die notwendigen Anpassungen beim Wechsel von Raspberry-Pi-basierten Systemen auf ein weiteres System der emPC-Serie, zum Beispiel dem emPC-A/iMX6, ebenfalls sehr überschaubar. Raspbian auf dem Raspberry Pi und Debian auf dem emPC-A/iMX6 unterscheiden sich nur in Details und für viele Anwendungen lassen sich die gleichen Pakete über den jeweiligen Paketmanager nachinstallieren. Ist etwa eine C/C++-Toolchain für ARM zur Software-Entwicklung im Einsatz, so ist diese auf beiden Systemen gut  vergleichbar, weil der gleiche ARM-HardFloat-Compiler verwendet werden kann. Eine indivi­duelle Beratung der Kunden je nach An-

wendungsbereich ist hier wichtig, um zu klären, wann ein Wechsel auf alternative emPCs oder emViews sinnvoll ist.

Kürzere Entwicklungszeiten Bisher waren die Entwicklungszyklen für Hard- und Software im industriellen Umfeld eher langwierig. Betrachtet man dazu noch die Zeit, die eine Anwendung im Produktivbetrieb im Einsatz ist, so ging es bisher um Zeiträume von fünf bis zehn Jahren und mehr. Mit dem Eintritt der ‚Professional Maker‘ in dieses Berufsfeld wird immer mehr der Wunsch nach kürzeren, agileren Entwicklungszyklen und dem Einsatz von immer aktuellerer Technologie geäußert. Zur Beurteilung der Chancen und Risiken

www.computer-automation.de . Sonderdruck HMI & IPC 2017

dieses Trends können jetzt mit den Raspberry-Pi-basierten Systemen industrielle Anwendungen mit Hilfe der vielen frei verfügbaren Softwarebibliotheken, Programmiersprachen und Anleitungen realisiert und im Einsatz erprobt werden. Auf einfache Art kann so jeder selber beurteilen, ob die Veränderung zu zuverlässigen Lösungen und Produkten führt und für welche Einsatzgebiete diese in Frage kommen. ld André Massow ist Software-Entwickler bei Janz Tec.

23