F380_Positioning_Start

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

Parámetros

Entrada

s1_Channel (WORD, INT, UINT)

Número de canal

Configurator PMX: SYS_PMX_CHANNEL_0SYS_PMX_CHANNEL_3

Configurator PM7: SYS_PM7_AXIS_1SYS_PM7_AXIS_8

s2_TableNumber (WORD, INT, UINT)

Número de tabla: 1–20

s3_OutputCalculationOnly (WORD, INT, UINT)
Método de salida:
  • 0: salida de pulsos
  • 1: cálculos

Observaciones

  • 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.

Banderas de error

sys_bIsOperationErrorHold (pasa a TRUE y permanece TRUE)
  • 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.

sys_bIsOperationErrorNonHold (pasa a TRUE para un ciclo de scan)
  • 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.

Ejemplo

Cabecera de la POU

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

Cuerpo de la POU

Cuando la variable bStartPositioning pasa a TRUE, se ejecuta la función.

Cuerpo LD

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

Cuerpo en ST

IF DF(bStartPositioning) then
    F380_Positioning_Start(s1_Channel := iChannel0,
                           s2_TableNumber := 3,
                           s3_OutputCalculationOnly := 0);
END_IF;

Modificado el: 2024-06-03Comentarios sobre esta páginaLínea directa de Panasonic