FB_HomePosToStation - General Information

Overview

Type:

Function block

Available as of:

V1.0.0.0

Inherits from:

-

Implements:

-

Versions:

Current version

Task

Move the trains into a station.

Description

The module moves the trains into a station. Thereby, the home positions of the trains must be between -lrBeltLength and +lrBeltLength. After calling up the function block, the train 1 stands in i_stParameter.uiStation and the rest of the trains in the distance of lrTrainsDistance behind it. The motion parameters can be set via the respective inputs. The application of the POU is the homing with multiturn encoder. If all trains have reached their end position, q_xHomeOk is set to TRUE. Then the module can be deactivated.

Interface

Input

Data type

Description

i_xEnable

BOOL

A rising edge FALSE -> TRUE activates the POU, a falling edge TRUE -> FALSE deactivates the POU.

A deactivated POU does not execute any actions.

i_xStart

BOOL

FALSE -> TRUE: Reference run is started

i_stParameter

ST_HomePosToStationParameter

Parameter structure to reference the MultiBelt network

Output

Data type

Description

q_xActive

BOOL

TRUE: The POU is active and has to be executed further.

FALSE: The POU is inactive.

q_xReady

BOOL

TRUE: The POU is ready to operate and can accept user commands.

FALSE: The POU is not ready to accept user commands.

q_etDiag

GD.ET_Diag

General library-independent statement on the diagnostic.

A value unequal to GD.ET_Diag.Ok corresponds to a diagnostic message.

q_etDiagExt

ET_DiagExt

POU-specific output on the diagnostic.

q_etDiag = GD.ET_Diag.Ok -> status message

q_etDiag <> GD.ET_Diag.Ok -> diagnostic message

q_sMsg

STRING[80]

Event-triggered message which gives more detailed information on the diagnostic state.

q_xHomeOk

BOOL

TRUE: The reference run has been completed successfully.

Input/Output

Data type

Description

iq_stMultiBelt

ST_MultiBelt

Parameter structure of the MultiBelt network

Diagnostic Messages

q_etDiag

q_etDiagExt

Enumeration value

Description

OK

Disabled

0

The POU is disabled.

OK

WaitAllTrainsStopped

10

Wait until all the trains are stopped.

OK

WaitForHomeDone

16

Wait until the homing is completed.

OK

WaitForStart

2

Waiting for starting command.

OK

WaitForStartOff

11

Wait for the reset of the start.

InputParameterInvalid

ControllerStopInterfaceInvalid

101

The ControllerStopInterface is invalid.

InputParameterInvalid

DriveLogAdrInvalid

26

The interface of the axis is invalid.

InputParameterInvalid

DriveNotSet

81

The axis has not been set.

InputParameterInvalid

HomeAccelerationRange

85

The acceleration for the homing is outside the valid range.

InputParameterInvalid

HomeDecelerationRange

86

The deceleration for the homing is outside the valid range.

InputParameterInvalid

HomeJerkRange

87

The jerk for the homing is outside the valid range.

InputParameterInvalid

HomeOffsetInvalid

30

The distance between two trains is invalid.

InputParameterInvalid

HomeVelocityRange

84

The velocity for the homing is outside the valid range.

InputParameterInvalid

LimitInterfaceInvalid

36

The interface Limit is invalid.

InputParameterInvalid

NumOfStationsRange

43

NumOfStations is outside the valid range.

InputParameterInvalid

RefActValuesInterfaceInvalid

80

The interface RefActValues is invalid.

InputParameterInvalid

SetLimitInterfaceInvalid

42

The interface SetLimit is invalid.

InputParameterInvalid

TrainOrderInvalid

31

The sequence of the trains is invalid.

SercosConditionInvalid

SercosInterfaceInvalid

24

The Sercos interface is invalid.

ControllerStopInterfaceInvalid

Enumeration name:

ControllerStopInterfaceInvalid

Enumeration value:

101

Description:

The ControllerStopInterface is invalid.

Issue

Cause

Solution

ControllerStopInterface invalid.

Incorrect drive type.

Select a correct drive type.

Disabled

Enumeration name:

Disabled

Enumeration value:

0

Description:

The POU is disabled.

Issue

Cause

Solution

-

Status message - Function block is not activated.

The input i_xEnable is FALSE.

Set the input i_xEnable to TRUE.

DriveLogAdrInvalid

Enumeration name:

DriveLogAdrInvalid

Enumeration value:

26

Description:

The interface of the axis is invalid.

Issue

Cause

Solution

The drive interface is invalid.

stMultiBelt.astTrain[x].ifDrive.stLogAdr is not assigned or invalid value.

Assign or modify stMultiBelt.astTrain[x].ifDrive.stLogAdr.

DriveNotSet

Enumeration name:

DriveNotSet

Enumeration value:

81

Description:

The axis has not been set.

Issue

Cause

Solution

The drive interface is invalid.

The parameter stMultiBelt.astTrain[x].ifDrive is not assigned.

Assign the parameter stMultiBelt.astTrain[x].ifDrive.

HomeAccelerationRange

Enumeration name:

HomeAccelerationRange

Enumeration value:

85

Description:

The acceleration for the homing is outside the valid range.

Issue

Cause

Solution

The parameter stHomePosToStationParameter.stMove.lrAcc is invalid.

The parameter stHomePosToStationParameter.stMove.lrAcc is outside its value range.

The parameter stHomePosToStationParameter.stMove.lrAcc must be > Gc_lrMinAcceleration.

HomeDecelerationRange

Enumeration name:

HomeDecelerationRange

Enumeration value:

86

Description:

The deceleration for the homing is outside the valid range.

Issue

Cause

Solution

The parameter stHomePosToStationParameter.stMove.lrDec is invalid.

The parameter stHomePosToStationParameter.stMove.lrDec is outside its value range.

The parameter stHomePosToStationParameter.stMove.lrDec must be > Gc_lrMinAcceleration.

HomeJerkRange

Enumeration name:

HomeJerkRange

Enumeration value:

87

Description:

The jerk for the homing is outside the valid range.

Issue

Cause

Solution

The parameter stHomePosToStationParameter.stMove.lrJerk is invalid.

The parameter stHomePosToStationParameter.stMove.lrJerk is outside its value range.

The parameter stHomePosToStationParameter.stMove.lrJerk must be > Gc_lrMinJerk.

HomeOffsetInvalid

Enumeration name:

HomeOffsetInvalid

Enumeration value:

30

Description:

The distance between two trains is invalid.

Issue

Cause

Solution

The distance between two trains is invalid.

The distance between two trains is smaller than the train length.

The trains must be homed. The train positions are lost (retain variables) and must be set again.

HomeVelocityRange

Enumeration name:

HomeVelocityRange

Enumeration value:

84

Description:

The velocity for the homing is outside the valid range.

Issue

Cause

Solution

The parameter stHomePosToStationParameter.stMove.lrVel is invalid.

The parameter stHomePosToStationParameter.stMove.lrVel is outside its value range.

The parameter stHomePosToStationParameter.stMove.lrVel must be > Gc_lrMinVelocity.

LimitInterfaceInvalid

Enumeration name:

LimitInterfaceInvalid

Enumeration value:

36

Description:

The interface Limit is invalid.

Issue

Cause

Solution

Limit interface is invalid.

Incorrect drive type.

Select a correct drive type.

NumOfStationsRange

Enumeration name:

NumOfStationsRange

Enumeration value:

43

Description:

NumOfStations is outside the valid range.

Issue

Cause

Solution

The parameter stMultiBelt.stGeneral.uiNumOfStations is invalid.

The parameter stMultiBelt.stGeneral.uiNumOfStations is outside its value range.

The parameter stMultiBelt.stGeneral.uiNumOfStations must be in the range from 1 to Gc_uiMaxNumberOfStations.

RefActValuesInterfaceInvalid

Enumeration name:

RefActValuesInterfaceInvalid

Enumeration value:

80

Description:

The interface RefActValues is invalid.

Issue

Cause

Solution

RefActValues interface is invalid.

Incorrect drive type.

Select a correct drive type.

SercosInterfaceInvalid

Enumeration name:

SercosInterfaceInvalid

Enumeration value:

24

Description:

The Sercos interface is invalid.

Issue

Cause

Solution

The global Sercos interface is invalid.

Incorrect drive bus or incorrect controller.

Modify the drive bus or the controller.

SetLimitInterfaceInvalid

Enumeration name:

SetLimitInterfaceInvalid

Enumeration value:

42

Description:

The interface SetLimit is invalid.

Issue

Cause

Solution

SetLimit interface is invalid.

Incorrect drive type.

Select a correct drive type.

TrainOrderInvalid

Enumeration name:

TrainOrderInvalid

Enumeration value:

31

Description:

The sequence of the trains is invalid.

Issue

Cause

Solution

The sequence of the trains is incorrect.

The trains must be positioned one after the other.

The trains must be homed.

WaitAllTrainsStopped

Enumeration name:

WaitAllTrainsStopped

Enumeration value:

10

Description:

Wait until all the trains are stopped.

Issue

Cause

Solution

-

Status message - Stop when deactivating the function block.

Input i_xEnable = FALSE.

Set input i_xEnable to TRUE.

WaitForHomeDone

Enumeration name:

WaitForHomeDone

Enumeration value:

16

Description:

Wait until the homing is completed.

Status message - Wait until the homing is completed.

WaitForStart

Enumeration name:

WaitForStart

Enumeration value:

2

Description:

Waiting for starting command.

Issue

Cause

Solution

-

Status message - The function block waits for start.

The input i_xStart is FALSE.

Set the input i_xStart to TRUE.

WaitForStartOff

Enumeration name:

WaitForStartOff

Enumeration value:

11

Description:

Wait for the reset of the start.

Issue

Cause

Solution

-

Status message - Wait for i_xStart = FALSE.

Set the input i_xStart to FALSE.