MLFB_PlsPosFwBw
Function Block - Forward/backward position range indicator.
Inputs
Input |
Data Type |
Range |
Unit |
Default |
Description |
---|---|---|---|---|---|
ibExecute |
BOOL |
|
|
|
Enable PLS. |
iAnyModuloBlkID |
DINT |
|
|
|
Any modulo pipe network block ID. |
iStartPos |
LREAL |
|
|
|
Start position of PLS. |
iEndPos |
LREAL |
|
|
|
End position of PLS. |
iDelayTime |
TIME |
|
|
|
Delay time for compensation. |
iHysteresis |
LREAL |
|
|
|
Hysteresis. |
ibForce |
BOOL |
|
|
|
Force PLS. |
Outputs
Output |
Data Type |
Range |
Unit |
Description |
---|---|---|---|---|
oPLS |
BOOL |
|
N/A |
Position limit switch. |
Remarks
- Used in the command or actual position path, e.g., sampler pipe with noisy position, in both directions.
- Any modulo pipe block is needed, which can also be used for another instance of this UDFB.
- It is also possible to define a hysteresis for switching on and off of the PLS.
- 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 is executed cyclically.
- The modulo position is considered.
- The function block has the possibility to compensate a delay time of the connected device (e.g., glue nozzles).
Timing
Hysteresis
FBD Language Example
FFLD Language Example
IL Language Example
Not available.
ST Language Example
//PLSOutput is True when chosen comparator 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_MLFB_PlsPosFwBw( EnablePLS, PipeNetwork.COMPARATOR, 180, 270, T#2ms, 3, ForceOutput );
PLSOutput := Inst_MLFB_PlsPosFwBW.oPLS;