MLFB_HomeMoveUntilPosErrExceeded
Description
When executed, the motor will move to the hard stop with a definable peak current. When the position error exceeds, the home Position is set.
Arguments
Input
ibExecute |
Description |
Start homing, edge-triggered |
Data type |
BOOL |
iAxisID |
Description |
ID of Axis block of Pipe Network |
Data type |
DINT |
iPosition |
Description |
Reference position |
Data type |
LREAL |
ibDirection |
Description |
0=positive, 1=negative |
Data type |
BOOL |
iVelocity |
Description |
Reference speed |
Data type |
LREAL |
iAcceleration |
Description |
Reference acceleration |
Data type |
LREAL |
iDeceleration |
Description |
Reference deceleration |
Data type |
LREAL |
iMaxPositionError |
Description |
Maximum position error |
Data type |
LREAL |
iPeakCurrent |
Description |
Peak current in mA |
Data type |
DINT |
iTimeout |
Description |
Time monitoring (T#0ms: off) |
Data type |
TIME |
Output
obDone |
Description |
Done bit |
Data type |
BOOL |
obActive |
Description |
Active bit |
Data type |
BOOL |
obError |
Description |
Error bit |
Data type |
BOOL |
oErrorID |
Description |
Error identifier, see list here
|
||||||||||||
Data type |
DINT |
Example
ST
//Call homing function on Axis1 with preset velocity, accel, and decel values
//Start in negative direction and go until position error exceeds input value or time out
//afterterwards set axis position to zero
//function block temporarily writes new max current value to 2 Amp while home routine active
Inst_MLFB_HomeMoveUntilPosErrExceeded( StartHomeRoutine,
PipeNetwork.AXIS1,
0,
1,
100,
1000,
1000,
MaxPosError,
2000,
T#30s );
HomeDone := Inst_MLFB_HomeMoveUntilPosErrExceeded.obDone;
Function Block Diagram
FFLD