F380_Positioning_Start

Positioning table start

This instruction starts the positioning operation according to the data specified in the positioning memory (positioning table area). The following operations are possible:

  • E (end point) control

  • P (pass point) control (P ® E)

  • C (continuation point) control (C ® E)

  • J (speed point) control (J ® E)

  • Linear interpolation

Parameters

Input

s1_Channel (WORD, INT, UINT)

Channel number

Configurator PMX: SYS_PMX_CHANNEL_0SYS_PMX_CHANNEL_3

Configurator PM7: SYS_PM7_AXIS_1SYS_PM7_AXIS_8

s2_TableNumber (WORD, INT, UINT)

Table number: 1–20

s3_OutputCalculationOnly (WORD, INT, UINT)
Output method:
  • 0: pulse output
  • 1: calculation only

Remarks

  • If an operand is an out-of-range value, an operation error occurs.

  • The stop operation has priority when the conditions of system stop, emergency stop, limit stop and deceleration stop are satisfied.

  • An operation error occurs when the system register of a specified channel is other than Pulse output [Table operation].

  • A self-diagnostic error (positioning operation error) occurs when the set value or the value of the positioning memory (axis setting area) is abnormal.

  • When the channel to be started has been already operating, the positioning control terminates.

  • When calculation only is specified for s3_OutputCalculationOnly, only the table calculation is executed. When starting the positioning operation for the same channel and the same table from the next scan after executing the calculation, the start-up time of the positioning control is reduced.

Error flags

sys_bIsOperationErrorHold (turns to TRUE and remains TRUE)
  • if the area specified using the index modifier exceeds the limit.

  • if a value specified for a parameter is outside the permissible range.

  • if Pulse output [Table operation] has not been set in the system register.

sys_bIsOperationErrorNonHold (turns to TRUE for one scan)
  • if the area specified using the index modifier exceeds the limit.

  • if a value specified for a parameter is outside the permissible range.

  • if Pulse output [Table operation] has not been set in the system register.

Example

POU header

All input and output variables used for programming this function have been declared in the POU header. The same POU header is used for all programming languages.

	VAR
		bStartPositioning: BOOL:=FALSE;
		iChannel0: INT:=0;
	END_VAR

POU body

When the variable bStartPositioning is set to TRUE, the function is carried out.

LD body

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

ST body

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

Modified on: 2024-03-06Feedback on this pagePanasonic hotline