Modbus poll vs temco modbus poll for external devices

my post was about this, sadly. No probs to recognize temco devices (at least new ones like T8). I hoped to integrate 3rd party devices through T3 unit sub-rs485. If I can’t see them or access them, I need to change my way to integrate them into my modbus network.

Thank you anyway for your help.

A small hand sketch will go a long way to helping me help you. See what you can come up with please.

As always, if you’re having troubles connecting things make use of the firmware update system,

T3000 → help → check for updates → update T3000

Update firmware

Show us a few screen shots and I can make better suggestions.

image001.jpg

image007.jpg

OK.
Updated T3000 to the latest and T3-LB to the latest (54.4 / 55)

This T3-LB unit is for test only. Just a 10K temp sensor hooked and a time variable
Hooked a Peacefair Modbus Voltmeter (works in standalone mode with provided prgm and through my own modbus poll prgm and through serial-rs485 with node-red) into RS485 sub (2 stop bit, quite unusual).
11.96V without micro-usb

Tried to access T3000 modbus poll (worked before -except the DST- the firmware update - was 51.0): received a “please config the way of your connection” message instead.

T3-LB modbus poll config question

Tried to modify data (same as a production T3-TB btw who can access built-in modbus poll) and obtained that message:

Unable to change data except baud rate (I use 9600 with 3rd party modbus devices). Stuck there and still unable to access modbus poll for T3-LB

T3-TB doesn’t ask for this and the modbus poll access is allowed

That’s it !

OK, our team will study this and report back shortly.

Maybe this could help:

I tested this problem on two W7 computers (with latest T3000 software): same error

I downloaded T3000 software from your site (may 29 2020 .16) and ran it directly (no update) on a W10 computer (that had never seen T3000 software): NO error.

I updated (1.1.9) this T3000 on the same W10 computer and ran T3000 again (dec 24 2020 .14): same error

So it seems to me that this error is not related to the OS but seems to be related to the latest T3000 firmware.

  • I used software to simulate third-party devices
    N-8-2 and Baudrate is19200 , I connect this devices to T3BB’s RS485 sub port .

I set Both T3BB’s RS485 Subport and Main port to Modbus Master . The result’s is Got timeout error .

If Only set the RS485 subport to Modbus

Master , to read the third-part device data it is OK. ( * Modbus data is forwarded to third-party devices through the T3BB network)

So, if you want to use third-party devices (via modbus) and connect to Temco devices, you just have to configure one of the RS485 ports and just line up Unused ports (because third-party devices don’t complete part of the command line that supports Temco).

Thanks Fance, I did it and I hope that will solve the problem.

But I’m still unable to access modbus poll with the latest T3000 software (previous message).
2 choices for me: wait for a T3000 update or reinstall the orginal T3000 and use it without an update.

I tried.
If I use the latest T3000 software update, the time variable is ok (DST) but if I use the previous T3000 version, the modbus access is OK, but not the time variable…

About the 3rd party access, with the “old” version of T3000, I can access modbus poll but the result is not OK. The network health is +/- ok (timeout), some RX
But when I harvest the modbus device, I can’t poll data (write error) even I respect the parameters that works with other software.

settings that is OK with rs232-rs485 and my modbus poll:

peacefair DC-017 modbus poll L635 OK

I have just uploaded the latest T3000 software and fixed a possible exception message “Please config the way of your connection!” when using the T3000 Modbus Poll.

I have also repeatedly verified just now that T3-BB TB-LB is able to access a third-party device normally by connecting it to a third-party device in the RS485-Sub Port and using the connection shown below. ()

The only thing to note is that RS485-MAIN and RS485-SUB cannot be set to “Modbus Master” at the same time when connecting to third party devices.The implication is that one of them must be set to Unused.

If both ports are set to “Modbus Master”, the T3 Controller will communicate in accordance with the configuration of RS485-Main port, and if you happen to connect the third party device to the SUB port, the communication will not be normal.

Please check again if the configuration information is wrong.

Updated T3000: OK, works as expected.
Connected my modbus device as requested and launched modbus poll: OK
tested the connection: KO, write error, whatever settings

Please Update T3000 again . Version : Jan 6 2021 . 14
Fixed a bug where the T3000 Modbus Poll established a TCP connection with the server and the connection was disconnected by the server, causing the communication to be unable to continue.

Bug phenomenon: Write Error after communication for some time.

already updated with the latest version (6 jan) on my previous message and tests

Yes ,Today I release two of these versions.
Version : Jan 6 2021 . 13
Version : Jan 6 2021 . 14
If still have problem ,please let me know.
Thanks!

Updated with the latest T3000 version (.14): OK
tried to poll modbus unit: failed
will install another 3rd party modbus device instead of my unit to see if the problem is consistent
thank you for your time

I really can’t find the reason why you;re still experiencing problems.The following screen shot shows my connection as you describe your situation and here result here is completely fine.
I also use the command “04 Read Input Registers(3x)” , all works as expected.

We have both burned up a lot of time here, it would be best for us to do some remote assistance using Teamviewer or https://www.remoteutilities.com.
Please email and arrange a time to connect with you.

I really appreciate the help here.
But prior to this, I’ll hook another 3rd party modbus device that works differently (rs232-485, node-red, plc) and test the T3-LB behavior again with this.

If I have the same kind of problem with another device, I’ll let you remote control a computer with T3000 access.

1 Like

I connected a Graigar Ultrasonic flowmeter TUF-2000M to my T3-LB.
Prior to that, tested the device through serial and connection and result were as expected:

Note here that I choose to display data as “float inverse” to show temperatures (Celsius here)

I connected then the unit to my T3-LB and the result is OK, I can reach the third party unit without communication errors. And this is good :slight_smile:

That said, Temco Modbus poll displays only signed/unsigned values.

My questions are then:

  • how can I display the right data on T3 registers ?
    I have a specific function in my PLC (pack32) to transform 2 x unsigned integers into a float, but I don’t know how to do that conversion in the T3 units

  • what are the instructions to insert those values into a T3 program ?

Thank you

Mike , TEMCO Modbus doesn’t support to show float data .
we supply four format instructions to convert float data in T3000 .
case BAC_FLOAT_ABCD:
ptr_panel.info[i].name = “MB_REG_FLOAT_ABCD”;
break;
case BAC_FLOAT_CDAB:
ptr_panel.info[i].name = “MB_REG_FLOAT_CDAB”;
break;
case BAC_FLOAT_BADC:
ptr_panel.info[i].name = “MB_REG_FLOAT_BADC”;
break;
case BAC_FLOAT_DCBA:
ptr_panel.info[i].name = “MB_REG_FLOAT_DCBA”;

T3-Controller program Demo ,
Device connects to T3-Controller via RS485
AR1 = 20.2.MB_REG_FLOAT_ABCD300
VAR1 : No. 1 VAR
20: T3_Controller panel number
2: Device Modbus ID
MB_REG_FLOAT_ABCD : Device float data format
3009 : Device Modbus register address .

Why 3009 (and not 300, taken from your data formatting) ?

In my case, T3 unit = 107, the rs485 sub modbus device ID = 40 and the 2 int16 addresses I want to poll are 35 & 36 and transform those 2 integers into 1 float
what should be the programming line ?

Update:
I tried to poll separately the int values from the subnet modbus device, like:

200 8096V3 = 107.40.MB_REG35
210 8098V4 = 107.40.MB_REG36

And I obtained the right values. How can I merge them into 1 float ?

Thank you

Solved the problem, but another one is now there…

I poll directly the integers and transform them into float:. I noticed that I need to poll the address of the low integer. But the result is there.

10 TEMPUS = TIME
606 8094V2 = 107.40.MB_REG_FLOAT_ABCD33
608 8096V3 = 107.40.MB_REG_FLOAT_ABCD35
800 REM TEMP DIFFERENCE BETWEEN 2 TEMP SENSORS
810 8098V4 = 8096V3 - 8094V2

However, after few minutes, spontaneously, the setting of the sub network of my T3-LB, while polling, is going from master to slave and the poll stops.Firmware 54.4 and latest T3000
Any idea ?

Update: switched modbus networks: set sub rs485 as unused and set main rs485 as master and will see how it behaves. feedback on this later.
Nope, test finished: same problem, the rs485 switches always from master to slave and stops communication with my 3rd party device.

Update 2: changed rs485 sub for slave and rs485 main for master (despite the topic of this post about the unused setting): no changes, returned to slave after few minutes.