 # RsLogix 500 - Data Types B3 T4 C5 R6 N7 F8, What do They Mean

## The data files are a way of organizing and optimizing the data storage in a PLC.

O0 - OUTPUT - Stores the state of the PLC outputs. It is organized as O:S.W/B where:

• S is the slot number.  0 being the PLC base's built in outputs and 1 being the first expansion module, 2 being the second expansion module, etc.
• W is the word.  We'll go more into detail of what a word is in the N7 explanation below but for discrete outputs, 0 is outputs 0-15 of the slot, 1 is outputs 16-32 of the slot.  If this is an analog module then 0 is the first channel, 1 is the second channel, etc.
• B is the bit and is used for discrete outputs in combination with the slot.  0/0 through 0/15 are the first 16 outputs of the slot, 1/0 through 1/15 are outputs 16-31 of the slot, etc.

Examples of outputs used on your trainer:

• Discrete outputs on the base PLC O:0.0/0 through O:0.0/5.  Note that many times where the word is always 0, it will be omitted and stated as O:0/0.
• Analog outputs on slot 1 O:1.0 and O:1.1.

I1 - INPUT - Stores the state of the PLC inputs. It is organized as I:S.W/B where:

• S is the slot number.  0 being the PLC base's built in inputs and 1 being the first expansion module, 2 being the second expansion module, etc.
• W is the word.  We'll go more into detail of what a word is in the N7 explanation below but for discrete inputs, 0 is outputs 0-15 of the slot, 1 is inputs 16-32 of the slot.  If this is an analog module then 0 is the first channel, 1 is the second channel, etc.
• B is the bit and is used for discrete inputs in combination with the slot.  0/0 through 0/15 are the first 16 inputs of the slot, 1/0 through 1/15 are outputs 16-31 of the slot, etc.

Examples of inputs used on your trainer:

• Discrete inputs on the base PLC I:0.0/0 through I:0.0/9.  Note that many times where the word is always 0, it will be omitted and stated as I:0/0.

B3 - BINARY - Are the most basic storage location that can either have a value of 0 or 1.  Your discrete inputs and outputs are binary bit address. All other data types are made up of combinations of binary bits.  For how these bits are organized into other data types see the N7 - INTEGER below.

T4 - TIMER - Is a data type made just for the timer instructions and are made up of 3 integers organized so you can access parts of it as bits and parts of it as words.  Learn more about integers in the N7 - INTEGER below and for more information about timers go to the RsLogix 500 - Timers - TON, TOF, and RTO lesson.

C5 - COUNTER - Is a data type made just for the counter instructions and are made up of 3 integers organized so you can access parts of it as bits and parts of it as words.  Learn more about integers in the N7 - INTEGER below and for more information about counters go to the RsLogix 500 - Counters - CTU and CTD.

R6 - CONTROL - Is a data type made just for the file shift and sequencer instructions and are made up of 3 integers organized so you can access parts of it as bits and parts of it as words.  Learn more about integers in the N7 - INTEGER below and for more information about sequencers go to the RsLogix 500 - Sequencing Machine Steps.

N7 - INTEGER - Is a data type made up of 16 bits that can represent a number from -32,768 to +32,767.  That is 16 combinations of 0 and 1.  The value of bit 0 is 1, each bit after that's value increases by a factor of two until you get to bit 15 which has a value of -32,768.  Adding the values of each bit that has a 1 in it will give you the integer value.  For more help understanding this conversion see the RsLogix 500 - Binary to Integer and Integer to Binary Conversions lesson. Below are the values for each bit.

• Bit 0 value = 1
• Bit 1 value = 2
• Bit 2 value = 4
• Bit 3 value = 8
• Bit 4 value = 16
• Bit 5 value = 32
• Bit 6 value = 64
• Bit 7 value = 128
• Bit 8 value = 256
• Bit 9 value = 512
• Bit 10 value = 1,024
• Bit 11 value = 2,048
• Bit 12 value = 4,096
• Bit 13 value = 8,192
• Bit 14 value = 16,384
• Bit 15 value = -32,768

F8 - FLOAT - is a data format that allows you to store a decimal value.  It uses 32 bits for each number and follows the IEEE Standard 754 standard.  This uses 23 bits to represent the mantissa or precise part of the number and 8 bits to represent the exponent part of the number.  While this works for most applications needed a decimal result, it is important that you understand that this is not a perfect conversion because of rounding.  Many whole numbers can be changed simply by converting them from a floating point to and integer and back to a floating point.

L - LONG - Is a data type made up of 32 bits that can represent a number from -2,147,483,648 to +2,147,483,647.  That is 32 combinations of 0 and 1.  The value of bit 0 is 1, each bit after that's value increases by a factor of two until you get to bit 31 which has a value of -2,147,483,648.  Adding the values of each bit that has a 1 in it will give you the integer value.  For more help understanding this conversion see the RsLogix 500 - Binary to Integer and Integer to Binary Conversions lesson.  Below are the values for each bit.

• Bit 0 value = 1
• Bit 1 value = 2
• Bit 2 value = 4
• Bit 3 value = 8
• Bit 4 value = 16
• Bit 5 value = 32
• Bit 6 value = 64
• Bit 7 value = 128
• Bit 8 value = 256
• Bit 9 value = 512
• Bit 10 value = 1,024
• Bit 11 value = 2,048
• Bit 12 value = 4,096
• Bit 13 value = 8,192
• Bit 14 value = 16,384
• Bit 15 value = 32,768
• Bit 16 value = 65,536
• Bit 17 value = 131,072
• Bit 18 value = 262,144
• Bit 19 value = 524,288
• Bit 20 value = 1,048,576
• Bit 21 value = 2,097,152
• Bit 22 value = 4,194,304
• Bit 23 value = 8,388,608
• Bit 24 value = 16,777,216
• Bit 25 value = 33,554,432
• Bit 26 value = 67,108,864
• Bit 27 value = 134,217,728
• Bit 28 value = 268,435,456
• Bit 29 value = 536,870,912
• Bit 30 value = 1,073,741,824
• Bit 31 value = -2,147,483,648

MG - MESSAGE - Stores the configuration of the MSG message instruction.  It is easiest to view and understand from inside the message instruction.

PD - PID - Stores the configuration of the PID Proportional Integral Derivative instruction.  It is easiest to view and understand from inside the PID instruction.

PLS - PROGRAMMABLE LIMIT SWITCH - Stores the configuration of the PLS Programmable Limit Switch instruction.  It is easiest to view and understand from inside the PID instruction.

RI - ROUTING INFORMATION - Used with the MSG instruction to give details on routing to the end device.

RIX - EXTENDED ROUTING INFORMATION - Used with the MSG instruction to give additional details on routing to the end device.

If you are used to a more traditional lesson series then you are probably wondering why this lesson is near the end of the series instead of right after the introduction. The main reason is that until this point in the lessons, you had no practical application that you could use to relate the data tables to.  Even now, don't worry too much if you don't fully grasp these data table concepts.  Just bookmark this lesson to refer back to as needed.  Proceed to the next lesson, RsLogix 500 - Binary to Integer and Integer to Binary Conversions.

## Next Steps

Go to the Allen Bradley RsLogix 500 PLC Training PLC Training Getting Started Lesson series to select your next lesson.  There are also many other Lesson Series on PLC Programming and Industrial Automation.