Bloque para interrumpir la generación de pulsos al controlar motores de paso.
Representación Ladder

Estructura del Bloque
Tipo de Variable |
Nombre |
Tipo de Dato |
Descripción |
VAR_INPUT |
EN |
BOOL |
Habilitación del bloque |
AxisNumber |
CONST |
Eje seleccionado |
|
VAR_OUTPUT |
ENO |
BOOL |
Habilitación de salida |
VAR |
MW_PlcStop1_INST_0 |
MW_PlcStop1 |
Instancia de acceso a la estructura del bloque |
Funcionamiento
Cuando la entrada EN cambie de FALSE a TRUE (flanco de subida), el bloque interrumpirá inmediatamente la generación de pulsos para el motor de paso del eje seleccionado.
|
¡NOTA! Es necesario que el control de motor de paso esté habilitado para el eje seleccionado. Vea el manual del usuario y el manual de parámetros. |
Ejemplo en Ladder

En el ejemplo de arriba, el contacto "start" habilita una señal PWM en la salida de pulsos del eje 1, con frecuencia inicial de 0 Hz y duty cycle de 50%. La salida de dirección del eje 1 es ajustada para nivel bajo (considerando que la dirección no fue invertida vía parámetros). La frecuencia será incrementada y decrementada de acuerdo con la rampa estándar.
En paralelo, el contacto de "start" inicia un contador de 3 segundos que al final del tiempo hará que la señal PWM de la DO1 sea finalizada inmediatamente y el bloque de move sea concluido, independientemente de la cantidad de pulsos generados.
Ejemplo en ST
El ejemplo de abajo, exhibe las instrucciones para aplicación del ejemplo funcional en el lenguaje ST.
VAR start : BOOL := 0; finished : BOOL; stopped : BOOL; pos : DINT := 1000000; MW_PlcMoveRelative1_INST_0 : FB_MW_PlcMoveRelative1; MW_PlcStop1_INST_0 : FB_MW_PlcStop1; TON_INST_0 : FB_TON; END_VAR
MW_PlcMoveRelative1_INST_0.EN := start; MW_PlcMoveRelative1_INST_0( AxisNumber:=1, Position:=pos); finished := MW_PlcMoveRelative1_INST_0.DONE;
TON_INST_0.EN := start; TON_INST_0(PT:=3, TIMEBASE:=1000);
MW_PlcStop1_INST_0.EN := TON_INST_0.Q; MW_PlcStop1_INST_0(AxisNumber:=1, ENO=>stopped);
|
|---|