Discussion forum about Comet system products
You are not logged in.
Hi,
I have a P8541 temperature probe that I am trying to poll using the Modbus protocol. Using the modpoll command from my command prompt, I issue the following command, with the results as follows:
Y:\modpoll.2.9[1]\win32>modpoll -m enc -c 8 -t 4 -r 40000 -p 502 172.16.1.90
modpoll 2.9 - FieldTalk(tm) Modbus(R) Polling Utility
Copyright (c) 2002-2010 proconX Pty Ltd
Visit http://www.modbusdriver.com for Modbus libraries and tools.
Protocol configuration: Encapsulated RTU over TCP
Slave configuration...: Address = 1, start reference = 40000, count = 8
Communication.........: 172.16.1.90, port 502, t/o 1.00 s
Data type.............: 16-bit register, output (holding) register table
Can't reach server/slave! Check TCP/IP and firewall settings.
Y:\modpoll.2.9[1]\win32>ping 172.16.1.90
Pinging 172.16.1.90 with 32 bytes of data:
Reply from 172.16.1.90: bytes=32 time<1ms TTL=63
Reply from 172.16.1.90: bytes=32 time<1ms TTL=63
Reply from 172.16.1.90: bytes=32 time<1ms TTL=63
Reply from 172.16.1.90: bytes=32 time<1ms TTL=63
Ping statistics for 172.16.1.90:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
Y:\modpoll.2.9[1]\win32>
Also, as you can see above, I am able to ping the device, so I know the connectivity is there. Any idea on why the modbus polling can't reach the device?
Thanks,
Robert
Offline
Hi,
I don't know what is wrong. Modbus values reading inside T-Senosr software is working right? Before Modbus protocol testing please disconnect T-Sensor software (because device has one socket Modbus server).
At your log is one thing wrong. Device uses Modbus TCP not a encapsulated RTU mode!
John
Offline
I did get it working using the tcp instead of the enc command. I think that the user manual for this device might need to be updated because in section 8.2, it says that the device runs with the Modbus RTU protocol, when in reality it runs with the Modbus TCP protocol.
Thanks for the help.
Robert
Offline
Yes, you have right. It is a mistake inside the user manual. Next manual version fix this issue.
John
Offline
Hello guys,
I have T7418 and T3418 rH&T transmiters around 30 devices.
And I'm using an Indusoft Web Studio SCADA to monitor temperature & humidity from them.
Tell me please which function is more appropriate to read the Serial number of device and, read & write Address of device?
What variables the Holding Registers group contains?
Thanks for help,
Mihail
Offline
Hello,
see devices instruction manual, page 7. Communication protocol description is available here https://www.cometsystem.com/userfiles/d … sTxxxx.pdf
Offline
Hi,
In the addition to answer from guys from the support.
- Serial number of your device you can read via two Modbus registers (4149 and 4150).
- Sensor is shipped with device address 01 as default. To be able use multiple devices at one RS485 bus you need to change address to be unique for each device. Recommanded way it to use TSensor software for that job. Additional options you find at user manual.
- Modbus addresses for particular measured quantities (temperature, relative humidity) you find at user manual as well.
Jan
Offline
Thank you guys,
03 (0x03): Reading of 16-bit registers (Read Holding Registers). Function serves for reading of values from device.
04 (0x04): Reading 16-bit input gates (Read Input Registers). This function is also possible to use for reading values from device, syntax is the same as with function 03 (0x03): Reading of 16-bit registers.
Using function 04 to read serial numbers Hi & Lo from device, my request was: 4X:4149 for Tag (SerialNumber_Hi) and 4X:4150 for Tag (SerialNumber_Lo) in decimal format,
I received two values: SerialNumber_Hi=8709 and SerialNumber_Lo=4758.
The real Serial Number for this device is: 12962205
Explain me please how can I concatenate or convert those two Received response from device, in order to have the real SerialNumber of the device?
Thank you in advance.
Offline
HonzaD wrote:
Hi,
In the addition to answer from guys from the support.
- Serial number of your device you can read via two Modbus registers (4149 and 4150).
- Sensor is shipped with device address 01 as default. To be able use multiple devices at one RS485 bus you need to change address to be unique for each device. Recommanded way it to use TSensor software for that job. Additional options you find at user manual.
- Modbus addresses for particular measured quantities (temperature, relative humidity) you find at user manual as well.
Jan
Hi Jan,
I know all about TSensor software.
My scope is to set the devices remotely from my Scada, when the devices change the location. Otherwise it needs to have one dedicated laptop, converter RS485/USB and it is a hard work.
Once a year the devices are sent to calibration, another devices are put in their places. Each location in the Scada Layout has identification by the device address.
thank you for understanding and,
Best regards
Mihail
Offline
Hi Mihail,
Decoding of your serial number is pretty simple:
SerialNumber_Hi=8709DEC = 2205HEX
SerialNumber_Lo=4758DEC = 1296HEX
and finally = "1296" and "2205" is your serial number "12962205".
My colleague will answer your second question soon.
Jan
Offline
All available Modbus RTU device address change possibilities are described in the file
https://www.cometsystem.com/userfiles/d … sTxxxx.pdf
on pages 7 to 11.
Offline
Hi...Modbus can deal with 254 hubs (recollect: 255 is basic for communicates in different organizations, perhapes it is additionally conceivable in Modbus).
At the opposite side a typical rs485 driver can deal with just 32 hubs - for taking care of this issue use repeater after each 31st hub.
pcb fabrication and assembly
Last edited by BrodVictor (28-05-2021 23:53:15)
Offline
Hi BrodVictor,
I am sorry, I don't understand your question.
Jan
Offline