Verständnissfrage MB Registeradressen

Für Themen rund um das Prozessabbild des RevPi Core
Post Reply
User avatar
Ingo
Posts: 266
Joined: 10 Nov 2016, 21:56
Answers: 1
Location: Luth.Wittenberg

Verständnissfrage MB Registeradressen

Post by Ingo »

Hallo,

Wieder einmal beschäftigt mich der Modbus Master. Da ich nicht mit einem Master auskomme was die Outputs angeht (BOOL) habe ich ein zweiten Master hinzugefügt, dieser soll die Daten an den gleichen Slave übergeben. dazu hat dieser die gleiche IP und den selben Port wie der erste Master. Sollte ja so Möglich sein.
Nun habe mich mir Registeradressen genommen die ich frei auf dem Slave definieren kann, input 16001 da ihr ja mit 1 anfangt wo alle anderen mit 0 anfangen. und output 17001. im Slave habe ich die die Startadressen 16000 in und 17000 output eingetragen.
Wenn ich jetzt die beiden Testprogramme qModMaster und ModRSim2 benutze kommen die Daten auch an den jeweiligen Adressen an sowie vom Master als auch vom Slave.
Setze ich aber das ganze dann in die Realität um kommen die daten nicht an dem echten Slave an und werden auch nicht am Master angezeigt.
Beim ersten Master Funktioniert es.
Nun habe ich weiter rumgespielt. habe ein Testprogramm erstellt wo ich alle Modbus Variablen enthalten habe die ich per hand setzen kann.
Dann habe ich die Registeradressen beim Master 2 einmal auf die geändert die auch im Master 1 enthalten sind.
Dabei ist mir aufgefallen das, wenn ich eine Variable im Master 2 schreibe er eine Variable in Master 1 auf 1 setze aber die in Master 2 nicht, das dürft soch eigendlich nicht passieren da es ja unterschiedliche Variablen sind. Oder sehe ich das Falsch?
dazu stelle ich euch mal die rsc mit dazu.
Ich weiss leider nicht mehr weiter welche Startadresse der Master 2 verwendet da es ja so nicht geht. Aber nehme ich die startadressen vom Master 1 geht es aber leider setzt er mir die falschen Variablen.
_config.zip
(8.83 KiB) Downloaded 486 times
Amar
KUNBUS
Posts: 157
Joined: 15 Jul 2019, 12:58
Answers: 4

Re: Verständnissfrage MB Registeradressen

Post by Amar »

Hello Ingo,
Multiple Modbus master instances cannot exchange data with the same slave.In your case the Modbus Master input/output register size needs to be increased.
I have created a definition of Modbus Master device called "ModbusTCP Master 150" in file ModbusTCPMaster_20200904_1_1.rap.
This new virtual Modbus device has 150 input/output words and 152 input/output bits and 64 max allowable actions.This shall be adequate for your project and you will need one "ModbusTCP Master 150" in your piCtory configuration.

Please follow the steps below.
1) Create a backup of file catalog.json from path /var/www/pictory/resources/data/catalog.json
This file is basically where definitions of devices in piCtory are listed.

2) Replace catalog.json under path /var/www/pictory/resources/data/ with the one provided in attached zip file.

3) Add the new file ModbusTCPMaster_20200904_1_1.rap under path /var/www/pictory/resources/data/rap/
This file is also provided in the attached zip file and is the RAP file which defines the new Modbus Master mentioned previously.

3) Clear browser cache and log on to piCtory.

4) The new device "ModbusTCP Master 150" shall appear in piCtory device catalog.
Use this device and create the new config.rsc with single instance of this device.

5) Test the Modbus Device and let me know if there are any further issues.

Attachment:
ModbusTCP Master 150.zip
(2.26 KiB) Downloaded 476 times
Regards, Amar
KUNBUS
Post Reply