Mover con máscara con receptor (MVMT)
Esta información corresponde a los controladores
CompactLogix
5370, ControlLogix
5570, Compact GuardLogix
5370, GuardLogix
5570, Compact GuardLogix
5380, CompactLogix
5380, ControlLogix
5580, GuardLogix
5580 y ControlLogix 5590. Las diferencias de controladores se indican cuando corresponda.La instrucción MVMT copia el valor de Source en Destination y permite que se aplique una máscara a partes de los datos.
Idiomas disponibles
Diagrama de lógica de escalera
Esta instrucción no está disponible en el diagrama de escalera.
Bloque de funciones

Texto estructurado
MVMT(MVMT_tag);
Operandos
Texto estructurado
Variable | Tipo | Formato | Descripción |
|---|---|---|---|
Etiqueta MVMT | FBD_MASKED_MOVE | Estructura | Estructura MVMT |
Consulte Sintaxis de texto estructurado para obtener información sobre la sintaxis de las expresiones dentro de texto estructurado.
Bloque de funciones
Operando | Tipo | Formato | Descripción |
|---|---|---|---|
MVMT tag | FBD_MASKED_MOVE | Estructura | Estructura MVMT |
Estructura de FBD_MASKED_MOVE
Parámetro de entrada | Tipo de datos | Descripción |
|---|---|---|
EnableIn | BOOL | Si no está activada, la instrucción no se ejecuta y las salidas no se actualizan. Si está establecida, la instrucción se ejecuta. Está establecido de forma predeterminada. |
Source | DINT | Valor de entrada para mover a Destino en función del valor de Mask. Válido = cualquier número entero |
Mask | DINT | Mask de bits para mover de Source a Dest. Si todos los bits están establecidos en, los bits coorrespondientes se mueven de Source a Dest. Todos los bits que se establecen en cero hacen que los bits correspondientes no se muevan de Origen a Dest. Válido = cualquier número entero |
Target | DINT | Valor de entrada a mover a Dest antes de mover bits de Origen a través de Mask. Válido = cualquier número entero |
Parámetro de salida | Tipo de datos | Descripción |
|---|---|---|
EnableOut | BOOL | Indica si la instrucción está habilitada. |
Dest | DINT | Resultado de la operación de movimiento con máscara. |
Descripción
Si está habilitada, la instrucción MVMT usa una Mask para dejar pasar o bloquear bits de datos de Source. Un "1" en la máscara significa que el bit de datos se ha pasado. Un "0" en la máscara significa que el bit de datos se ha bloqueado.
Si mezcla tipos de datos enteros, la instrucción rellena los bits superiores de los tipos de datos enteros más pequeños con ceros para que tengan el mismo tamaño que el tipo de datos más grande.
Introducir un valor de máscara inmediato usando una Reference de entrada
Cuando se introduce una máscara, el software de programación pasa de forma predeterminada a usar valores decimales. Si quiere introducir una máscara usando otro formato, coloque el prefijo adecuado antes del valor.
Prefijo | Descripción |
|---|---|
16# | hexadecimal (por ejemplo, 16#0F0F) |
8# | octal (por ejemplo, 8#16) |
2# | binario (por ejemplo, 2#00110011) |
Afecta a las marcas de estado matemáticas
Controladores | Afecta a las marcas de estado matemáticas |
|---|---|
Controladores CompactLogix 5380, ControlLogix 5580, Compact GuardLogix 5380, GuardLogix 5580 y ControlLogix 5590 | No |
Controladores CompactLogix 5370, ControlLogix 5570, Compact GuardLogix 5370 y GuardLogix 5570 | Sí para la salida |
Fallos mayores/menores
No es específico para esta instrucción. Consulte Atributos comunes para ver los fallos relacionados con el operando.
Ejecución
Bloque de funciones
Condición/estado | Acción realizada |
|---|---|
Pre-escaneado | Los bits EnableIn y EnableOut se establecen en falsos. |
Tag.EnableIn es falso | Los bits EnableIn y EnableOut se establecen en falsos. |
Tag.EnableIn es verdadero | Los bits EnableIn y EnableOut se establecen en verdaderos. La instrucción se ejecuta. |
Primera ejecución de instrucción | N/A |
Primer escaneado de instrucción | N/A |
Post-escaneado | Los bits EnableIn y EnableOut se establecen en falsos. |
Texto estructurado
Condición/estado | Acción realizada |
|---|---|
Pre-escaneado | Consulte Pre-escaneado en la tabla Bloque de funciones. |
Ejecución normal | Consultar Tag.EnableIn es verdadero en la tabla Bloque de funciones. |
Post-escaneado | Consulte Post-escaneado en la tabla Bloque de funciones. |
Ejemplos
Paso 1
El controlador copia el valor de Target en Dest.

Paso 2
La instrucción aplica una máscara a Source y lo compara con Dest. Cualquier cambio que sea necesario, se realiza en Dest, que se convierte en un parámetro de entrada para value_masked. Source y Target se quedan igual. Un 0 en la máscara impide que la instrucción compare ese bit.

Bloque de funciones

Texto estructurado
MVMT_01.Source := value_1;
MVMT_01.Mask := mask_1;
MVMT_01.Target := target;
MVMT(MVMT_01);
value_masked := MVMT_01.Dest;
Entregue su opinión