FB_AxisPlsPosNoModulo

PLCopen motion icon Pipe Network motion icon

 Function Block - Used for any position of a non-modulo axis in both directions.

Inputs

Input

Data Type

Range

Unit

Default

Description

ibExecute

BOOL

FALSE, TRUE

N/A

No default

Enable PLS.

iPosition

LREAL

No range

User units

No default

Any position of a non-modulo axis.

iStartPos

LREAL

No range

User units

No default

Start position of PLS.

iEndPos

LREAL

No range

User units

No default

End position of PLS.

iDelayTime

TIME

0ms - 24hr

TIME

No default

Delay time for compensation.

iHysteresis

LREAL

No range

User units

No default

Hysteresis.

ibForce

BOOL

FALSE, TRUE

N/A

No default

Force PLS.

Outputs

Output

Data Type

Range

Unit

Description

oPLS

BOOL

FALSE, TRUE

N/A

Position limit switch.

Remarks

  • The Boolean output oPLS is set to:
    • TRUE if the position has crossed the start position.
    • FALSE if the position has crossed the end position.
  • The function block has the possibility to compensate a delay time of the connected device (e.g., glue nozzles).
  • It is possible to define a hysteresis for switching on and off of the PLS.

Timing

Hysteresis

FBD Language Example

FFLD Language Example

IL Language Example

Not available.

ST Language Example

//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_AxisPlsPosNoModulo( EnablePLS, ActualPosition, 180, 270, T#2ms, 3, ForcePLS );

PLSOutput := Inst_FB_AxisPlsPosNoModulo.oPLS;