RSLogix 500 to Studio 5000: Tag Mapping Reference
Reference table mapping SLC 500 file-based addresses (N7, B3, T4, C5, I:, O:) to ControlLogix/CompactLogix tag-based equivalents in Studio 5000.
RSLogix 500 to Studio 5000: Tag Mapping Reference
SLC 500 uses numbered data files. ControlLogix uses named tags. This reference maps every SLC address type to its ControlLogix equivalent.
Data File → Tag Mapping
| SLC 500 File | Type | Default Name | ControlLogix Tag Type | Example Conversion |
|---|---|---|---|---|
| O:x | Output | Output | Local:x:O.Data[n] | O:2/0 → Local:2:O.Data[0].0 |
| I:x | Input | Input | Local:x:I.Data[n] | I:1/0 → Local:1:I.Data[0].0 |
| S:x | Status | Status | GSV instruction | S:1/15 → GSV to read controller status |
| B3:x | Binary | Binary | BOOL array or DINT tag | B3:0/0 → MyBits[0].0 |
| T4:x | Timer | Timer | TIMER tag | T4:0.ACC → MyTimer.ACC |
| C5:x | Counter | Counter | COUNTER tag | C5:0.ACC → MyCounter.ACC |
| R6:x | Control | Control | CONTROL tag | R6:0 → MyControl |
| N7:x | Integer | Integer (16-bit) | DINT (32-bit default) | N7:0 → MyInteger |
| F8:x | Float | Float (32-bit) | REAL (32-bit) | F8:0 → MyReal |
| ST9:x | String | String | STRING tag | ST9:0 → MyString |
Timer/Counter Structure Mapping
| SLC 500 | ControlLogix | Description |
|---|---|---|
T4:0.PRE | MyTimer.PRE | Preset value |
T4:0.ACC | MyTimer.ACC | Accumulated value |
T4:0.DN | MyTimer.DN | Done bit |
T4:0.TT | MyTimer.TT | Timer timing bit |
T4:0.EN | MyTimer.EN | Enable bit |
C5:0.PRE | MyCounter.PRE | Preset |
C5:0.ACC | MyCounter.ACC | Accumulated |
C5:0.DN | MyCounter.DN | Done |
C5:0.OV | MyCounter.OV | Overflow |
C5:0.UN | MyCounter.UN | Underflow |
Integer Size Change
Critical: SLC 500 N-files are 16-bit INT (-32768 to +32767). ControlLogix default integer is 32-bit DINT (-2147483648 to +2147483647). For most arithmetic this is transparent, but bit manipulation and negative number handling can behave differently.
Recommendation: After migration, verify any code that uses masking (AND), shifting (BSL/BSR), or tests specific bit positions in integer words.
I/O Addressing Deep Dive
SLC 500 I/O addresses are slot-based with bit-level access:
I:1/0 → Input slot 1, bit 0
I:1.0/0 → Same (word 0, bit 0)
O:2/5 → Output slot 2, bit 5
I:3.1 → Input slot 3, word 1 (full word)
ControlLogix I/O addresses are module-path based:
Local:1:I.Data[0].0 → Local chassis, slot 1, input, word 0, bit 0
Local:2:O.Data[0].5 → Local chassis, slot 2, output, word 0, bit 5
MyRemoteRack:3:I.Data → Named connection to remote rack
Generate Your Tag Mapping Automatically
PLCcheck Pro reads your RSLogix 500 program and generates a complete tag mapping table ready for import into Studio 5000.
Maintained by PLCcheck.ai. Not affiliated with Rockwell Automation.
Related Articles
RSLogix 500 to Studio 5000: Program Conversion Guide
Detailed guide to the software conversion process from RSLogix 500 to Studio 5000 Logix Designer. Covers the Logix Designer Export tool, Project Migrator, file preparation, and post-conversion cleanup.
8 min read
migration-guideSLC 500 to CompactLogix: Step-by-Step Conversion
Step-by-step guide for converting Allen-Bradley SLC 500 programs to CompactLogix using Studio 5000. Covers the Logix Designer Export, tag cleanup, I/O remapping, and post-conversion testing.
12 min read
migration-guidePLC-5 to ControlLogix Migration: Complete Guide
Complete guide for migrating Allen-Bradley PLC-5 programs to ControlLogix. Covers software conversion, hardware replacement, network migration (DH+ to EtherNet/IP), I/O mapping, and common pitfalls.
12 min read
Analyze your PLC code with AI
PLCcheck Pro explains, documents, optimizes, and migrates PLC code — automatically.
Try PLCcheck Pro →Not affiliated with Siemens AG. S5, S7, STEP 5, STEP 7, and TIA Portal are trademarks of Siemens AG.