MLFB_HomeFindLimitInputThenZeroAngle

Pipe Network motion icon

 Function Block - Homing to a limit switch plus zero angle.

Inputs

Input

Data Type

Range

Unit

Default

Description

ibExecute

BOOL

 

 

 

 

 

 

Start homing, edge-triggered.

iAxisID

BOOL

 

 

 

 

 

 

ID of the axis block of the Pipe Network.

iPosition

BOOL

 

 

 

 

 

 

Reference position.

ibDirection

BOOL

 

 

 

 

 

 

  • 0 (zero) = Positive.
  • 1 = Negative.

iVelocity

BOOL

 

 

 

 

 

 

Reference speed.

iAcceleration

BOOL

 

 

 

 

 

 

Reference acceleration.

iDeceleration

BOOL

 

 

 

 

 

 

Reference deceleration.

ibLimitSwitch

BOOL

 

 

 

 

 

 

Positive or negative limit switch, high-active.

Depends on the ibDirection.

iTimeout

BOOL

 

 

 

 

 

 

Time monitoring (T#0ms: off).

Outputs

Output

Data Type

Range

Unit

Description

obDone

BOOL

FALSE, TRUE

N/A

Done bit.

obActive

BOOL

FALSE, TRUE

N/A

Active bit.

obError

BOOL

FALSE, TRUE

N/A

Error bit.

oErrorID

DINT

 

 

N/A

Error identifier:

ErrorID

Description

1

Axis in error.

2

Axis is not enabled.

3

Timeout exceeded or expired.

4

SDO read / write error.

5

Input parameter out of range.

Remarks

  • 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.

FBD Language Example

FFLD Language Example

IL Language Example

Not available.

ST Language Example

//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;

See Also