Posición de transformación para cálculo de movimiento (MCTP)
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.Utilice la instrucción Posición de transformación para cálculo de movimiento (Motion Calculate Transform Position, MCTP) para calcular la posición de un punto en un sistema de coordenadas al punto equivalente en un segundo sistema de coordenadas.
IMPORTANTE:
Las etiquetas usadas del atributo de control de movimiento en las instrucciones solo se deberían usar una vez. Si se vuelve a usar la etiqueta de control de movimiento en otras instrucciones puede ocasionarse una operación inesperada. Esto podría resultar en daños al equipo o lesiones al personal.
Arquitectura | Standard | Seguridad |
|---|---|---|
Controladores CompactLogix 5370, ControlLogix 5570, Compact GuardLogix 5370 y GuardLogix 5570 | Sí | No |
Controladores Compact GuardLogix 5380, CompactLogix 5380, ControlLogix 5580, GuardLogix 5580 y ControlLogix 5590 | Sí | No |
Idiomas disponibles
Diagrama de lógica de escalera

Bloque de funciones
Esta instrucción no está disponible en el bloque de funciones.
Texto estructurado
MCTP(Source System, Target System, Motion Control, Orientation, Translation, Transform Direction, Reference Position, Transform Position);
Operandos
Diagrama de escalera y texto estructurado
Operando | Tipo | Formato | Descripción | |
|---|---|---|---|---|
Source System | COORDINATE_SYSTEM | Etiqueta | Sistema de coordenadas cartesianas para las posiciones cartesianas del robot En el caso de los controladores compatibles con los tipos de datos de movimiento REF_TO, el tipo de operando de sistema de coordenadas puede reemplazarse por el tipo REF_TO_COORDINATE_SYSTEM. | |
Target System | COORDINATE_SYSTEM | Etiqueta | Sistema de coordenadas no cartesianas que controla el equipo real. En el caso de los controladores compatibles con los tipos de datos de movimiento REF_TO, el tipo de operando de sistema de coordenadas puede reemplazarse por el tipo REF_TO_COORDINATE_SYSTEM. | |
Motion Control | MOTION_INSTRUCTION | Etiqueta | Etiqueta de control para la instrucción. | |
Translation | REAL[3] | Matriz | ¿Quiere desplazar la posición de destino alrededor del eje X1, X2, o X3? | |
If | Entonces | |||
No | Deje los valores de la matriz en cero. | |||
Yes | Introduzca las distancias de desplazamiento en la matriz. Introduzca las distancias de desplazamiento en unidades de coordenadas. Introduzca la distancia de desplazamiento para X1 en el primer elemento de la matriz, y así sucesivamente. | |||
Use an array of three REALs even if a coordinate system has only one or two axes. | ||||
Operando | Tipo | Formato | Descripción | ||||
|---|---|---|---|---|---|---|---|
Transform Direction | DINT | Inmediato | Para el tipo robot | To calculate | With the base turned to the | And the robot is | Select |
All | Posición cartesiana | ![]() | ![]() | Forward | |||
Cartesian Delta 2D Delta 3D SCARA Delta | Ángulos de unión | ![]() | ![]() | Inverse | |||
Articulated Independent Articulated Dependent SCARA Independent | Ángulos de unión | Mismo cuadrante que el punto | Configuración del brazo derecho | Inverse Right Arm | |||
Left Arm Configuration | Brazo izquierdo inverso | ||||||
Opposite Quadrant from the Point | Configuración del brazo derecho | Espejo de brazo derecho inverso | |||||
Left Arm Configuration | Espejo de brazo izquierdo inverso | ||||||
Reference Position | REAL[3] | Matriz | Si la dirección de transformación es: | Then enter an array that has the: | |||
Forward | Ángulos de unión | ||||||
Inverse | Posiciones cartesianas | ||||||
Transform Position | REAL[3] | Matriz | Matriz que almacena la posición calculada | ||||
Introduzca la dirección de transformación sin espacios. Por ejemplo, una dirección de transformación de brazo izquierdo inverso se introduce como InverseLeftArm.
Consulte Sintaxis de texto estructurado para obtener más información sobre la sintaxis de las expresiones dentro de texto estructurado.
Tipo de datos MOTION_INSTRUCTION
Para ver si | Compruebe si este bit está activado | Tipo de datos | Notas |
|---|---|---|---|
El renglón es verdadero | EN | BOOL | En ocasiones el bit EN permanece activado incluso si el renglón cambia a falso. Esto sucede si el renglón se pone en falso antes de que la instrucción finalice o antes de que ocurra un error. ![]() |
La instrucción ha finalizado. | DN | BOOL | |
Ha ocurrido un error | ER | BOOL | Identifique el número de error enumerado que aparece en el campo de códigos de error de la etiqueta de control de movimiento y, a continuación, consulte Códigos de error de movimiento (ERR). |

La instrucción MCTP es similar a la instrucción MCT, excepto cuando la instrucción MCTP no empieza una transformación. Calcula una posición cada vez que se ejecuta.
Pautas de programación
Siga estas pautas cuando utilice una instrucción MCTP.
Pautas para la instrucción MCTP
Pauta | Ejemplo y notas |
|---|---|
Cambie el renglón de falso a verdadero a fin de ejecutar la instrucción. | Se trata de una instrucción de transición. En el diagrama de escalera, cambie la Condición de entrada de renglón de falsa a verdadera cada vez que quiera ejecutar la instrucción. |
En el texto estructurado, condicione la instrucción para que solo se ejecute en una transición. | En el texto estructurado, las instrucciones se ejecutan cada vez que se escanean. Condicione la instrucción para que solo se ejecute en una transición. Use alguno de los siguientes métodos: Calificador de una acción SFC Construcción de texto estructurado |
Afecta a las marcas de estado matemáticas
No
Fallos mayores/menores
No es específico para esta instrucción. Se puede producir un fallo mayor si se pasa a los operandos de sistema de coordenadas una referencia sin inicializar o una referencia del tipo incorrecto. Consulte Atributos comunes para ver los fallos relacionados con el operando.
Ejecución
Diagrama de lógica de escalera
Condición/estado | Acción realizada |
|---|---|
Pre-escaneado | Los bits .EN, .DN, .ER y .IP se borran a falsos. |
La condición de entrada de renglón es falsa | El bit .EN se borra y cambia a falso si el bit .DN o .ER es verdadero. |
La condición de entrada de renglón es verdadera | El bit .EN se establece en verdadero y la instrucción se ejecuta. |
Post-escaneado | N/A |
Texto estructurado
Condición/estado | Acción realizada |
|---|---|
Pre-escaneado | Consultar Pre-escaneado en la tabla Diagrama de lógica de escalera. |
Ejecución normal | Consultar La condición de entrada de renglón es falsa, seguida por La condición de entrada de renglón es verdadera en la tabla Diagrama de escalera. |
Post-escaneado | Consultar Post-escaneado en la tabla Diagrama de escalera. |
Códigos de error
Consulte Códigos de error de movimiento (ERR) para ver las instrucciones de movimiento.
Códigos de error extendidos
Use los Códigos de error extendidos (EXERR) para obtener más instrucciones sobre un error. Se puede producir un fallo mayor si se pasa a los operandos de sistema de coordenadas una referencia sin inicializar o una referencia del tipo incorrecto. Consulte Códigos de error de movimiento (ERR) para ver las instrucciones de movimiento.
Cambios a los bits de estado
Ninguno
Flujo de datos de la instrucción MCTP entre dos sistemas de coordenadas
Las siguientes imágenes muestran el flujo de datos cuando se ejecuta una instrucción MCTP para realizar una transformación de avance y una transformación inversa. El indicador CS1 representa un sistema de coordenadas cartesianas que contiene los ejes X1, X2 y X3 como el origen de la instrucción MCTP. El indicador CS2 representa un sistema de coordenadas unidas que contiene los ejes J1, J2 y J3 como el destino de la instrucción MCTP.
Flujo de datos cuando se ejecuta un movimiento con una instrucción MCTP - Transformación de avance

Flujo de datos cuando se ejecuta un movimiento con una instrucción MCTP - Transformación inversa

Ejemplos
Diagrama de lógica de escalera

Texto estructurado
MCTP(myMctpSourceSystem, myMctpTargetSystem, myMctpMotionControl, myMctpOrientation, myMctpTranslation, InverseRightArmMirror, myMctpReferencePos, myMctpTransformPos);
Entregue su opinión

