12.07.2015 Views

Modbus Protocol for ION 7500, ION 7600 and ION 8000 series

Modbus Protocol for ION 7500, ION 7600 and ION 8000 series

Modbus Protocol for ION 7500, ION 7600 and ION 8000 series

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Modbus</strong> Register Map<strong>Modbus</strong> Slave Module Output Registers32-bit ‘Modulus-10000’ FormatThe Modulo-10000 (M10K) <strong>for</strong>mat breaks a 32-bit value into two 16-bit registers,according to the following relationship:High-Order Register register high =value/10000Low-Order Register register low = value modulus10000The 32-bit value can be retrieved by the following calculation:Value = register high x 10000 + register lowExample (Unsigned):Value 12345678 is passed in unsigned 32-bit Modulus-10000 <strong>for</strong>mat. Register high : 1234 = 04D2 Hex Register low : 5678 = 162E Hex Value = 1234 * 10000 + 5678 = 12345678Example (Signed):Value -12345678 is passed in signed 32-bit Modulus-10000 <strong>for</strong>mat. Both high <strong>and</strong>low are signed. Register high : -1234 = FB2E Hex Register low : -5678 = E9D2 Hex Value = -1234 * 10000 + -5678 = -12345678Packed Boolean FormatBoolean <strong>ION</strong> registers can be packed into a single <strong>Modbus</strong> register via the <strong>Modbus</strong>Slave Module. When the <strong>Modbus</strong> Slave Module is configured to produce packedBoolean outputs each input register (to the module) corresponds to one bit in thesingle output register of the module. The relationship is left to right: the first inputregister corresponds to the left-most bit in the 16-bit output register, etc.Example:Six Boolean registers are linked to a <strong>Modbus</strong> Slave Module, which is configured <strong>for</strong>Packed Boolean output <strong>for</strong>mat. If the first three are valued ‘False’, <strong>and</strong> theremaining three are valued ‘True’, the output register value is:Register: 0001110000000000 Bin = 1C00 HexIf the first input register became ‘True’, the output register value changes to:Register: 1001110000000000 Bin = 9C00 HexPage 13

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!