I have a Flexy unit reading from an Omron NX1P2 device on a FINS IO server. The tag I want read is defined as an integer in the PLC (as a DINT specifically, which is a 32 bit integer for Omron according to their software user manual). The tag is defined as an Integer in the eWON Fins Server, which I believe is also a 32 bit value. The tag reads correctly when it’s a positive value, but when it’s a negative value in the PLC then the eWON reads it as a large, positive value. For example, when the PLC is storing/ reading the value as -1 then the eWON tag reads 6553. -2 reads as 6552, -3 reads as 6551, etc. I’ve been trying to troubleshoot this for a bit on my own and haven’t been able to figure where that value comes from.
For additional info, the binary representation of negative numbers in Omron’s software is done by the 2s complement. So ‘-1’ is stored as ‘1111 1111 1111 1111 1111 1111 1111 1111’. I assume that eWON interprets signed integers in the same way, by the 2’s complement, though I can’t find any documentation to back that up.
Any insight would be very appreciated! I suppose a second option would be to have a script that corrects the numbers by subtracting from very high (>6000) “temperatures”, though I’d like to understand why the values aren’t reading correctly in the first place.
Thanks!