Herunterladen Inhalt Inhalt Diese Seite drucken

Modbus-Schnittstelle; Eia-Rs-485 Standard; Codierung Und Adressierung - Camille Bauer SINEAX VC604s Betriebsanleitung

Inhaltsverzeichnis

Werbung

6. Modbus-Schnittstelle

6.1 EIA-RS-485 Standard

Der EIR-RS-485 Standard defi niert die physikalische Schicht
der Modbus-Schnittstelle.
Codierung
Die Daten werden in serieller Form über den 2-Draht Bus
übertragen. Die Information wird im NRZ-Code als Differenz-
signal codiert. Die positive Polarität signalisiert eine logische
1, die negative Polarität signalisiert die logische 0.
Anschlüsse
Als Buskabel wird die Verwendung eines geschirmten, ver-
drillten, 2-adrigen Kabels empfohlen. Die Schirmung dient
der Verbesserung der elektromagnetischen Verträglichkeit
(EMV). Die Bezeichnung der Leiter A und B ist je nach Infor-
mationsquelle widersprüchlich.
Der Potentialunterschied aller Busteilnehmer darf ± 7V nicht
überschreiten. Es wird deshalb die Verwendung des Schirms
oder eines dritten Leiters (ref line) zur Schaffung des Poten-
tialausgleiches empfohlen.
+ line
– line
ref line
Topologie
Die beiden Enden des Buska-
bels müssen jeweils mit einem
Leitungsabschluss versehen
werden. In Ergänzung zum
Leitungsabschlusswiderstandes
RT des EIA-RS-485-Standards
muss zusätzlich ein Widerstand
RU (Pullup) gegen die Versor-
gungsspannung und ein Widerstand RD (Pulldown) gegen
das Bezugspotential geschaltet werden. Mit diesen beiden
Widerständen wird ein defi niertes Ruhepotential (Idle) auf
der Leitung sichergestellt, wenn kein Teilnehmer sendet.
Slave
Slave
3
4
Master
Slave
Slave
1
2
Slave
3
Slave
Master
2
Slave
1
10
+5V
390
RS-485 A/P +
220
RS-485 B/N –
390
ref line
0 V
Slave
5
OK
NO
Betriebsanleitung VC604s Bd
Systemanforderungen
Kabel:
verdrillte 2-Drahtleitung, Wellenwider-
stand 100 bis 130 Ω, min. 0.22mm
(24AWG)
Leitungslänge:
maximal 1'200m, abhängig von der
Übertragungsgeschwindigkeit
Teilnehmer:
maximal 32 pro Segment
Geschwindigkeit: 9'600, 14'400, 19'200, 38'400, 56'000,
57'600, 115'200 Baud
Mode:
11 Bit-Format - 2 Stoppbit ohne Parität
oder 1 Stoppbit mit gerader/ungerader
Parität

6.2 Codierung und Adressierung

Adressierung
Im Telegramm sind alle Datenadressen auf Null bezogen.
Das erste Datenelement wird immer über die Adresse 0
angesprochen. Zum Beispiel wird die Coil, die im Gerät als
„Coil 1" bekannt ist, im Telegramm als „Coil 0" angesprochen.
Die Coil 127 wird als 0x007E adressiert.
Das Holding-Register 40001 wird im Telegramm als Register
0 adressiert. Der Funktionscode des Telegramms sagt bereits,
dass es sich um ein „Holding-Register" handelt. Folglich ist
der „4XXXX" Hinweis implizit.
Das Holding-Register 40108 wird als 0x006B (107 dezimal)
adressiert.
Serialisierung
Die Spezifi kation defi niert die Telegramme als Bytefolgen.
Für die korrekte Serialisierung der Bytes (MSB- oder LSB-
First) ist der entsprechende Physical Layer (RS485, Ethernet)
verantwortlich. Die RS485 (UART, COM) übermittelt das
„Least Signifi cant Bit" zuerst (LSB First) und fügt die Syn-
chronisations- und Sicherungsbits hinzu (Startbit, Paritätsbit
und Stoppbit).
Start
1
2
3
4
Bits
Bits werden innerhalb eines Bytes konventionell mit dem MSB
(Bit 7) ganz links und dem LSB (Bit 0) ganz rechts dargestellt
(0101'1010 = 0x5A = 90). Ein Beispiel zur Abfrage der Coils
20 bis 40 des Slaves 17.
Byte
Anfrage
0
Slave-Adresse
1
Funktions-Code
2
Startadresse
3
19 = Coil 20
4
Anzahl
5
20...40 = 21
Die Startadresse in der Anfrage plus die Bitposition im Ant-
wortbyte 0 entspricht der Coiladresse. Angefangene Bytes
werden mit Nullen aufgefüllt. Coil 27...20 = 0xCD = 11001101b
→ Coil20 = ON, Coil21 = OFF, Coil22 = ON, usw.
5
6
7
8
Par Stop
Antwort
0x11
Slave-Adresse
0x11
0x01
Funktions-Code
0x01
0x00
Byte Count
0x03
0x13
Byte 0
0xCD
0x00
Byte 1
0x6B
0x15
Byte 2
0x01
Camille Bauer
2

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis