From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
10-12-2017 01:01 PM
I have a LabVIEW code that runs as Modbus master and a Temperature Slave device with a display on it. The problem I have is that the temperature device display is usually greater than what the shown Labview value by 1. There is no mathematical calculation involved in the code except to read a 16 bit holding register address and whose value is just connected to a LAbview indicator. Any help please?
10-12-2017 01:06 PM
what does "usually greater" mean?
Give a list of values (display, modbus). Rounding errors are also possible.
10-12-2017 01:17 PM
I mean that the value on the device display screen is more by 1 than the Labview modbus value. Im using labview 2017. Examples are: 819 (Device Display) Vs 818 (Labview), 767 (Device Display) Vs 766 (Labview), 809 (Device Display) Vs 808 (Labview)
10-12-2017 01:23 PM
What is the device? Do you have a link to the manual? Are those Kelvins, Deg C or Deg F?
Id guess (my magic 8-Ball is pretty good) the device rounds the value and truncates the register- Add 0.5 of whatever unit to the register value and display as integer
10-12-2017 01:24 PM
What does your device manual (BTW: which device, which modbus address) say to this?
Regards, Jens
10-12-2017 01:29 PM
The device is a Temp controller. Those are Deg F. Link is https://nicontrols.com/media/pdfs/pixsysatr142usermanual.pdf. Im using modbus register address 1000
10-12-2017 01:39 PM
You can also read at 3001..3016 🙂 then the data must match exactly. And about the addition of 1 ... Maybe it's just a bug.
10-12-2017 01:57 PM
Use reg 1100 instead and set the display to show tenths of a degree per pg 42.
You may need to read 1014 as well.
10-12-2017 02:41 PM
I read Register 1100 and same Issue existed. Dispay (835) more than labview value (834) by 1. Register 1104 gave me a different value (382)
10-12-2017 03:17 PM
Read the manual again
1104 is setpoint 4
1100 is visualized process (as displayed) 1014 is the CJC temp