FB_HomePosToStation

 

FB_HomePosToStation - Allgemeine Informationen

Übersicht

Typ

Funktionsbaustein

Verfügbar ab

V1.0.0.0

Übernommen aus

-

Implementiert

-

Versionen:

Aktuelle Version

Aufgabe

Alle Züge geordnet in eine Station fahren.

Beschreibung

Der Baustein fährt alle Züge in eine Station. Die Ausgangspositionen der Züge müssen dabei zwischen -lrBeltLength und +lrBeltLength liegen. Nach Aufruf des Funktionsbausteins steht immer Zug 1 in i_stParameter.uiStation und die restlichen Züge stehen im Abstand von lrTrainsDistance dahinter. Die Bewegungsparameter können über die entsprechenden Eingänge festgelegt werden. Ein Einsatzzweck des Bausteins ist das Homing mit Absolutwert­gebern. Haben alle Züge ihre Endposition erreicht, wird q_xHomeOk auf TRUE gesetzt. Danach kann das Modul deaktiviert werden.

Schnittstelle

Eingang

Datentyp

Beschreibung

i_xEnable

BOOL

Eine steigende Flanke FALSE -> TRUE aktiviert den Baustein, fallende Flanke TRUE -> FALSE deaktiviert den Baustein.

Wenn der Baustein deaktiviert ist, führt er keine Aktionen aus.

i_xStart

BOOL

FALSE -> TRUE: Referenzfahrt wird gestartet.

i_stParameter

ST_HomePosToStationParameter

Parameterstruktur zum Referenzieren des MultiBelt-Verbunds

Ausgang

Datentyp

Beschreibung

q_xActive

BOOL

TRUE: Der Baustein ist eingeschaltet und muss weiter ausgeführt werden.

FALSE: Der Baustein ist abgeschaltet.

q_xReady

BOOL

TRUE: Der Baustein ist betriebsbereit und kann Benutzerbefehle entgegennehmen.

FALSE: Der Baustein ist nicht bereit, Anwenderbefehle entgegenzunehmen.

q_etDiag

GD.ET_Diag

Allgemeine bibliotheksunabhängige Aussage zur Diagnose.

Alle Werte außer GD.ET_Diag.Ok entsprechen einer Diagnosemeldung.

q_etDiagExt

ET_DiagExt

 Bausteinspezifischer Ausgang des Diagnosegeräts.

q_etDiag = GD.ET_Diag.Ok -> Statusmeldung

q_etDiag <> GD.ET_Diag.Ok -> Diagnosemeldung

q_sMsg

STRING[80]

Ereignisabhängige Meldung, die mehr Informationen zum Diagnosezustand liefert.

q_xHomeOk

BOOL

TRUE: Die Referenzfahrt ist erfolgreich abgeschlossen.

Ein-/Ausgang

Datentyp

Beschreibung

iq_stMultiBelt

ST_MultiBelt

Parameterstruktur des MultiBelt-Verbunds

Diagnosemeldungen

q_etDiag

q_etDiagExt

Aufzählungswert

Beschreibung

OK

Disabled

0

Der Baustein ist deaktiviert.

OK

WaitAllTrainsStopped

10

Warten bis alle Züge stillgesetzt wurden.

OK

WaitForHomeDone

16

Warten bis das Referenzieren abgeschlossen ist.

OK

WaitForStart

2

Warten auf Startbefehl.

OK

WaitForStartOff

11

Warten auf Rücksetzen des Starts.

InputParameterInvalid

ControllerStopInterfaceInvalid

101

Das ControllerStopInterface ist ungültig.

InputParameterInvalid

DriveLogAdrInvalid

26

Die Schnittstelle der Achse ist ungültig.

InputParameterInvalid

DriveNotSet

81

Die Achse wurde nicht gesetzt.

InputParameterInvalid

HomeAccelerationRange

85

Die Beschleunigung für das Referenzieren ist außerhalb des gültigen Bereichs.

InputParameterInvalid

HomeDecelerationRange

86

Die Verzögerung für das Referenzieren ist außerhalb des gültigen Bereichs.

InputParameterInvalid

HomeJerkRange

87

Der Ruck für das Referenzieren ist außerhalb des gültigen Bereichs.

InputParameterInvalid

HomeOffsetInvalid

30

Der Abstand zweier Züge ist ungültig.

InputParameterInvalid

HomeVelocityRange

84

Die Geschwindigkeit für das Referenzieren ist außerhalb des gültigen Bereichs.

InputParameterInvalid

LimitInterfaceInvalid

36

Die Schnittstelle Limit ist ungültig.

InputParameterInvalid

NumOfStationsRange

43

NumOfStations ist außerhalb des gültigen Bereichs.

InputParameterInvalid

RefActValuesInterfaceInvalid

80

Die Schnittstelle RefActValues ist ungültig.

InputParameterInvalid

SetLimitInterfaceInvalid

42

Die Schnittstelle SetLimit ist ungültig.

InputParameterInvalid

TrainOrderInvalid

31

Die Reihenfolge der Züge ist ungültig.

SercosConditionInvalid

SercosInterfaceInvalid

24

Die Sercos-Schnittstelle ist ungültig.

ControllerStopInterfaceInvalid

Aufzählungsname:

ControllerStopInterfaceInvalid

Aufzählungswert:

101

Beschreibung:

Das ControllerStopInterface ist ungültig.

Problem

Ursache

Lösung

-

ControllerStopInterface ungültig

Ungültiger Antriebstyp

Disabled

Aufzählungsname:

Disabled

Aufzählungswert:

0

Beschreibung:

Der Baustein ist deaktiviert.

Problem

Ursache

Lösung

-

Statusmeldung - Baustein ist nicht aktiviert.

Der Eingang i_xEnable ist FALSE.

Den Eingang i_xEnable auf TRUE setzen.

DriveLogAdrInvalid

Aufzählungsname:

DriveLogAdrInvalid

Aufzählungswert:

26

Beschreibung:

Die Schnittstelle der Achse ist ungültig.

Problem

Ursache

Lösung

-

Die Antriebsschnittstelle ist ungültig.

stMultiBelt.astTrain[x].ifDrive.stLogAdr ist nicht belegt oder ein ungültiger Wert.

DriveNotSet

Aufzählungsname:

DriveNotSet

Aufzählungswert:

81

Beschreibung:

Die Achse wurde nicht gesetzt.

Problem

Ursache

Lösung

-

Die Antriebsschnittstelle ist ungültig.

Der Parameter stMultiBelt.astTrain[x].ifDrive ist nicht belegt.

HomeAccelerationRange

Aufzählungsname:

HomeAccelerationRange

Aufzählungswert:

85

Beschreibung:

Die Beschleunigung für das Referenzieren ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der Parameter stHomePosToStationParameter.stMove.lrAcc liegt außerhalb seines Wertebereichs.

Der Parameter stHomePosToStationParameter.stMove.lrAcc muss > Gc_lrMinAcceleration sein.

HomeDecelerationRange

Aufzählungsname:

HomeDecelerationRange

Aufzählungswert:

86

Beschreibung:

Die Verzögerung für das Referenzieren ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der Parameter stHomePosToStationParameter.stMove.lrDec liegt außerhalb seines Wertebereichs.

Der Parameter stHomePosToStationParameter.stMove.lrDec muss > Gc_lrMinAcceleration sein.

HomeJerkRange

Aufzählungsname:

HomeJerkRange

Aufzählungswert:

87

Beschreibung:

Der Ruck für das Referenzieren ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der Parameter stHomePosToStationParameter.stMove.lrJerk liegt außerhalb seines Wertebereichs.

Der Parameter stHomePosToStationParameter.stMove.lrJerk muss > Gc_lrMinJerk sein.

HomeOffsetInvalid

Aufzählungsname:

HomeOffsetInvalid

Aufzählungswert:

30

Beschreibung:

Der Abstand zweier Züge ist ungültig.

Problem

Ursache

Lösung

-

Der Abstand zwischen zwei Zügen ist kleiner als die Zuglänge.

Die Züge müssen referenziert werden. Die Positionen der Züge sind verloren gegangen (Retain-Variablen) und müssen neu festgelegt werden.

HomeVelocityRange

Aufzählungsname:

HomeVelocityRange

Aufzählungswert:

84

Beschreibung:

Die Geschwindigkeit für das Referenzieren ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der Parameter stHomePosToStationParameter.stMove.lrVel liegt außerhalb seines Wertebereichs.

Der Parameter stHomePosToStationParameter.stMove.lrVel muss > Gc_lrMinVelocity sein.

LimitInterfaceInvalid

Aufzählungsname:

LimitInterfaceInvalid

Aufzählungswert:

36

Beschreibung:

Die Schnittstelle Limit ist ungültig.

Problem

Ursache

Lösung

-

Begrenzungsschnittstelle ist ungültig.

Ungültiger Antriebstyp

NumOfStationsRange

Aufzählungsname:

NumOfStationsRange

Aufzählungswert:

43

Beschreibung:

NumOfStations ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der Parameter stMultiBelt.stGeneral.uiNumOfStations liegt außerhalb seines Wertebereichs.

Der Parameter stMultiBelt.stGeneral.uiNumOfStations muss im Bereich von 1 bis Gc_uiMaxNumberOfStations liegen.

RefActValuesInterfaceInvalid

Aufzählungsname:

RefActValuesInterfaceInvalid

Aufzählungswert:

80

Beschreibung:

Die Schnittstelle RefActValues ist ungültig.

Problem

Ursache

Lösung

-

Die Schnittstelle RefActValues ist ungültig.

Ungültiger Antriebstyp

SercosInterfaceInvalid

Aufzählungsname:

SercosInterfaceInvalid

Aufzählungswert:

24

Beschreibung:

Die Sercos-Schnittstelle ist ungültig.

Problem

Ursache

Lösung

-

Die globale Sercos-Schnittstelle ist ungültig.

Falscher Antriebsbus oder falscher Controller.

Support kontaktieren

SetLimitInterfaceInvalid

Aufzählungsname:

SetLimitInterfaceInvalid

Aufzählungswert:

42

Beschreibung:

Die Schnittstelle SetLimit ist ungültig.

Problem

Ursache

Lösung

-

Die SetLimit-Schnittstelle ist ungültig.

Ungültiger Antriebstyp

TrainOrderInvalid

Aufzählungsname:

TrainOrderInvalid

Aufzählungswert:

31

Beschreibung:

Die Reihenfolge der Züge ist ungültig.

Problem

Ursache

Lösung

-

Die Reihenfolge der Züge stimmt nicht.

Die Züge müssen hintereinander stehen. Die Züge müssen referenziert werden.

WaitAllTrainsStopped

Aufzählungsname:

WaitAllTrainsStopped

Aufzählungswert:

10

Beschreibung:

Warten bis alle Züge stillgesetzt wurden.

Problem

Ursache

Lösung

-

Statusmeldung - Stopp beim Deaktivieren des FBs.

Eingang i_xEnable = FALSE

Setzen Sie den Eingang i_xEnable auf TRUE.

WaitForHomeDone

Aufzählungsname:

WaitForHomeDone

Aufzählungswert:

16

Beschreibung:

Warten bis das Referenzieren abgeschlossen ist.

Statusmeldung - Warten bis das Referenzieren abgeschlossen ist.

WaitForStart

Aufzählungsname:

WaitForStart

Aufzählungswert:

2

Beschreibung:

Warten auf Startbefehl.

Problem

Ursache

Lösung

-

Statusmeldung - Der Funktionsbaustein wartet auf den Start.

Der Eingang i_xStart ist FALSE.

Den Eingang i_xStart auf TRUE setzen.

WaitForStartOff

Aufzählungsname:

WaitForStartOff

Aufzählungswert:

11

Beschreibung:

Warten auf Rücksetzen des Starts.

Problem

Ursache

Lösung

-

Statusmeldung - Warten auf i_xStart = FALSE

Den Eingang i_xStart auf FALSE setzen.