Function Block FB_AxisPlsPosModuloPLCopen motion iconPipe Network motion icon

Description

This function block can be used for any position of a modulo axis in both directions. The Boolean output oPLS is set to TRUE if the position has crossed the start position and is set to FALSE if the position has crossed the end position. The function block is executed cyclically. The function block has the possibility to compensate a delay time of the connected device, e .g. glue nozzles. It is also possible to define a hysteresis for switching on and off of the PLS.

Arguments

Input

ibExecute

Description

Enable PLS

 

Data type

BOOL

iPosition

Description

Any position of a modulo axis

 

Data type

LREAL

iModuloPosition

Description

Modulo position of axis

 

Data type

LREAL

iStartPos

Description

Start position of PLS

 

Data type

LREAL

iEndPos

Description

End position of PLS

 

Data type

LREAL

iDelayTime

Description

Delay time for compensation

 

Data type

TIME

iHysteresis

Description

Hysteresis

 

Data type

LREAL

ibForce

Description

Force PLS

 

Data type

BOOL

Output

oPLS

Description

Position limit switch

 

Data type

BOOL

Example

Timing

Hysteresis

ST

//PLSOutput is True when position input is between 180 and 270 with a T#2ms delay
//Can also force the output to be true with ForceOuput variable
//Hysteresis is on for 3 user units in case direction changes around start point
Inst_FB_AxisPlsPosModulo( EnablePLS, ActualPosition, ModuloPosition, 180, 270, T#2ms, 3, ForcePLS );

PLSOutput := Inst_FB_AxisPlsPosModulo.oPLS;

Function Block Diagram

FFLD

Go back to the top of the page [Top]