Bloco responsável pela execução de uma parada controlada.
Representação Ladder

Características de Execução
Tamanho de Memória de Programa |
52 Bytes |
Tamanho de Memória de Dados |
12 Bytes |
Estrutura do Bloco
Tipo de Variável |
Nome |
Tipo de Dado |
Descrição |
VAR_IN_OUT |
Axis |
BYTE |
Seleção de eixo da operação (0 - Eixo real) |
VAR_INPUT |
Execute |
BOOL |
Habilitação do bloco |
Deceleration |
REAL |
Desaceleração da parada |
|
Jerk |
REAL |
Jerk |
|
VAR_OUTPUT |
Done |
BOOL |
Habilitação da saída |
Busy |
BOOL |
Sinalizador de que o bloco ainda não foi finalizado |
|
Active |
BOOL |
Sinalizador de bloco com controle sobre o eixo |
|
CommandAborted |
BOOL |
Sinalizador de comando abortado |
|
Error |
BOOL |
Sinalizador de erro na execução |
|
ErrorID |
WORD |
Identificador do erro ocorrido |
|
VAR |
MC_STOP_INST_0 |
MC_STOP |
Instância de acesso à estrutura do bloco |
Funcionamento
Este bloco, quando detecta uma borda de subida em Execute, envia um comando para uma parada controlada do eixo. Enquanto Execute possuir nível TRUE, nenhum outro bloco MC é executado.
Ao executar o bloco MC_Stop, o drive passará a operar em malha de posição e permanece assim mesmo após a conclusão do bloco. Deve-se ajustar o ganho proporcional de posição (P0159) para obter um melhor desempenho do drive.
Na execução do bloco o estado do eixo mudará para Stopping. Ao finalizar a parada e o bloco não estiver mais ativo, o estado do eixo mudará para Standstill.
Quando Execute possui valor FALSE, Done permanece FALSE. A saída Done é ativada quando o bloco termina a execução com sucesso, permanecendo em nível TRUE até que Execute receba FALSE.
Caso haja algum erro na execução, a saída Error é ativada e ErrorID exibe o código do erro segundo a tabela abaixo.
Código |
Descrição |
64 |
Desaceleração programada menor que a mínima permitida. |
65 |
Desaceleração programada maior que a máxima permitida. |
67 |
Drive no estado "Disabled" ou "ErrorStop". |
71 |
P202 diferente de 4. |
78 |
Bloco MC não executado - Falha interna. |
93 |
Jerk programado menor que o mínimo permitido. |
94 |
Jerk programado maior que o máximo permitido. |
Exemplo



Na transição de subida de MOVE_COMMAND, o bloco MC_MoveVelocity é executado. Com isso, os sinais Busy e Active deste bloco são setados e inicia-se o movimento para chegar à velocidade de 200 RPM. O estado do eixo (%SW6004) muda de Standstill (2) para Continuous Motion (5).
No instante em que a velocidade atinge 200 RPM, MOVE_RESULT é setado.
Tendo-se a transição de subida de STOP_COMMAND, o bloco MC_Stop é instantaneamente executado, com isso os sinais Busy e Active deste bloco são setados e se inicia a parada. Ao mesmo tempo os sinais Busy, Active e InVelocity do bloco MC_MoveVelocity são resetados e o sinal CommandAborted é setado por 1 ciclo de scan. O estado do eixo (%SW6004) muda de ContinuousMotion (5) para Stopping (3).
Ao finalizar a parada, a saída Done do bloco MC_Stop é setada e permanece até a entrada Execute seja resetada. O estado do eixo (%SW6004) permanece igual a Stopping (3) e nenhum outro bloco MC será executado.
Tendo-se a transição de subida de MOVE_COMMAND, o bloco MC_MoveVelocity é iniciado, mas como o bloco MC_Stop está ativo, ocorrerá erro e o sinal Error será setado, inserindo em ErrorID o valor 69.
Quando a entrada Execute do bloco MC_Stop é resetada, os sinais Busy, Active e Done são resetados. O estado do eixo (%SW6004) muda de Stopping (3) para Standstill (2) e outros blocos MC poderão ser executados.