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
Input
Channel number
Configurator PMX: SYS_PMX_CHANNEL_0–SYS_PMX_CHANNEL_3
Configurator PM7: SYS_PM7_AXIS_1–SYS_PM7_AXIS_8
Table number: 1–20
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.
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.
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.
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
When the variable bStartPositioning is set to TRUE, the function is carried out.
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;