Logix5000 item naming
- Last UpdatedAug 29, 2024
- 3 minute read
The Logix5000 controllers (ControlLogix, CompactLogix, FlexLogix, GuardLogix and SoftLogix) store data in tags, whose names you create. This is in contrast to the traditional Allen-Bradley PLC-5, SLC500 or MicroLogix controllers which store data in data/section files, whose names must follow the vendor-predefined naming convention.
The Logix5000 tags uses arrays instead of file numbers in addressing a set of multiple items. That is, "[]" would be accepted as a valid symbol but ":" would be rejected for the tag name. The Logix5000 item syntax is shown in the following table. The Communication Driver will adhere to this syntax for native mode.
Note: A tagname can be up to 40 characters in length and cannot include a file number. File numbers are not applicable to Control Logix. File numbers are valid for PLC5, SLC500 and MicroLogix only.
|
Reference |
Syntax |
|---|---|
|
Program tag |
Program:<Program_Name>.<Tag_Name> |
|
IO tag |
<Location>:<slot_#>:<Data_ Type><Member_Name>.<SubMember_Name>.[<bit_#>] |
|
Entire tag |
<Tag_Name> |
|
Member of structure tag |
<Tag_Name>.<Member_Name> |
|
Array element |
<Tag_Name>[<element_X>] |
|
Two-dimensional array element |
<Tag_Name>[<element_X>,<element_Y>] |
|
Three-dimensional array element |
<Tag_Name>[<element_X>,<element_Y>,<element_Z>] |
|
Block reads/writes of one-dimensional arrays (supported types: BOOLS, SINTS, INTS, DINTS, REALS, LONG) |
<Tag_Name>[<element_X>],L<number_of_items_#> |
|
String tag |
<String_Tag_Name>[.DATA[[<element_#>] ]][,SC<string_length_#>] <String_Tag_Name>[.DATA[[<element_#>] ]][,SP<string_length_#>] <String_Tag_Name>[.DATA[[<element_#>] ]][,SS<string_length_#>] |
|
String tag array |
<String_Tag_Name>[<element_X>][.DATA [[<element_#>]]][,SC<string_length_#>] <String_Tag_Name>[<element_X>][.DATA [[<element_#>]]][,SP<string_length_#>] <String_Tag_Name>[<element_X>][.DATA [[<element_#>]]][,SS<string_length_#>] |
|
Bit within integer |
<Tag_Name or Member_Name>.<bit_#> |
|
Read-only item syntax to read controller time-stamped data |
<Tag_Name>&T&<Time_Tag> <Hierarchy_Node_Path><Tag_Name>&T&[.]<TimeTag> |
|
Note: When the data and timestamp are located in the same structure (e.g. UDT), the optional period following the &T& delimiter when entering the item name for structures reduces the need to retype the same structure name for the time tag. |
Example: A.B.C.D.DataTag&T&A.B.C.D.TimeTag A.B.C.D.DataTag&T&.TimeTag |
|
Note: [DT] qualifier is an option to subscribe the value (LINT) in date and time format. |
Example: A.B.C.D.TimeTag DT Note: A space must be inserted between the <TimeTag> and DT qualifier. Using the [DT] qualifier causes the tag to become Read Only. |
In the preceding table:
-
[ ] italicized brackets designate element as optional.
-
[ ] not italicized brackets denote array index.
-
< > means user input (as defined in the controller program).
-
String placeholder (start with uppercase): Location, Program_Name, Tag_Name, Data_Type, Member_Name, SubMember_Name, and String_Tag_Name.
-
Numeric placeholder (all in lowercase): elemeny_#, element_X, element_Y, element_Z, string_length_#, slot_#, bit_#, and number_of_items_#.
-
<Location>identifies network location as:
LOCAL = Local rail or chassis
<Adapter_Name> = Name of the remote module -
<Data_Type> is represented by a single letter as follows:
I=input, O=output, C=configuration, and S=status. -
All others are predefined keywords or symbols.
Examples:
|
Tag Name |
Example |
|
String tag array |
BatchRecipe[4], BatchRecipe[4].DATA BatchRecipe[4].DATA[0],sc82 (all of them return the same data) |
|
Two-dimensional array tag |
Mixer_StepTimer_Preset[3,5] |
|
User-defined structure tag |
ProductionUnit.AssemblyLine[2].Counter[4] |
|
Program tag |
Program:MainProgram.Tank[1,2,4].Level |
|
Module tag |
Local:6:O.Data.31 |
Note: A STRING type member is implicitly a structure in the form of StringTag.DATA and
StringTag.LEN (where the DATA member is an array of 82 elements and the LEN member
defines the actual length of the string). Therefore, a string member consumes two
nesting levels by default.
The length field of a string will be used to determine the length of the string to
be returned if the DATA member is not explicitly included in the string specification
when the string is put into subscription.
Note: The "DT" qualifier returns a UTC date/time for OPC Clients requesting a "VT_DATE" binary value. For DDE and SuiteLink clients, requesting a "VT_BSTR", the date is converted to a UTC Date/Time string. The dates supported by the Date/Time string include values from 1/1/1970 12:00:00AM (GMT) to 8/30/2920 5:19:59AM (GMT).