Note

Dieser RevPi ist abgekündigt und nicht mehr verfügbar. Software-Support für bestehende Installationen bleibt davon unberührt.

Produktbeschreibung #

Der RevPi Compact ist eine Open-Source-Kompaktsteuerung für IIoT- und Automatisierungsprojekte auf Basis des Raspberry Pi Compute Module 3+. Der RevPi ist ein nicht-modulares Basismodul aus der Revolution Pi Produktfamilie. Aufgrund seiner flachen Bauform ist der RevPi Compact für den Einbau in Unterverteilerschränken nach DIN EN 18012 geeignet.

Aufbau #

revpi compact aufbau
Position Komponente Verwendung

1

2 × Analoger Ausgang
(4-poliger Stecker)

Analoge Ausgänge

2

8 × Analoger Eingang
(16-poliger Stecker)

Analoge Eingänge

3

Power Supply
(4-poliger Stecker)

Spannungsversorgung anschließen

4

3 × Status-LED

RevPiLED

5

Reset-Taster

Reset-Taster

6

2 × RJ45 Ethernet

Ethernet-Schnittstellen RJ45,
Netzwerkverbindung herstellen

7

4 × USB A

USB-Schnittstellen

8

8 × Digitaler Eingang
(10-poliger Stecker)

Digitale Eingänge

9

2 × RS485
(4-poliger Stecker)

Serielle Schnittstelle RS485

10

8 × Digitaler Ausgang
(10-poliger Stecker)

Digitale Ausgänge

11

HDMI
Micro-HDMI

Desktop-Betrieb einrichten

12

Micro-USB

Image sichern und neu installieren

13

Lüftungsschlitze

Gerät auf einer Hutschiene montieren

Kompatibilität #

Virtual Devices #

Die Virtual Devices sind bei der Auslieferung als Komponenten in PiCtory enthalten:

Betriebssystem-Images #

Der RevPi Compact ist kompatibel mit:

Lieferumfang #

Im Lieferumfang enthalten sind

  • RevPi Compact (nicht-modulares Basismodul)

  • 4-poliger Stecker Power Supply

  • 4-poliger Stecker Analog Outputs

  • 4-poliger Stecker RS485

  • 10-poliger Stecker Digital Intputs

  • 10-poliger Stecker Digital Outputs

  • 16-poliger Stecker Analog Inputs

  • Beiblatt

Montage und Anschluss #

Der RevPi wurde für den Einsatz in einem Schaltschrank entwickelt. Beachte die Vorgaben für den bestimmungsgemäßen Gebrauch und alle Sicherheitshinweise.

Warning
Lebensgefahr durch elektrischen Schlag

Bei Arbeiten an Geräten im Schaltschrank unter Beteiligung von 230-V-Netzspannung besteht tödliche Stromschlaggefahr.

▷ Arbeiten im Schaltschrank nur von Elektrofachkräften durchführen lassen.

▷ Vor allen Arbeiten im Schaltschrank die Spannungsversorgung ordnungsgemäß abschalten.

Important
Beschädigung des Geräts durch Überhitzung

Die Umgebungstemperatur im Schaltschrank darf die maximal zulässige Betriebstemperatur nicht überschreiten.

▷ Lüftungsschlitze freihalten.

▷ Installationsabstände einhalten.

▷ Gerät senkrecht montieren.

▷ Geräte mit starker Eingangsleistung nicht direkt nebeneinander platzieren.

▷ Staub und Schmutz in der Umgebung des Geräts regelmäßig entfernen.

Führe die Montage und den Anschluss in folgender Reihenfolge aus:

  1. Montiere den RevPi auf einer Hutschiene.

  2. Schließe alle sonstigen Geräte wie Sensoren und Aktoren an. Die Schnittstellen, die dir dafür zur Verfügung stehen, findest du im Abschnitt Aufbau.

  3. Schließe einen Bildschirm und eine Tastatur an, wenn du den RevPi im Desktop-Betrieb betreiben möchtest. Das ist nicht notwendig, wenn du über eine Netzwerkverbindung auf den RevPi zugreifen kannst.

  4. Schließe zuletzt die Spannungsversorgung an.

Die digitalen Ausgänge müssen über die Anschlüsse 0V EX und 24V EX separat mit Spannung versorgt werden.

Zugriff auf das Gerät #

Der Zugriff auf den RevPi erfolgt in zwei Schritten:

Installiere alle verfügbaren Updates, sobald der RevPi mit dem Internet verbunden ist, damit das System bei sicherheitsrelevanten Features immer auf dem aktuellen Stand ist.

Siehe auch:

Alternativ ist der Zugriff ohne Netzwerk möglich, siehe Desktop-Betrieb.

Reset-Taster #

Der Reset-Taster startet den RevPi neu.

▷ Drücke den Reset-Taster mit einem dünnen Gegenstand, z. B. mit einer Nadel.

❯❯ Der RevPi fährt herunter und startet neu.

Konfiguration #

Die Konfiguration des RevPi erfolgt in zwei Schritten:

  1. Das RevPi Basismodul konfigurierst du ab RevPi Bookworm (10/2024) über die Applikation Cockpit.

  2. Das Revolution Pi System, d. h. ein RevPi Basismodul mit Erweiterungsmodulen, konfigurierst du über die Applikation PiCtory oder ggf. direkt in der Entwicklungsumgebung, z. B. über CODESYS.

Note

CODESYS und PiCtory können für die Konfiguration nicht parallel verwendet werden. Eine bestehende Konfiguration über PiCtory wird von einer Konfiguration über CODESYS überschrieben.

Die virtuellen Geräte OPC UA Server und MQTT Client können nur über PiCtory verwendet werden.

Note

Bis RevPi Bullseye (04/2024) wird die Konfiguration des RevPi Basismoduls über die Applikation RevPi Status vorgenommen.

Parametrierung #

Folgende Parameter, Eingänge (INP), Ausgänge (OUT) und Memory-Variablen (MEM), können konfiguriert werden:

Core_Temperature (INP) #

Zeigt die CPU-Temperatur als Integer-Wert in Grad Celsius (°C) an.

Core_Frequency (INP) #

Zeigt die CPU-Frequenz in MHz / 10 an, z. B. 2400 MHz = Wert 240.

DIn und DInBit_1 …​ 8 (INP) #

Zeigt die Eingangswerte der digitalen Eingänge an, abhängig vom gewählten Datenschema:

  • BYTE: DIn

  • BOOL: DInBit_1 …​ 8

AIn_1 …​ 8 (INP) #

Zeigt die Eingangswerte der analogen Eingänge an.

DIn_Status (INP) #

Zeigt die Status der digitalen Eingänge an.

DOut_Status (INP) #

Zeigt die Status der digitalen Ausgänge an.

AIn_Status (INP) #

Zeigt die Status der analogen Eingänge an.

AOut_Status (INP) #

Zeigt die Status der analogen Ausgänge an.

RevPiLED (OUT) #

Über RevPiLED kannst du die frei programmierbaren LEDs ansteuern, siehe LEDs konfigurieren.

Bit Komponente Statusinformation

1:0
3:2

LED A1
LED A2

0000 = aus
0001 = grün
0001 = rot
0011 = orange
0100 = grün
1000 = rot
1100 = orange

DOut und OUT DOutBit_1 …​ 8 (OUT) #

Zeigt die Ausgangswerte der digitalen Ausgänge an, abhängig vom gewählten Datenschema:

  • BYTE: DOut

  • BOOL: DOutBit_1 …​ 8

AOut_1 …​ 2 (OUT) #

Zeigt die Ausgangswerte der analogen Ausgänge als Integer-Wert an.

InputDebounce (MEM) #

Ist die Einstellung des Entprellfilters für alle Eingänge:

  • Off

  • 25μs

  • 750μs

  • 3ms

AInMode_1 …​ 8 (MEM) #

Ist der Modus für den jeweiligen analogen Eingang:

  • Off

  • 0 - 10V

  • PT100 Sensor

  • PT1000 Sensor

Serielle Schnittstelle RS485 #

Der RevPi verfügt über eine RS485-Schnittstelle, um serielle Geräte wie Sensoren anzuschließen.

Die Datenleitungen der RS485-Buchse sind mit P (positive) und N (negative) bezeichnet. Bei anderen Geräten werden diese Leitungen auch häufig D+ und D- oder A und B bezeichnet.

revpi-compact-rs485-pinout

Beschaltung der RS485-Klemme:

revpi compact rs485 wiring

Für die eigentliche Datenübertragung werden nur die Leitungen N und P benötigt. Wir empfehlen dir, bei größeren Leitungslängen oder höheren Bitraten ein verdrilltes Pärchen zu verwenden.

Falls ein Bezugspotenzial notwendig sein sollte, kannst du die elektrische Schaltungsmasse an Klemme Ground (GND) ┴ dazu verwenden. Diese Verbindung solltest du jedoch nur herstellen, wenn sie wirklich erforderlich ist. Den Leitungsschirm schließt du am besten an der FE-Klemme an.

Leitungen mit einer Länge >30 m oder Leitungen, die das Gebäude verlassen, müssen immer geschirmt sein. Um die EMV-Eigenschaften des Schirmes noch zu verbessern, verbindest du den Schirm großflächig mittels einer leitfähigen Kabelschelle mit der geerdeten Montageplatte. Alternativ kannst du für die Durchführung der Leitung durch die Schaltschrankwand eine leitfähige EMV-Kabelverschraubung verwenden.

Von Linux aus wird die Schnittstelle über das Character Device /dev/ttyRS485 angesprochen. Du kannst Bitraten bis 3.000.000 konfigurieren. Allerdings kann es bei mehr als 230.400 Bit/s zu gelegentlichen Empfangsfehlern kommen. Das liegt daran, dass der UART des Raspberry Pi, an den die Schnittstelle angeschlossen ist, nur eine 16 Byte kleine FIFO hat und kein DMA unterstützt. Je höher die Bitrate, desto häufiger passiert es, dass die FIFO nicht schnell genug ausgelesen wird und empfangene Daten verloren gehen. Beispielsweise kommt es bei 460.800 Bit/s zu 1-2 Fehlern pro empfangenen 50 MByte, bei 921.600 Bit/s zu rund 10 Fehlern. Wenn dein RevPi Compact vorwiegend Daten sendet und nur selten empfängt, kannst du bedenkenlos auch höhere Bitraten verwenden, ansonsten empfehlen wir dir aber, nicht mehr als 230.400 Bit/s einzustellen.

Terminierungswiderstand aktivieren

✓ Der integrierte 120-Ω-Abschlusswiderstand der RS485-Schnittstelle ist nach einem Neustart ausgeschaltet.

▷ Logge dich über ein Terminal am RevPi ein.

▷ Checke das Git-Repository des Kommandozeilen-Tools rs485_config aus GitLab aus mit dem Befehl:

git clone https://gitlab.com/revolutionpi/rs485_config.git

▷ Baue das Tool mit dem Befehl:

cd rs485_config; make

▷ Aktiviere den Widerstand mit dem Befehl:

./rs485_config <SERDEV> --set-bus-term

Ersetze dabei <SERDEV> durch den Namen der Schnittstelle, z. B. /dev/ttyRS485.

▷ Prüfe, ob der Widerstand aktiviert wurde, indem du dir die Einstellungen der RS485-Schnittstelle anzeigen lässt mit dem Befehl:

./rs485_config <SERDEV>

❯❯ Wenn der Widerstand aktiviert ist, wird Bus termination: Yes ausgegeben.

Ethernet-Schnittstellen RJ45 #

Der RevPi verfügt über zwei Ethernet-Schnittstellen. Jede der beiden Buchsen ist für unterschiedliche Anforderungen konzipiert.

revpi compact ethernet
Ethernet-Schnittstelle A

Du kannst an dieser Schnittstelle einen Durchsatz von maximal 11,2 MByte/s erreichen.

Diese Ethernet-Schnittstelle ist an den internen USB-Bus angeschlossen. Er hat eine maximale Bandbreite von 480 MBit/s. Da sich alle Geräte am Bus diese Bandbreite teilen, ist es möglich, dass sich der Durchsatz auf dieser Ethernet-Schnittstelle verringert, wenn du viele weitere USB-Geräte anschließt. In der Software kannst du diese Schnittstelle als eth0 ansprechen.

Die MAC-Adresse für diese Ethernet-Schnittstelle ist auf dem Gehäuse aufgedruckt und in der Datei /boot/config.txt gespeichert. Du kannst die MAC-Adresse für eth0 bei Bedarf hier auch ändern. Wenn in der Datei /boot/config.txt keine MAC-Adresse eingetragen ist, z. B. weil du ein neues Image aufgespielt hast, wird aus der Seriennummer des Compute Module eine eindeutige MAC-Adresse berechnet.

Ethernet-Schnittstelle B

Diese Ethernet-Schnittstelle ist an den SPI-Bus (spi0) angeschlossen. Deshalb teilt sich diese Schnittstelle die Bandbreite mit anderen Geräten, die du an den SPI-Bus anschließt.

Du kannst bei dieser Schnittstelle einen Durchsatz von bis zu 2,1 MByte/s erreichen. Das ist zwar langsamer als die Ethernet-Schnittstelle A. Doch dafür ist die Ethernet-Schnittstelle B besonders robust gegenüber elektromagnetischen Störungen.

Prüfe, ob diese Schnittstelle für dein Projekt schnell genug ist. Wenn du für dein Projekt eine schnellere Ethernet-Verbindung benötigst, empfehlen wir dir, die Schnittstelle A zu verwenden oder beide Schnittstellen zusammenzufassen. Du erfährst im folgenden Abschnitt, wie das geht.

In der Software kannst du diese Schnittstelle als eth1 ansprechen.

Die MAC-Adresse für diese Ethernet-Schnittstelle ist auf dem Gehäuse aufgedruckt und in der Datei /boot/config.txt gespeichert. Du kannst die MAC-Adresse für Ethernet-Schnittstelle B (eth1) bei Bedarf hier auch ändern. Zusätzlich ist die MAC-Adresse in einem eigenen Speicherbaustein der Ethernet-Schnittstelle B (eth1) gespeichert. Diese werkseitige MAC-Adresse wird benutzt, wenn in der Datei /boot/config.txt keine MAC-Adresse eingetragen ist, z. B. weil du ein neues Image aufgespielt hast.

Schnittstellen zusammenfassen

Um die Vorteile beider Ethernet-Schnittstellen zu nutzen, kannst du diese zu einer virtuellen Einheit zusammenfassen. Das nennt man Bonding. Du kannst dadurch die hohe Bandbreite von Ethernet-Schnittstelle A (eth0) nutzen. Bei Störungen auf dem USB-Bus wird automatisch auf die robuste SPI-Schnittstelle umgestellt.

Beachte, dass es nicht ohne weiteres möglich ist, beide Ethernet-Schnittstellen ohne Bonding ins gleiche Subnetz zu hängen. Wenn du auf diese Weise vorgehen möchtest, musst du die ARP-Konfiguration anpassen und es erfordert Policy Routing. Da das jedoch sehr komplex ist, raten wir dir von dieser Methode ab.

USB-Schnittstellen #

Der RevPi verfügt über 4 USB-A-Schnittstellen. Damit können USB-2.0-Client-Geräte wie USB-Festplatten, Surfsticks, Tastatur oder Maus angeschlossen werden.

  • Die innen liegenden Buchsen (4a) dürfen mit jeweils maximal 1 A belastet werden.

  • Die außen liegenden Buchsen (4b) dürfen mit jeweils maximal 500 mA belastet werden.

  • Die Gesamtlast für alle 4 USB-Schnittstellen darf 2 A nicht übersteigen.

Falls mehr als vier USB-A-Anschlüsse benötigt werden, kann ein USB-Hub angeschlossen werden.

Analoge Eingänge #

Der RevPi verfügt über acht analoge Eingänge. Mit jedem der analogen Eingänge kannst du eine Spannung zwischen 0 und 10 V messen oder eine RTD-Messung mit einem Widerstands-Temperaturfühler (Pt100/1000) vornehmen. Der Analog-Eingang dient dabei gleichzeitig als Konstantstromquelle. Der Pt100/1000-Sensor wird direkt an den Analog-Eingang angeschlossen. Es ist nur eine Zweileiter-Messung möglich.

Der dafür verwendete Analog/Digital-Converter MCP3550-50 hat eine hohe Auflösung von 21 Bit, benötigt jedoch mit 85 Millisekunden pro Messung vergleichsweise lang. Hinzu kommen 40 Millisekunden für das Ein- und Ausschalten der Konstantstromquelle und für das Umschalten des Multiplexers, über den die acht Eingänge mit dem ADC verbunden sind.

Du kannst auf die analogen Eingänge wahlweise mit piControl oder ohne piControl zugreifen:

Mit piControl wird jeder Eingang mit einer Zykluszeit von einer Sekunde ausgelesen und als 16-Bit-Wert in mV (bei Spannungsmessung) oder in 1/10 °C (bei Temperaturmessung) im Prozessabbild gespeichert. Ob ein Eingang zur Spannungs- oder Temperaturmessung verwendet wird, wählst du in PiCtory aus.

Ohne piControl reduziert sich die Zykluszeit auf 125 Millisekunden für das Auslesen eines einzelnen Eingangs, und dir steht der Rohwert in voller 21-Bit-Auflösung zur Verfügung. Aus diesen Rohdaten kannst du dir selbst die gewünschten Werte berechnen.

revpi compact analog inputs

Analoge Ausgänge #

Der RevPi verfügt über zwei analoge Ausgänge. Diese Ausgänge können eine Spannung zwischen 0 und 10 V ausgeben. Du kannst hier Aktoren, wie z. B. Frequenzumrichter anschließen.

Der dafür verwendete Digital/Analog-Converter DAC082S085 hat eine Auflösung von 8 Bit.

Genauso wie bei den analogen Eingängen kannst du auf die Ausgänge wahlweise mit piControl oder ohne piControl zugreifen: Mit piControl werden die Ausgänge mit einer Zykluszeit von 250 µs aus dem Prozessabbild aktualisiert. Dort musst du nur die gewünschte Spannung in mV hinterlegen. Ohne piControl kannst du die Ausgänge jederzeit aktualisieren. Dazu musst du allerdings aus der gewünschten Spannung den Rohwert in 8‑Bit‑Auflösung selbst berechnen.

Ein Powerdown der analogen Ausgänge ist in drei Varianten möglich: Terminiert mit 2.5 kΩ, mit 100 kΩ oder hochohmig. Der Powerdown ist nur für beide Ausgänge gemeinsam und nur ohne piControl verwendbar.

revpi compact analog outputs

Digitale Eingänge #

Der RevPi verfügt über 8 digitale Eingänge.

Du kannst auf sie wahlweise mit piControl oder ohne piControl zugreifen. Mit piControl werden sie zyklisch alle 250 µs mit dem Prozessabbild synchronisiert.

Mit den digitalen 24 V-Eingängen können Signale, die z. B. von einem Sensor ermittelt werden, an die Steuerung weitergeleitet werden.

Die Eingänge sind für Spannungen bis 36 V ausgelegt.

  • Die Schaltschwelle, bis zu der garantiert low gemessen wird, liegt bei 7 V.

  • Ab 10,2 V wird garantiert high gemessen.

Die Eingänge sind nicht galvanisch getrennt. Zum Anschließen der Masse steht eine eigene Klemme zur Verfügung.

Über jedem digitalen Eingang ist eine LED, die leuchtet, wenn der Eingang high ist.

Eine Entprellung ist in vier Stufen möglich: 25 µs, 750 µs, 3000 µs oder keine Entprellung. Die Entprellung ist nur für alle acht Eingänge gemeinsam einstellbar.

Die Eingänge erkennen eine Übertemperatur (135 °C): es erfolgt dann eine Warnung im Kernel-Log und es wird ein Status-Bit im Prozessabbild von piControl gesetzt.

revpi compact digital inputs

Digitale Ausgänge #

Der RevPi verfügt über 8 digitale Ausgänge.

Du kannst auf sie wahlweise mit piControl oder ohne piControl zugreifen. Mit piControl werden sie zyklisch alle 250 µs mit dem Prozessabbild synchronisiert.

Anders als die Eingänge sind die acht digitalen 24‑V‑Ausgänge galvanisch getrennt.

Die digitalen Ausgänge müssen über die Anschlüsse 0V EX und 24V EX separat mit Spannung von 12 …​ 36 V versorgt werden. Verwende unbedingt dasselbe Masse-Potenzial, welches die angeschlossenen Sensoren oder Aktoren versorgt.

Die digitalen Ausgänge sind mit einer automatischen Abschaltung bei Übertemperatur geschützt. Diese Abschaltung gilt separat für jeden einzelnen Ausgang.

Über jedem digitalen Ausgang befindet sich eine LED, die leuchtet, wenn der Ausgabewert high ist.

Die Ausgänge werden von einem Watchdog überwacht und auf low gesetzt, wenn sie nicht alle 9 ms neu geschrieben werden. Damit soll sichergestellt werden, dass die Ausgänge bei einem Systemabsturz in einen sicheren Zustand gebracht werden. Dann leuchten auch ihre LEDs nicht mehr. Diese Überwachung funktioniert aber nur, wenn die Ausgänge nicht mit piTest bzw. piControl gesetzt, sondern die GPIOs direkt beschrieben werden. Der Ausgang wird in piControl durch eine Schleife auf 1 gehalten wird, bis der Ausgang aktiv auf 0 gesetzt wird.

revpi compact digital outputs

Technische Daten RevPi Compact #

Artikelnr.: 100272

Gehäuseabmessungen (H x B x T)

90 x 160,6 x 58 mm

Gehäusevariante

Hutschienengehäuse (für Hutschienenvariante EN 50022)

Gehäusematerial

Polycarbonat

Gewicht

Ca. 290 g (inkl. Stecker)

Schutzart

IP20

Spannungsversorgung - System

Typ. 24 V DC (10,8 … 28,8 V DC)

Spannungsversorgung - digitale Ausgänge

Typ. 24 V DC (11,4 … 28,8 V DC)

Maximale Leistungsaufnahme

20 W (inkl. max. 10 W USB)

Zulässige Betriebstemperatur

-20 …​ +55 °C

Zulässige Lagertemperatur

-40 …​ +85 °C

Max. relative Luftfeuchtigkeit (bei 40 °C)

93 % (keine Betauung)

Schnittstellen

  • 2 x RJ45 10/100 Ethernet (mit unabhängigen MAC Adressen)

  • 4 x USB A (Summe der Stromentnahme aus allen Buchsen max. 2 A)

  • 1 x RS485 max. 500 kbps, Terminierung per SW schaltbar (nicht galvanisch getrennt)

  • 1 x Micro-USB Buchse (exklusiv für Image-Transfer auf eMMC)

  • 1 x HDMI

Steckverbinder

2-, 4- und 8-polige Schraubverbinder

Prozessor

Broadcom BCM2837B0 mit 4-Kern-Prozessor ARM Cortex A53

Taktfrequenz

1,2 GHz

Prozessorkühlung

Passiv mit Kühlkörper

RAM

1 GB

Flash-Speicher

8 GB

EERAM

Persistenter Speicher 2 kB

Anzahl der digitalen Eingänge

8

Bemessungsspannung der digitalen Eingänge

24 V DC

Eingangsschwelle

Bei 24 V DC kompatibel gemäß EN 61131-2 zu Typ I und III Sensoren

Anzahl der digitalen Ausgänge

8

Typ der digitalen Ausgänge

High-side mit 10 k Pulldown-Widerstand, kurzschlussfest (interne Temperaturabschaltung), Potentialtrennung System/digitale Ausgänge

Maximale Strombelastung der Ausgänge

Pro Ausgang: 500 mA @ 24 V DC (ohmsche Last!), Summe über alle Ausgänge: max. 2 A @ 24 V DC (ohmsche Last)

Anzahl der analogen Eingänge

8

Typ der analogen Eingänge

0 …​ 10 V DC, single-ended, 16 Bit mit piControl, 21 Bit als Rohwert, per Software zuschaltbare Stromquelle 2,5 mA

Anzahl der analogen Ausgänge

2

Typ der analogen Ausgänge

0 …​ 10 V, kurzschlussfest, Schutz gegen Rückspeisung, 8-bit-Auflösung, 1 % Genauigkeit

Maximale Strombelastung der analogen Ausgänge

10 mA (10 V DC @ 1 k)

Softwareanbindung

Über GPIOs sowie Prozessabbild

EMV-Störaussendung

Gemäß EN 61000-6-4

EMV-Störfestigkeit

Gemäß EN 61000-6-2

Pufferzeit RTC

Min. 24 h

Optische Anzeige

3 Status LEDs (2-farbig), davon 2 LEDs frei programmierbar

Konformität

CE, RoHS, REACH, UKCA