Binary Coded Decimal format.

P

Thread Starter

PT

We are interfacing PLC giving data in BCD (Binary Coded Decimal) which to be interfaced with Honeywell EBI-310. We have following format to read data.<pre>
Format Description
IEEEFPB Bytes are big endian format (this is the same as IEEEFP)
IEEEFPBB Bytes are byte-swapped big endian format
IEEEFPL Bytes are little endian format
IEEEFPLB Bytes are byte-swapped little endian format</pre>

My question is data in BCD format can be taken in any of the above format. Please advice.

Regards,
PT
 
The cited Honeywell formats are all IEEE floating point (FP) formats in different arrangements of low order/high order, byte swap/no byte swap.

BCD is NOT the same as floating point. A system expecting to read 4 bytes in floating point would not interpret 4 bytes of BCD as the same value as the FP.

Products from other Honeywell divisions (Trendview) can read 16 bit (Modbus) integer values, but only serve floating point values to clients asking for data. Is that the case with the EBI-R310?

Is the EBI-R310 only capable of reading the cited FP formats? If so, it will not be able to read BCD and you'll need a format converter, and probably a protocol converter as well.
 
Thanks for the reply.
The 16-bit format available with EBI-310 are <pre>
Data Format Counts in Controller Register
U4095(Unsigned) 0 to 4095
U9999(Unsigned) 0 to 9999
U999 (Unsigned) 0 to 999
U15B (Unsigned) 0 to 32767
U16B (Unsigned) 0 to 65535
S16B (Signed) -32768 to 32767</pre>
So can BCD data can be taken in Unsigned or Signed format? Another query is BCD format data in 16 bit registers or 32 bit register.
 
F

Fred Loveless

BCD (16 bit) and LBCD (32 bit) are unsigned data types. In BCD formatted data each nibble is a digit with a value of 0-9. A nibble is half or 4 bits of a byte. This means that for BCD data the range is 0-9999 and for LBCD the range is 0-99999999. It will never be a float and it will never be signed. I have been doing some research and I cannot find documentation that explains the formats. i am wondering of the formats are not just for regular binary data and really specify the range allowed for that use.

Fred Loveless
Kepware Tecnnologies
 
It appears that
U4095 (unsigned) 0 - 4095; is
0000(h) through 0FFF(h) packed with leading zeros for 12 bit A-D converters

U9999 (unsigned), 0 - 9999 sounds like 4 digit BCD

U999 (unsigned), 0 - 999 sounds like 3 digit BCD with a leading zero, 0XXX to account for the extra 4 bits

U15B (unsigned), 0 - 32757 is a 15 bit unsigned integer with a leading zero that is not interpreted as a sign

U16B (unsigned), is 16 bit unsigned integer

S16B (signed), is a 15 bit integer with a leading sign bit.

If you need to read BCD, you've got your choice of 3 or 4 digit BCD, either U999 or U9999, packed as 16 bit 'words'.
 
Top