Cronograma de inicio de posicionamiento de un servo — El «en posición» justo después del inicio aún es el de la posición anterior (ejemplo)

Última actualización: 2026-09-23 / Categoría: Ejemplos, cronogramas

Cronograma de un movimiento, desde que el PLC pasa la posición objetivo al servoamplificador y lanza el inicio hasta que decide que el movimiento ha terminado (divisiones de 0,1 s). Dibujado para quien avanzó con el en posición de justo después del inicio y el siguiente paso empezó antes de que el eje se moviera.

Abrir este ejemplo en el editor Descargar el JSON

El editor gratuito, que funciona en el navegador, se abre en otra pestaña con este cronograma cargado. Sin instalación ni registro, y nada de lo que introduce se envía a ningún sitio. Modificarlo no cambia el ejemplo de esta página. El JSON es el dato de origen para volver a abrirlo en el editor o pasárselo a una IA (formato: especificación de la estructura de datos JSON).

Cronograma de inicio de posicionamiento de un servo. bStartOK (condición de inicio) se mantiene en ON. Después de que nTargetPos (posición objetivo) cambie de 0 a 50000, bStartReq (inicio de posicionamiento) pasa a ON. Con eso, bBusy (Busy) pasa a ON y bInPos (en posición), que estaba en ON por la posición anterior, pasa a OFF. Con Busy en ON, el inicio pasa a OFF. Tras un movimiento de 1,2 s, en posición pasa a ON, después Busy pasa a OFF y, con eso, bMoveDone (movimiento completado) pasa a ON. Los cambios están unidos por flechas de puntos.
Los 1,2 s de S3 a S15 son un movimiento de 50000 pulsos, determinado por la velocidad y la aceleración. Los 0,3 s de S15 a S18 suponen, en este diagrama, que Busy espera a la estabilización (en algunos modelos es 0, o el orden es el inverso). Por eso no se traza flecha entre Busy OFF y en posición ON, y movimiento completado se activa en el Step en que se cumplen los dos. La condición de inicio solo tiene que seguir en ON, así que tampoco lleva flecha.

1. Seis señales; movimiento completado se genera dentro del PLC

SeñalSentidoSignificado
bStartOKPLC (interno)Condición de inicio: servo ON y sin alarma del servoamplificador, más origen fijado. Origen fijado significa vuelta al origen completada o, con encoder absoluto, que la posición es válida
nTargetPosPLC → servoamplificadorPosición objetivo [pulsos]
bStartReqPLC → servoamplificadorInicio de posicionamiento
bBusyServoamplificador → PLCBusy. En ON desde que se acepta el inicio hasta que termina el posicionamiento. En este diagrama sirve también de acuse de recepción
bInPosServoamplificador → PLCEn posición. Según el modelo, pasa a ON cuando la diferencia con la posición objetivo, o entre la posición ordenada y la actual (error de seguimiento), entra en la banda fijada
bMoveDonePLC (interno)Movimiento completado. Condición para pasar al siguiente paso. Cuando, tras haber visto Busy en ON después del inicio, se cumplen Busy OFF y en posición ON. Se excluye lo que se ha parado por una petición de parada o por error

2. Un movimiento sigue el orden posición objetivo → inicio → Busy → completado

3. El inicio se retira tras ver el acuse; el completado se decide tras ver Busy en ON

  1. Iniciar solo cuando haya llegado la posición objetivo Si el inicio llega antes, el eje se mueve a la posición objetivo anterior. Dentro del PLC se deja un scan; en red, un periodo de actualización. Si un valor de 32 bits se envía en dos palabras, compruebe que se envían juntas.
  2. Retirar el inicio solo tras ver el acuse de recepción Un pulso de un scan desaparece si es más corto que el periodo de lectura de la otra parte. Si se retira tras ver Busy en ON, funciona igual con recepción por flanco o por nivel. En los PLC cuyo método exige mantener en ON la entrada de orden durante todo el movimiento, se comprueba antes.
  3. Decidir el completado solo tras ver Busy en ON después del inicio Porque en posición sigue en ON de la posición anterior. Es completado cuando Busy ha pasado a ON una vez tras el inicio y después se cumplen Busy OFF y en posición ON. En los modelos que oscilan, se exige que el ON dure unas decenas de ms.
  4. Prever inicios con un recorrido muy pequeño Porque Busy termina en unos ms y se pierde. En los modelos que retienen el acuse de recepción se usa ese acuse; en los que no lo tienen, si la diferencia entre objetivo y posición actual está dentro de la banda de en posición, se da por completado sin iniciar.
  5. No reescribir la posición objetivo durante Busy Porque cuándo se aplica depende del modelo y de la configuración. Se reescribe después de movimiento completado.

4. Si no inicia o no termina, dar fallo por límite de tiempo

A cada espera se le pone un límite de tiempo y, si se supera, se da fallo. El límite del movimiento es el tiempo calculado a partir del recorrido, la velocidad y la aceleración, más un margen de estabilización.

La recuperación tras una parada por alarma se dibuja aparte, en otro cronograma o en un diagrama de flujo, porque según el tipo de alarma cambia si hay que repetir la vuelta al origen.

5. Aunque la conexión sea distinta, se reinterpreta en las mismas tres señales: inicio, Busy y completado

Las herramientas con las que se hizo este ejemplo

  • Timing Chart Editor — La figura de arriba y el JSON del ejemplo se crearon y exportaron con este editor.
  • Flowchart Editor — Convierte las flechas del cronograma en una secuencia de esperas y procesos.

Artículos relacionados

yk.builds