Modbus TCP write or settable
-
Re: {Modbus TCP write or settable](/topic/4560/modbus-tcp-write-or-settable)
Register 64 (all R/W) points, while using the tool you can see in yellow hi light it will write, but the actual point will reads the value but when I use the "set" command to change the value nothing happens.
-
Hi @ORU_david
What does your browser console say?
i.e do you get any errors there ex: permission rights etc?
Do any events also happen in events table?
i.e modbus error exceptions illegal data value or something similar?
Then we can help more.
-
I really don't see anything but I'm limited as to what to look for. I'm using chrome.
The MC6 Test stat is the device. -
If we are talking about MC6 Test Stat: MC6 Stat - Space temp point then following is related.
Transcript from modbus documentation:
See here for more info: http://www.simplymodbus.ca/exceptions.htm
03 (03 hex) Illegal Data Value
A value contained in the query data field is not an allowable value for the slave. This indicates a fault in the structure of remainder of a complex request, such as that the implied length is incorrect. It specifically does NOT mean that a data item submitted for storage in a register has a value outside the expectation of the application program, since the MODBUS protocol is unaware of the significance of any particular value of any particular register.Please see that your multiplier and additive is actually as it should. Device responds to mango that the value you want to write is not allowed.
Edit: I looked at your previous point and it seems that we are actually talking about the same point. If you click on info icon on the datapoint edit page you can see documentation related to multiplier and additive.
The Multiplier and Additive fields can be used when trivial value conversions are required. Numeric values read from the network are calculated as follows: (raw value) * multiplier + additive. The reverse is applied when a numeric value is written to the network.
So generally speaking. You have to consider the multiplier you set to the point and also modbus 2 byte integers take integer values not floating values.
-
@thomaseinasto
Thanks Thomas. I think I understand some of this. When I use the write tool I put 740 to get a 74° set point so once I get the right multiplier + additive combo it should work? -
@ORU_david To put 74 ° you should probably write 740 but I am not sure if the value put into the modbus request is actually a 2 byte integer or a floating point,
i.e does Mango parseInt the value after multiplier + additive before putting it into the modbus request or not..
IAS staff could be of more help on that.
-
Mango computes the multiplier and additive in reverse when you write a data point. So if the multiplier is 0.1 and you try to set the point with 74 it will write 740 to the Modbus register.
Please, can you send the ma.log file to support@infiniteautomation.com
-
Well it turns out, the device required the "Use multiple write commands only" to be turned on. Thanks for the help.