Paul351W
Member
I am working on a project with a Controllogix 5582 processor using v32 firmware where I will be communicating with a Genset using Modbus TCP. It is sending power in Watts over two 16 bit Modbus registers, with a scaling value of 1w/bit, and an offset of -2,000,000,000 for a range of -2,000,000,000 to +2,211,081,215W.
If I try to use a UDINT data type, I cannot use BTD or COP/CPS to get the two 16 bit values into the UDINT. If I try to use a LINT, then I can only use COP/CPS, which would require me to first use BTD's to get the 16 bit values into a DINT, then add an extra DINT tag (value of zero) to use in the COP to zero out the upper 32 bits of the LINT
Is there a better way to do this that I am missing, other than maybe using XIC's and OTE's on a LINT?
If I try to use a UDINT data type, I cannot use BTD or COP/CPS to get the two 16 bit values into the UDINT. If I try to use a LINT, then I can only use COP/CPS, which would require me to first use BTD's to get the 16 bit values into a DINT, then add an extra DINT tag (value of zero) to use in the COP to zero out the upper 32 bits of the LINT
Is there a better way to do this that I am missing, other than maybe using XIC's and OTE's on a LINT?