TOP
I/O-Erweiterung IO/5640

Die IO/5640 bringt analoge Daten in die digitale Welt!

Um die Anforderungen zukünftiger digitaler Geschäftsprozesse zu erfüllen haben wir die IO/5640 entwickelt. Damit lassen sich IGW/9xx-Gateways direkt mit Prozess-Ein- und Ausgängen verbinden.

So sind Steuerungs- und Datenerfassungsaufgaben mit einem IGW/9xx, z. B. im Bereich Fernwirktechnik, Condition Monitoring oder Predictive Maintenance realisierbar.

Dafür stellt eine IO/5640 8 analoge Eingänge (je 4x 4-20 mA sowie 0-10 V), 6 digitale Ausgänge und 5 digitale Eingänge zur Verfügung.

IO/5640 und IGW/9xx werden über RS485 miteinander verbunden und verwenden das Modbus-RTU-Protokoll zur Kommunikation, wobei die IO/5640 als Modbus-Slave und das Gateway als Modbus-Master arbeitet. Insgesamt können bis zu 15 IO/5640 als Kaskade an einem einzelnen IGW/9xx betrieben werden.

Selbstverständlich kann die IO/5640 auch mit einem (Industrial) PC betrieben werden, z. B. um analoge Daten einem MES- oder ERP-System zur Verfügung zu stellen.

Erweiterbarkeit per ACF

Der Funktionsumfang der IO/5640 kann durch sog. Application-specific Code Functions (ACF) erweitert und an individuelle Anforderungen angepasst werden.

Die ACF sind spezielle Software-Komponenten, die z. B. die Sensordatenfusion und - vorverarbeitung, Hochgeschwindigkeits-Zeitmessungen und vieles mehr ermöglichen.

Anwendungsbeispiele

Beispiel Industrie 4.0-Sensorsystem

Die IO/5640 arbeitet als Signalerfassungseinheit für verschiedene analoge Sensorelemente. Die digitalisierten Daten werden von einem IGW/9xx-Gateway per Modbus-RTU ausgelesen, in die jeweils erforderlichen anwendungsbezogenen Datenformate (z. B. in CSV, JSON, XML) umgewandelt und bei Bedarf durch entsprechende Metadaten ergänzt.

Beispiel Industrie 4.0-Sensorsystem Bild vergrößern

Abbildung 1: Beispiel Industrie 4.0-Sensorsystem

Auch Sensordatenfusionen sind möglich. Mit Hilfe verschiedener Protokolle lassen sich die CSV/JSON/XML-Daten dann an eine Cloud oder andere IT-Systeme (z. B. MES, ERP, CRM- SQL-Datenbank) bzw. Automatisierungsbaugruppen weiterleiten.

Beispiel PC-basiertes DAQ-System

Ein PC-basiertes Messdatenerfassungssystem (DAQ-System, DAQ = Data Acquisition) dient zur Erfassung physikalischer Prozessparameter (z. B. Strom, Spannung, Temperatur). Die IO/5640-Baugruppe übernimmt dabei die Signalkonditionierung und A/D-Wandlung.

Beispiel PC-basiertes DAQ-System Bild vergrößern

Abbildung 2: Beispiel PC-basiertes DAQ-System

Vom PC aus werden die digitalisierten Daten per Modbus-RTU von der DAQ-Software ausgelesen (ein Modbus-Treiber gehört in der Regel zum Lieferumfang guter DAQ-Systeme) und weiterverarbeitet. Zur ortsunabhängigen Visualisierung (z. B. Smartphone-App, SCADA) leitetet der PC die Daten bei Bedarf an eine Cloud weiter.

IO/5640 Features

  • 4x Analog-Eingang 4-20 mA
  • 4x Analog-Eingang 0-10 V
  • 5x Digital-Eingang
  • 6x Digital-Ausgang
  • 1x RS485 (für Modbus-RTU)
  • Betrieb als Modbus-RTU-Slave
  • 5x Ereigniszähler
  • Erweiterbarkeit per ACF
  • 24 VDC Spannungsversorgung
  • <1 W Stromaufnahme
  • Hutschienenmontage

Geeignet für

IGW/922

IGW/925

IGW/935

IGW/936-L

  • (Industrial) PCs

Erweiterbarkeit

Mit Hilfe spezieller Application-specific Code Functions (ACF) sind Sensordatenfusionen und zeitkritische Datenvorverarbeitungen direkt in der IO/5640 möglich. Das Ergebnis wird in optionalen Modbus-Registern abgelegt.

So können z. B. über jeweils zwei binäre Sensoren zwei voneinander unabhängige 16-bit Zeitgeber (Timer) gestartet und gestoppt werden, um die Zeitspanne der Wegstrecke eines linearen Antriebs mit einer Auflösung von 1 Millisekunde auszumessen.

Um z. B. die Zeitspannen t1 und t2 der Wegstrecken x1 > x2 und x2 > x1 für die Bewegungen eines druckluftgetriebenen Antriebsschlittens Millisekunden-genau auszumessen, werden die Ausgänge der binären Näherungssensoren (Endschalter 1 und 2) mit zwei IO/5640-Eingängen verbunden. Ein Endschalter startet jeweils den Timer, der andere stoppt die Zeitmessung. Per Modbus-RTU sind die Werte für t1 und t2 auslesbar.

Messung der Zeitspanne der Wegstrecke eines linearen Antriebs Bild vergrößern

Abbildung 3: Messung der Zeitspanne der Wegstrecke eines linearen Antriebs

IO/5640-DS für Data Science-Anwendungen

Die IO/5640-DS ist eine spezielle Variante der IO/5640 (siehe Produktvarianten und Zubehör). Statt des Modbus-RTU-Protokolls per RS485 bietet die IO/5640-DS einen schnellen Data Stream Mode zur analogen Datenerfassung mit 8 Kanälen für Data Science-Anwendungen.

Die RS485-Schnittstelle wird dabei "Point-to-Point" betrieben, um Datagramme mit Messdaten entweder direkt zu einem Edge-Gateway (z. B. ein IGW/9xx-Gateway) oder einem PC-System zu versenden.

RS485 Point-to-Point mit Data Stream Bild vergrößern

Abbildung 4: RS485 Point-to-Point mit Data Stream

Die 8 analogen Eingänge werden zu einem konstanten Datenstrom zusammengefasst und per RS485 als Datagramm übertragen. Kanalanzahl, Abtastintervall (bis zu 434 Mikrosekunden bzw. 2,3 kHz) bei 12 Bit-ADC-Auflösung sowie Kommunikationsblockgröße lassen sich individuell einstellen. Die maximal mögliche Abtastrate hängt von der jeweiligen Kanalanzahl ab (siehe nachfolgende Tabelle).

Anzahl der Kanäle Max. Abtastfrequenz Abtastintervall
1 2.300 Hz 434 µsec
2 1.645 Hz 607 µsec
3 1.280 Hz 781 µsec
4 1.047 Hz 955 µsec
5 886 Hz 1,12 msec
6 768 Hz 1,3 msec
7 677 Hz 1,47 msec
8 606 Hz 1,65 msec
Abtastraten in Abhängikeit der Kanalanzahl

Der Datenstrom einer IO/5640-DS besteht aus einzelnen Datagrammen, die nach jeder Messung per RS485 an das Edge-Gateway oder den PC übermittelt werden. Jeder Kanal hat aus Effizienzgründen einen festen Platz im Datagramm.

Übertragen wird der Kanal im Datagramm nur, wenn er bei der Initialisierung (siehe Abb. 5) ausgewählt wurde. Daher hat ein Datagramm eine variable Länge, die von der Kanalauswahl abhängt.

Für jeden ausgewählten Kanal werden 2 Bytes als Unsigned Int16 (16 Bit-Integer) im Little Endian Mode übertragen. Jedes Datagramm ist durch ein CRC8 als Prüfsumme abgesichert. Die Umrechnung der 16 Bit-Integer-Messwerte für Spannung und Strom erfolgt mit Hilfe der folgenden Gleichungen:

Spannungsmessungen: U(x) = x * 0,0025 V

Strommessungen: I(x) = x * (3125/620000) mA

Das Verhalten der IO/5640-DS wird von einer State Machine (Zustandsmaschine) gesteuert. Durch Einschalten der Versorgungsspannung entsteht ein Power-on-Reset, der die IO/5640-DS in den initialen Ausgangszustand IDLE versetzt. In diesem Zustand wird auf ein Configuration Datagram (Konfigurations-Datagramm) gewartet, das von einem Edge-Gateway oder PC per RS485-Point-to-Point-Verbindung an die IO/5640-DS geschickt wird.

Ein gültiges Konfigurations-Datagramm versetzt die IO/5640-DS vom IDLE- in den MEASURING-Zustand (Zustandsübergang Start). Die jeweils gewünschten Kanäle sowie die Abtastfrequenz werden in einem Konfigurations-Datagramm als Parameter übertragen.

Im MEASURING-Zustand sendet die IO/5640-DS nach jeder Messung ein Messdaten-Datagramm an das Edge-Gateway bzw. den PC. Bei einer Abtastfrequenz von bspw. 500 Hz, versendet die IO/5640-DS alle 2 Millisekunden ein Datagramm mit den aktuellen Messwerten per RS485.

Schema der State Machine in der IO/5640-DS

Abbildung 5: Schema der State Machine in der IO/5640-DS

Um vom MEASURING-Zustand wieder in den IDLE-Ausgangszustand zu wechseln und somit die Übertragung von weiteren Messdaten-Datagrammen zu beenden, muss ein Stop Datagram an die IO/5640-DS gesendet werden.

Python-Bibliothek PyDSlog

Als Zubehör für die IO/5640-DS steht mit PyDSlog eine Open-Source-Python-Bibliothek zur Aufzeichnung beliebiger Sensormesswerte in CSV-Dateien zur Verfügung. Diese Bibliothek ermöglicht die sehr schnelle Sensorrohdatenerfassung über die analogen Eingänge.

Die CSV-Daten lassen sich zum einen für explorative oder deskriptive Datenanalysen und zum anderen für das Training von Machine Learning-Algorithmen zur Mustererkennung zu nutzen. Jede einzelne Messung wird als Zahlenwert in einem Feature Vector (Merkmalsvektor) gespeichert. Ein solcher Vektor (Array aus Zahlenwerten) repräsentiert die Messwerte der gesamten IO/5640-DS-Eingangssensorik zu einem bestimmten Zeitpunkt.

Mit anderen Worten: Der einzelne Merkmalsvektor beschreibt ein zeitpunktspezifisches Zustandsmuster der jeweiligen Sensormesswerte. Die CSV-Datei selbst bildet ein Datenset aus Merkmalsvektoren, die zu unterschiedlichen Zeitpunkten erfasst wurden.

Beispiel einer CSV-Datei mit Messwerten

Abbildung 6: Beispiel einer CSV-Datei mit Messwerten

Neben den Daten der acht analogen Kanäle ermöglicht PyDSlog auch das Hinzufügen weiterer Daten, wie bspw. einen Zeitstempel für Time Series-CSV-Dateien und ein Machine Learning-Label-Feld, um das Zustandsmuster eines Merkmalsvektor zu klassifizieren.

Visualisierung der Messdaten Bild vergrößern

Abbildung 7: Visualisierung der Messdaten

Per PyDSlog erfasste Sensormessdaten lassen sich direkt mit anderen Python-Bibliotheken weiterverarbeiten. So kann eine PyDSlog-CSV-Datei ohne weitere Konvertierungs- oder Bearbeitungsschritte in ein NumPy-Array oder einen Pandas-DataFrame eingelesen und z. B. mit Hilfe von Matplotlib visualisiert werden.

Anschlussschemata

Die für die Verdrahtung verwendeten Kabel müssen folgende Spezifikationen einhalten:

  • Kabelquerschnitt zwischen 0,08 und 1 mm2 (AWG28 bis AWG18),
    empfohlen: 0,2 bis 1 mm2 (mit Aderendhülse 0,34 mm2)
  • Abisolierlänge 7 mm

Der für die Klemmleiste verwendete Schraubendreher darf max. 2,5 mm breit sein.

Eigenschaften Analog Input 0 - 10 V

Parameter Eigenschaft / Wert
Anzahl der Eingänge 4
Eingangsspannung max. ±17 V
Signalspannung 0 .. 10 V
Eingangswiderstand typ. 1 MΩ
Auflösung 12 Bit
Wandlungszeit typ. 10 ms
Messfehler bei 25 C < ±0,2% vom Skalenendwert
Temperaturkoeffizient 0 .. 70 C < ±0,0015%/K vom Skalenendwert

Modbus-Datenformat Analog Input 0 - 10 V

Dieses Datenformat gilt nur für die IO/5640 im Modbus-Betrieb.

Eingangsspannung 0 - 10 V Messwert Hex
< 0,0 0x7FFF
0,0 0x0000
2,5 0x2000
5,0 0x4000
7,5 0x6000
10,0 0x7FF8
> 10,0 0x7FF9

Data Stream-Datenformat Analog Input 0 - 10 V

Dieses Datenformat gilt nur für die IO/5640-DS im Data Stream-Betrieb.

Für jeden ausgewählten Kanal werden 2 Bytes als Unsigned Int16 (16 Bit-Integer) im Little Endian Mode mit 12 Bit-ADC-Auflösung übertragen.

Umrechnung der 16 Bit-Integer-Messwerte: U(x) = x * 0,0025 V.

Eigenschaften Analog Input 0 - 20 mA

Parameter Eigenschaft / Wert
Anzahl der Eingänge 4
Eingangsspannung ±10 V
Signalstrom typ. 0 .. 20 mA
Eingangswiderstand 242 Ω
Auflösung 12 Bit
Wandlungszeit typ. 10 ms
Messfehler bei 25 C < ±0,2% vom Skalenendwert
Temperaturkoeffizient 0 .. 70 C < ±0,0025%/K vom Skalenendwert

Modbus-Datenformat Analog Input 0 - 20 mA

Dieses Datenformat gilt nur für die IO/5640 im Modbus-Betrieb.

Eingangsstrom 0 - 20 mA Messwert Hex
< 0,0 0x7FFF
0,0 0x0000
5,0 0x2000
10,0 0x4000
15,0 0x6000
20,0 0x7FF8
> 20,0 0x7FF9

Data Stream-Datenformat Analog Input 0 - 20 mA

Dieses Datenformat gilt nur für die IO/5640-DS im Data Stream-Betrieb.

Für jeden ausgewählten Kanal werden 2 Bytes als Unsigned Int16 (16 Bit-Integer) im Little Endian Mode mit 12 Bit-ADC-Auflösung übertragen.

Umrechnung der 16 Bit-Integer-Messwerte: I(x) = x * (3125/620000) mA.

Anschlussschema Analog In

Alle Signale beziehen sich auf AIGND.

Anschlussschema Analog Input Bild vergrößern

Abbildung 8: Anschlussschema Analog Input

Eigenschaften Digital Input

Parameter Eigenschaft / Wert
Anzahl der Eingänge 5
Eingangsspannung max. ±50 V
H-Pegel 18 .. 30 V
L-Pegel 0 .. 8 V
Eingangswiderstand typ. 10 kΩ
Eingangsstrom bei 24 V typ. 2,3 mA
Eingangsfrequenz max. 1 kHz

Anschlussschema Digital In

Der digitale Input des IO/5640 kann als high side switch (Abb. 5) oder als low side switch (Abb. 6) beschaltet werden.

Anschlussschema high side switch (PNP) Bild vergrößern

Abbildung 9: Anschlussschema high side switch (PNP)

Anschlussschema low side switch (NPN) Bild vergrößern

Abbildung 10: Anschlussschema low side switch (NPN)

Eigenschaften Digital Output

Parameter Eigenschaft / Wert
Anzahl der Ausgänge 6
Betriebsspannung (Feldseite) 24 VDC ±10%
Stromaufnahme (Feldseite) 15 mA (Modul + Last)
Lastart ohmsch, induktiv, kapazitiv
Schaltfrequenz max. 3 kHz
Ausgangsstrom max. 0,5 A
Kurzschlussstrom typ. 1,1 A
ON Widerstand@0,5 A 150 .. 320 mΩ
Absorbierbare Energie W max. 1 J; Lmax = 2 × Wmax / I2

Anschlussschema Digital Out

 

Anschlussschema Digital Output Bild vergrößern

Abbildung 11: Anschlussschema Digital Output

Potentialtrennung

 

Potentialtrennung Bild vergrößern

Abbildung 12: Potentialtrennung

Modbus-Eigenschaften

Die IO/5640 wird als Modbus-RTU-Slave via RS485 (halbduplex) mit dem Gateway/PC verbunden. Die Slave-Adresse wird über den Drehschalter an der Frontseite eingestellt. Adresse 15 ist mit Terminierung. Adresse 16 (Position 0) ist nur für Servicezwecke.

Übertragungsparameter Definitionen Modbus Function Codes
Baudrate: 19.200 Baud
Parität: "EVEN"
Stopbit: 1
Timeout: 2000 µs
"S" = Modbus-Slave (IO/5640)
"M" = Modbus-Master
"FC" = Function Code
FC1: Read Coils (0x01)
FC2: Read Discrete Inputs (0x02)
FC3: Read Holding Registers (0x03)
FC5: Write Single Coil (0x05)
FC6: Write Single Registers (0x06)

Datentypen und Kodierung

Datentyp Bits Wertebereich Kodierung/Byte-Reihenfolge
UINT16 16 0 .. 216-1 [DB1][DB0] (big endian) - High-Byte zuerst
SINT16 16 -32768 .. 32767 [DB1][DB0] (big endian) - High-Byte zuerst
UINT8 8 0 .. 255

Modbus-Registersatz - Digital Inputs

IO Richtung Function Register [dec] Datentyp
DI1+/- S > M
S > M
S > M
FC2
FC3
FC3
0
8 [BIT0]
9
UINT8
UINT16
UINT16
DI2+/- S > M
S > M
S > M
FC2
FC3
FC3
1
8 [BIT1]
10
UINT8
UINT16
UINT16
DI3+/- S > M
S > M
S > M
FC2
FC3
FC3
2
8 [BIT2]
11
UINT8
UINT16
UINT16
DI4+/- S > M
S > M
S > M
FC2
FC3
FC3
3
8 [BIT3]
12
UINT8
UINT16
UINT16
DI5+/- S > M
S > M
S > M
FC2
FC3
FC3
4
8 [BIT4]
13
UINT8
UINT16
UINT16

Modbus-Registersatz - Digital Outputs

IO Richtung Function Register [dec] Datentyp
DO1 M > S
S > M
M > S
S > M
FC5
FC1
FC6
FC3
0
0
14 [BIT0]
14 [BIT0]
UINT8
UINT8
UINT16
UINT16
DO2 M > S
S > M
M > S
S > M
FC5
FC1
FC6
FC3
1
1
14 [BIT1]
14 [BIT1]
UINT8
UINT8
UINT16
UINT16
DO3 M > S
S > M
M > S
S > M
FC5
FC1
FC6
FC3
2
2
14 [BIT2]
14 [BIT2]
UINT8
UINT8
UINT16
UINT16
DO4 M > S
S > M
M > S
S > M
FC5
FC1
FC6
FC3
3
3
14 [BIT3]
14 [BIT3]
UINT8
UINT8
UINT16
UINT16
DO5 M > S
S > M
M > S
S > M
FC5
FC1
FC6
FC3
4
4
14 [BIT4]
14 [BIT4]
UINT8
UINT8
UINT16
UINT16
DO6 M > S
S > M
M > S
S > M
FC5
FC1
FC6
FC3
5
5
14 [BIT5]
14 [BIT5]
UINT8
UINT8
UINT16
UINT16
DO1 .. 6 S > M
 
FC3
 
15 [BIT0]
15 [BIT1]
UINT16
 

Modbus-Registersatz - Analog Inputs

IO Richtung Function Register [dec] Datentyp
AI1U S > M FC3 16 SINT16
AI2U S > M FC3 17 SINT16
AI3U S > M FC3 18 SINT16
AI4U S > M FC3 19 SINT16
AI1I S > M FC3 20 SINT16
AI2I S > M FC3 21 SINT16
AI3I S > M FC3 22 SINT16
AI4I S > M FC3 23 SINT16

Modbus-Registersatz - Zusatzfunktionen

IO Richtung Function Register [dec] Datentyp
LED_S1 M > S
S > M
FC6
FC3
25
25
UINT16
UINT16
LED_S2 M > S
S > M
FC6
FC3
26
26
UINT16
UINT16
DT1 S > M FC3 54 UINT16
DT2 S > M FC3 55 UINT16
SW_SVN S > M FC3 0 UINT16
SW_BUILD S > M FC3 1 UINT16
SW_VERSION S > M FC3 2 UINT16
DEVICE_NAME S > M
S > M
S > M
S > M
FC3
FC3
FC3
FC3
3
4
5
6
UINT16
UINT16
UINT16
UINT16
WATCHDOG M > S
S > M
FC6
FC3
7
7
UINT16
UINT16

Produktvarianten & Zubehör

Bezeichnung Beschreibung
IO/5640 6 digitale Ausgänge, 5 digitale und 8 analoge Eingänge, Betrieb als Modbus-RTU-Slave
IO/5640-DS 8 analoge Eingänge zur Datenerfassung im Data Stream Mode, PyDSlog-Bibliothek zur Datenaufzeichnung in CSV-Dateien
USB-Adapter RS485-auf-USB-Adapter mit 2 m Kabellänge zur Verbindung der IO/5640(-DS) mit einem PC

SSV Software Systems GmbH

Dünenweg 5
30419 Hannover

Fon: +49(0)511 / 40 000-0
Fax: +49(0)511 / 40 000-40

sales@ssv-embedded.de

 

Impressum    ·    Datenschutz    ·    AGB

© 2019 SSV Software Systems GmbH. Alle Rechte vorbehalten.

ISO 9001:2015