Function Block MLFB_HomeFindLimitInputThenZeroAnglePipe Network motion icon

Description

UDFB HomeFindLimitInputThenZeroAngle

Similar to the Find Input Limit method, the find input limit then find zero angle. Mode follows the same steps, but upon completion of the move, it continues to move to find the zero angle reference of the motor.

Arguments

Input

ibExecute

Description

Start homing, edge-triggered

 

Data type

BOOL

iAxisID

Description

ID of Axis block of Pipe Network

 

Data type

BOOL

iPosition

Description

Reference position

 

Data type

BOOL

ibDirection

Description

0=positive, 1=negative

 

Data type

BOOL

iVelocity

Description

Reference speed

 

Data type

BOOL

iAcceleration

Description

Reference acceleration

 

Data type

BOOL

iDeceleration

Description

Reference deceleration

 

Data type

BOOL

ibLimitSwitch

Description

Pos. or neg. limit switch, high-active (depends on ibDirection)

 

Data type

BOOL

iTimeout

Description

Time monitoring (T#0ms: off)

 

Data type

BOOL

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

ErrorID Description
1 Axis in error
2 Axis not enabled
3 Timeout expired
4 SDO read/write error
5 Input parameter out of range
 

Data type

DINT

Example

ST

//Call homing function on Axis1 with preset velocity, accel, and decel values
//Start in negative direction and stop when axis hits limit switch or times out
//after seeing limit switch, moves to zero angle and set axis position to zero
Inst_MLFB_HomeFindLimitInputThenZeroAngle( StartHomeRoutine,
PipeNetwork.AXIS1,
0,
TRUE,
100,
1000,
1000,
HomeDigitalInput,
T#30s );

HomeDone := Inst_MLFB_HomeFindLimitInputThenZeroAngle.obDone;

Function Block Diagram

FFLD

Go back to the top of the page [Top]