Modbus RTU Master Code

Für Themen rund um logi.RTS und logi.CAD 3
Post Reply
Paul Unger
Posts: 7
Joined: 31 Jul 2019, 10:18

Modbus RTU Master Code

Post by Paul Unger »

Hallo zusammen,
ich habe einen RevPi Connect und das Relaisboard EX9065H von Expert um damit erstmal binäre Signale an den Outputs zu schalten.
Der 9065H ist MODBUS-fähig. Beide Geräte sind über die RS485-Schnittstelle verbunden.
Als virtuelles Gerät habe ich den ModbusRTUMaster_20180122 in Pictory gewählt.

Ein mögliches gewünschtes Signal soll folgendermaßen aussehen: 01 05 0001 FF00 (Slave-Adresse, Funktion, Channel 1, high)
Auszug_EX9065H_Datenblatt.png
Auszug_EX9065H_Datenblatt.png (88.98 KiB) Viewed 14596 times
Zuerst habe ich es über Pictory versucht, welches aber bei der Einstellung 05 (für die Funktion) nur 'Single Coils' zulässt und somit unbrauchbar für meinen Zweck ist, da eben speziell die oben genannte Bit-Folge gesendet werden soll.

Ich verwende LogiCAD 3 für die erweiterte Steuerung des RevPi Connect. Hier finde ich eine MB_InitTCP. Gibt es so eine Funktion auch für den Modbus RTU Master?

Grüße
Paul Unger
Posts: 7
Joined: 31 Jul 2019, 10:18

Re: Modbus RTU Master Code

Post by Paul Unger »

Ist es mit LogiCAD3 möglich, die verschiedenen Channel des Expert-Relaisboards (0 - 4) anzusprechen? Ohne vorher in Pictory den ModbusRTU-Master neu zu konfigurieren?
TEK0000.JPG
TEK0000.JPG (104.21 KiB) Viewed 14544 times
Zu sehen ist (grün): Slave-Adresse = 4 (8bit), Function Code = 5 (8bit), Register Adress = 3 (16bit), Channel-Value = FF00h (16bit), CRC-Datenfeld (16bit).
Zu sehen ist (gelb): Slave-Adresse = 4 (8bit), Function Code = 5 (8bit), Register Adress = 3 (16bit), Channel-Value = 0000h (16bit), CRC-Datenfeld (16bit).

Wie setze ich in LogiCAD3 die Bits des Coils auf FF00h (wie im vorherigen Bild grün zu sehen)?
Paul Unger
Posts: 7
Joined: 31 Jul 2019, 10:18

Re: Modbus RTU Master Code

Post by Paul Unger »

Ich habe bemerkt, dass wenn ich 'piTest -w Output_Bit_1,1' eintippe, der Coil auf FF00h springt also dem grünen Signal entspricht und high bleibt, solange ich es wieder mit 'piTest -w Output_Bit_1,0' rücksetze.

Wenn ich allerdings in LogiCAD3 Output_Bit_1 := 0; bzw Output_Bit_1 := 1; toggeln lasse, ändert dies nichts am Signal.
Kann mir jemand dieses Verhalten erklären?
Eduard
KUNBUS
Posts: 209
Joined: 18 Jun 2018, 16:16

Re: Modbus RTU Master Code

Post by Eduard »

Siehe hier.
Post Reply