Ejecutar la tabla de posicionamiento
Esta instrucción inicia la operación de posicionamiento de acuerdo con los datos especificados en la memoria de posicionamiento (área de la tabla de posicionamiento). Son posibles las siguientes operaciones:
Control E (punto final)
Control P (punto de paso (P ® E)
Control C (punto de continuación) (C ® E)
Control J (punto de velocidad) (J ® E)
Interpolación lineal
Entrada
Número de canal
Configurator PMX: SYS_PMX_CHANNEL_0–SYS_PMX_CHANNEL_3
Configurator PM7: SYS_PM7_AXIS_1–SYS_PM7_AXIS_8
Número de tabla: 1–20
Si un operando es un valor fuera de rango, se produce un error de operación.
La operación de parada tiene prioridad cuando se cumplen las condiciones de parada del sistema, parada de emergencia, parada por límite y parada de desaceleración.
Se produce un error de operación cuando el registro de sistema de un canal especificado es distinto de Salida de pulsos [Tabla de operaciones].
Se produce un error de autodiagnóstico (error de operación de posicionamiento) cuando el valor de preselección o el valor de la memoria de posicionamiento (área de configuración de eje) es anormal.
Cuando el canal que se va a poner en marcha ya está en funcionamiento, el control de posición finaliza.
Cuando se especifica solo cálculo para s3_OutputCalculationOnly, solo se ejecuta el cálculo de la tabla. Cuando se inicia la operación de posicionamiento para el mismo canal y la misma tabla a partir del siguiente ciclo de scan después de ejecutar el cálculo, se reduce el tiempo de arranque del control de posicionamiento.
si el área especificada utilizando el modificador índice supera el límite.
Si el valor especificado para un parámetro está fuera del rango permitido.
si Salida de pulsos [Tabla de operaciones] no se ha activado en el registro del sistema.
si el área especificada utilizando el modificador índice supera el límite.
Si el valor especificado para un parámetro está fuera del rango permitido.
si Salida de pulsos [Tabla de operaciones] no se ha activado en el registro del sistema.
Todas las variables de entrada y de salida utilizadas para la programación de esta función han sido declaradas en la Cabecera de la POU. Se utiliza la misma cabecera de la POU para todos los lenguajes de programación.
VAR
bStartPositioning: BOOL:=FALSE;
iChannel0: INT:=0;
END_VAR
Cuando la variable bStartPositioning pasa a TRUE, se ejecuta la función.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 7 ;
NETWORK_BODY
B(B_F,F380_Positioning_Start!,,13,1,27,7,,?DEN?Ds1_Channel?Ds2_TableNumber?Ds3_OutputCalculationOnly?AENO);
B(B_CONTACT,,bStartPositioning,6,2,8,4,R);
B(B_VARIN,,iChannel0,11,3,13,5,);
B(B_VARIN,,3,11,4,13,6,);
B(B_VARIN,,0,11,5,13,7,);
L(1,3,6,3);
L(8,3,13,3);
L(1,0,1,7);
END_NETWORK_BODY
END_NET_WORK
END_BODY
IF DF(bStartPositioning) then
F380_Positioning_Start(s1_Channel := iChannel0,
s2_TableNumber := 3,
s3_OutputCalculationOnly := 0);
END_IF;