Índice a través de matrices en Logix 5000: Subíndices dinámicos
Cómo usar índices dinámicos en arreglos de Logix 5000 (direccionamiento indirecto): tags y expresiones como subíndice, límites y fallo 4/20.

Para que la lógica apunte a distintos elementos de un arreglo, usa un tag o una expresión como subíndice. Es el equivalente al direccionamiento indirecto del PLC-5. En expresiones de subíndice usa solo tags SINT, INT y DINT con operadores; Logix Designer acepta como subíndice etiquetas de tipos extendidos, pero no en expresiones.
Ejemplos
| Referencia | Tipo | Descripción |
|---|---|---|
| my_list[5] | Estático | Siempre el elemento 5 |
| my_list[position] | Dinámico | Cambia al cambiar position |
| my_list[position+offset] | Dinámico con expresión | Con position = 2 y offset = 5 apunta al elemento 7 |
Operadores permitidos en el subíndice
| Operador | Uso en subíndices |
|---|---|
| + − * / | Aritméticos |
| AND, OR, XOR, NOT | Lógicos |
| FRD, TOD | Conversión BCD |
| SQR | Raíz cuadrada |
Ejemplo paso a paso
- Crea
my_list(DINT[10]) yposition(DINT). - Usa
MOV(my_list[position],Valor_Actual). - Antes, limita el índice:
LIM(0,position,9)en el mismo renglón. - Recorre el arreglo cambiando position con ADD o con un lazo FOR.
Renglón en texto (puedes pegarlo en el editor ladder):
LIM(0,position,9)MOV(my_list[position],Valor_Actual);
Consejos y errores comunes
- Un subíndice fuera de los límites genera un fallo mayor tipo 4, código 20: Valídalo siempre antes.
- Con índices dinámicos, la referencia cruzada muestra menos información: Documenta bien la lógica.
Serie: Instrucciones Logix 5000
- Examinar si cerrado (XIC)
- Examinar si abierto (XIO)
- Activación de salida (OTE)
- Enclavamiento de salida (OTL)
- Desenclavamiento de salida (OTU)
- Instrucciones de comparación en Studio 5000
- Igual a (EQU)
- Mayor que (GRT)
- Mayor o igual que (GEQ)
- Menor que (LES)
- Menor o igual que (LEQ)
- Límite (LIM)
- Instrucciones de alarma (ALMD y ALMA)
- Operación de grupo de alarmas (ASO)
- Máscara igual a (MEQ)
- No igual a (NEQ)
- Valor absoluto (ABS)
- Sumar (ADD)
- Calcular (CPT)
- Dividir (DIV)
- Módulo (MOD)
- Multiplicar (MUL)
- Negar (NEG)
- Raíz cuadrada (SQR/SQRT)
- Restar (SUB)
- Y booleano (BAND)
- O exclusivo booleano (BXOR)
- NO booleano (BNOT)
- O booleano (BOR)
- Búsqueda y comparación de archivos (FSC)
- Aritmética y lógica de archivo (FAL)
- Operadores válidos en expresiones
- Instrucción FOR (FOR)
- PID mejorado (PID)
- Validación de licencia (LV)
- Atributos comunes e indicadores de estado matemático
- Valores inmediatos (constantes)
- Conversiones de datos
- Tipos de datos elementales
- Tipos LINT y valores de punto flotante
- Índice a través de matrices
- Direccionamiento de bit
- Lazo FOR_DO en texto estructurado
- Instrucción MOV
Referencias
- Rockwell Automation. Logix 5000 Controllers General Instructions Reference Manual (Publicación 1756-RM003). literature.rockwellautomation.com
- Rockwell Automation. Studio 5000 Logix Designer: Ayuda en línea, conjunto de instrucciones. rockwellautomation.com
- International Electrotechnical Commission. (2013). IEC 61131-3: Programmable controllers – Part 3: Programming languages (3.ª ed.). IEC.
- Petruzella, F. D. (2017). Programmable Logic Controllers (5.ª ed.). McGraw-Hill Education.
Studio 5000, Logix 5000, ControlLogix, CompactLogix y GuardLogix son marcas de Rockwell Automation. Ilustraciones y simuladores originales de TdeAutomatización.


