Instrucción MOV en PLC: Studio 5000, RSLogix 500 y Siemens TIA Portal
Aprende a usar la instrucción MOV (MOVE en Siemens) paso a paso en Studio 5000, RSLogix 5000, RSLogix 500 y TIA Portal, con ejemplos, errores comunes y referencias.

La instrucción MOV (mover) es una de las primeras que se aprenden al programar un PLC y una de las que más se usan en planta: Sirve para cargar setpoints, cambiar recetas, guardar una lectura o pasar un valor a la pantalla HMI. En este tutorial verás qué hace, cómo se programa en Studio 5000 / RSLogix 5000, en RSLogix 500 y en Siemens TIA Portal (donde se llama MOVE), y cuáles son los errores más comunes.
Seguridad: Antes de descargar cambios a un PLC en servicio, verifica el estado del proceso y coordina con operación. Un valor mal movido puede cambiar velocidades, tiempos o límites de una máquina en marcha.
1. ¿Qué hace la instrucción MOV?
MOV copia el valor de un origen (Source) en un destino (Dest) cada vez que el renglón está en verdadero. Tres cosas que debes tener claras:
- El origen no cambia. Solo se hace una copia de su valor.
- El destino se sobrescribe. Lo que tenía antes se pierde.
- Se ejecuta en cada scan mientras el renglón siga verdadero. Si el renglón pasa a falso, MOV no hace nada y el destino conserva su último valor (no se borra).

2. Partes de la instrucción
| Parte | Qué es | Puede ser |
|---|---|---|
| Condición de entrada | Los contactos a la izquierda de la instrucción | XIC, XIO, comparaciones, etc. |
| Source (origen) | El valor que se va a copiar | Una constante (1500) o un tag / dirección |
| Dest (destino) | Donde se guarda la copia | Siempre un tag o dirección de memoria, nunca una constante |

3. Ejemplo que usaremos
Al presionar el botón de la receta 1, la velocidad del motor se carga en 1500. Es un caso típico: Un selector o botón en el tablero carga un valor predefinido que luego usa un variador o un lazo de control.
4. MOV en Studio 5000 / RSLogix 5000 (ControlLogix y CompactLogix)
Renglón de ejemplo en texto (puedes pegarlo en el editor de ladder):
XIC(Boton_Receta1) MOV(1500,Velocidad_Motor);
- Crea los tags
Boton_Receta1(BOOL) yVelocidad_Motor(DINT). - Agrega un contacto XIC y asígnale
Boton_Receta1. - En la barra de instrucciones, pestaña Move/Logical, arrastra MOV al renglón.
- En Source escribe
1500y en Dest el tagVelocidad_Motor. - Verifica, descarga, pasa a Run y presiona el botón:
Velocidad_Motorqueda en 1500.
En texto estructurado (ST) lo mismo se escribe así:
IF Boton_Receta1 THEN
Velocidad_Motor := 1500;
END_IF;
Tipos de datos: MOV acepta SINT, INT, DINT y REAL, entre otros. Si el origen y el destino son de tipos distintos, el controlador convierte el valor. Si mueves un REAL a un entero se pierden los decimales (el valor se redondea), así que usa el mismo tipo siempre que puedas.

5. MOV en RSLogix 500 (SLC 500 y MicroLogix)
Funciona igual, pero aquí no hay tags: Se trabaja con direcciones de los archivos de datos.
XIC I:0/0 MOV Source 1500
Dest N7:0
I:0/0: Entrada 0 del controlador (en un MicroLogix, entradas integradas). En un SLC 500 con la tarjeta de entradas en el slot 1 seríaI:1/0.N7:0: Primer elemento del archivo de enteros N7 (de −32.768 a 32.767).- Para valores con decimales usa el archivo de flotantes F8, por ejemplo
F8:0.
La instrucción también está en la pestaña Move/Logical. Escribe siempre la dirección completa del destino.

6. MOVE en Siemens TIA Portal (S7-1200 y S7-1500)
En Siemens la instrucción se llama MOVE y sus pines tienen otros nombres:
| Pin | Función |
|---|---|
| EN | Habilitación: La condición del renglón |
| IN | Origen: Constante o variable a copiar |
| OUT1 | Destino. Con el asterisco del bloque agregas OUT2, OUT3… para copiar el mismo valor a varios destinos |
| ENO | Salida de habilitación: Se activa si la instrucción se ejecutó sin error |
- Crea las variables
"Boton_Receta1"(Bool, %I0.0) y"Velocidad_Motor"(Int). - Agrega un contacto normalmente abierto con
"Boton_Receta1". - Busca MOVE en Instrucciones › Instrucciones básicas › Transferencia y arrástrala al segmento.
- En IN escribe
1500y en OUT1 la variable"Velocidad_Motor". - Compila, carga en el PLC (o en PLCSIM) y prueba.
En SCL el equivalente es:
IF "Boton_Receta1" THEN
"Velocidad_Motor" := 1500;
END_IF;

7. Errores comunes
Mover en cada scan sin querer
Si solo necesitas copiar el valor una vez al presionar el botón, coloca un detector de flanco antes de MOV: ONS en Studio 5000, OSR en RSLogix 500 y el contacto P (flanco positivo) en TIA Portal. Es importante cuando el destino también lo modifica otra parte del programa o un operador desde la HMI.
Mezclar tipos de datos
Mover un decimal a un entero pierde la parte decimal, y mover un valor grande a un tipo pequeño (por ejemplo DINT a INT) puede desbordarse. Revisa el tipo del destino antes de programar.
Varios MOV al mismo destino
Si dos renglones escriben en el mismo destino a la vez, el valor final es el del último que se ejecuta en el scan. Asegúrate de que sus condiciones no se activen juntas (por ejemplo, recetas con enclavamiento entre sí).
Creer que al soltar el botón se borra
Con el renglón en falso el destino conserva su valor. Para ponerlo en cero haz otro MOV con origen 0, o usa CLR en Rockwell.

8. Instrucciones relacionadas
- COP (Rockwell): Copia un bloque de datos (arreglos) de un lugar a otro.
- MVM (Rockwell): Movimiento con máscara, copia solo los bits que indiques.
- MOVE_BLK (Siemens): Copia un bloque de elementos de un arreglo.
- FILL_BLK (Siemens) y FLL (Rockwell): Llenan un rango con el mismo valor.
9. Resumen
| Software | Instrucción | Origen / Destino | Una sola vez |
|---|---|---|---|
| Studio 5000 / RSLogix 5000 | MOV | Source / Dest | ONS |
| RSLogix 500 | MOV | Source / Dest | OSR |
| Siemens TIA Portal | MOVE | IN / OUT1 | Contacto P |

Si te quedó alguna duda o quieres que explique otra instrucción, escríbenos. Pronto estará el tutorial en video en el canal de YouTube.
Referencias
- Rockwell Automation. Logix 5000 Controllers General Instructions Reference Manual (Publicación 1756-RM003). literature.rockwellautomation.com
- Rockwell Automation. SLC 500 Instruction Set Reference Manual (Publicación 1747-RM001). literature.rockwellautomation.com
- Rockwell Automation. MicroLogix 1100 Programmable Controllers Instruction Set Reference Manual (Publicación 1762-RM001). literature.rockwellautomation.com
- Siemens AG. SIMATIC S7-1200 Programmable Controller: System Manual. Siemens Industry Online Support.
- Siemens AG. STEP 7 (TIA Portal): Ayuda en pantalla, instrucción MOVE (Transferencia).
- 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.
- Bolton, W. (2015). Programmable Logic Controllers (6.ª ed.). Newnes.
Studio 5000, RSLogix, ControlLogix, CompactLogix, SLC 500 y MicroLogix son marcas de Rockwell Automation. SIMATIC y TIA Portal son marcas de Siemens AG.
