Skip to main content

Pronóstico

La función de previsión se puede utilizar para consultar información sobre el movimiento futuro de un eje. Una aplicación importante del pronóstico es determinar el tiempo hasta que se alcanza una posición (similar a la funcionalidad de activación). Otra aplicación es determinar la posición y velocidad que tendrá un eje en un momento dado. De esta manera se pueden compensar tiempos muertos al conectar actuadores, por ejemplo al conectar una boquilla de encolado. También se puede utilizar para controlar con precisión actuadores con tiempo muerto, como controlar la salida de encolado en función de la velocidad del eje 100 ms en el futuro.

Para implementar estas aplicaciones, puede utilizar el SMC_GetTravelTime y SMC_ReadSetValues bloques de funciones después de haber configurado la duración del pronóstico con SMC_SetForecast.

Para ver un ejemplo de uso, consulte: Previsión de movimientos de un solo eje

Bloques de funciones de movimiento con funcionalidad de previsión.

tabla 39. La siguiente descripción general muestra qué bloques de funciones admiten la función de pronóstico.

Bloque de funciones

Pronóstico

MC_Home

--

MC_Stop

MC_Halt

MC_MoveAbsolute

MC_MoveRelative

MC_MoveAdditive

MC_MoveSuperimposed

MC_HaltSuperimposed

MC_MoveVelocity

SMC_MoveContinuousAbsolute

SMC_MoveContinuousRelative

MC_PositionProfile

MC_VelocityProfile

MC_AccelerationProfile

--

MC_CamIn

MC_CamOut

MC_GearIn

MC_GearOut

MC_GearInPos

SMC_FollowPosition

SMC_FollowVelocity

SMC_FollowPositionVelocity

SMC_FollowSetValues

--

SMC_SetTorque

--

MC_Phasing

MC_Jog

SMC_Inch

SMC_BacklashCompensation



Habilitar la función de pronóstico

La función de pronóstico está deshabilitada de forma predeterminada. Esto significa que SMC_ReadSetValues devuelve valores válidos sólo para un TimeOffset entre 0 s (inicio del ciclo de tarea actual) y el intervalo de tarea (final del ciclo de tarea actual), y SMC_GetTravelTime devuelve un tiempo válido sólo para las posiciones que se alcanzan en este ciclo.

El SMC_SetForecast El bloque de funciones se utiliza para configurar la duración del pronóstico requerido y el SMC_GetForecast El bloque de funciones se utiliza para leer.

Notas:

  • La duración del pronóstico se puede cambiar en cualquier momento.

  • Evite una duración de pronóstico innecesariamente larga porque el cálculo del pronóstico consume tiempo de cálculo. Seleccione el valor más pequeño que sea suficiente para su aplicación.

  • Si utiliza bloques de funciones maestro/esclavo (como MC_CamIn), entonces la previsión debe estar habilitada tanto para el eje maestro como para el eje esclavo.

Orden de llamada

Para que la función de pronóstico produzca los mejores resultados posibles, es importante asegurarse de que los bloques de funciones maestro/esclavo se llamen en el orden correcto. Esto aplica a MC_CamIn, MC_GearIn, MC_GearInPos, MC_Phasing, SMC_BacklashCompensation, y SMC_TrackAxis. El bloque de funciones de movimiento del eje maestro debe llamarse antes que el bloque de funciones maestro/esclavo.

Incluso sin previsión, la trayectoria es mejor cuando el orden de llamada es correcto. Cuando el orden es incorrecto, el movimiento del esclavo se retrasa un ciclo.

Para MC_SetOverride, este bloque de funciones también debe llamarse antes de los bloques de funciones de movimiento del eje. Al cambiar la anulación, el movimiento del eje se cambia en el mismo ciclo de tarea. Como resultado, los valores determinados previamente según el pronóstico pierden su validez. Están decididos nuevamente la próxima vez. SMC_GetTravelTime o SMC_ReadSetValues se llama.

Modos de búfer

La función de previsión no se limita a un único movimiento. También se extiende a todos los movimientos posteriores que se ordenan con un modo de mezcla o búfer almacenado en búfer.

Cuando se ejecuta un movimiento de aborto en un eje, cambia el movimiento del eje en este ciclo de tarea. Como resultado, los valores determinados previamente según el pronóstico pierden su validez. Están decididos nuevamente la próxima vez. SMC_GetTravelTime o SMC_ReadSetValues se llama.

Previsión/restricciones efectivas

Idealmente, la duración efectiva del pronóstico disponible es igual a la duración del pronóstico configurado. Sin embargo, existen algunos factores que pueden provocar que la previsión efectiva sea más corta que la previsión configurada.

  • Cuando se ejecuta un movimiento maestro/esclavo, la previsión efectiva del esclavo es el mínimo de la previsión efectiva del maestro y la previsión configurada del esclavo.

  • Para ejes lógicos y ejes codificadores, la previsión efectiva es siempre 0.

  • Si el bloque de funciones de movimiento activo no admite la función de pronóstico, entonces el pronóstico efectivo también es 0.

En todos los demás casos, la previsión efectiva es la misma que la previsión configurada.