Typ: |
Funktionsbaustein |
Verfügbar ab: |
V1.0.0.0 |
Übernommen aus: |
- |
Implementiert: |
- |
Versionen: |
Aktuelle Version |
Das Modul fährt die Züge in eine Station. Die Ausgangspositionen der Züge müssen dabei zwischen -lrBeltLength und +lrBeltLength liegen. Nach Aufruf des Funktionsbausteins steht Zug 1 in i_stParameter.uiStation und die restlichen Züge stehen im definierten Abstand lrTrainsDistance dahinter. Die Bewegungsparameter können über die entsprechenden Eingänge festgelegt werden. Ein Einsatzzweck des Bausteins ist das Homing mit Absolutwertgebern. Wenn alle Züge ihre Endposition erreicht haben, wird q_xHomeOk auf TRUE gesetzt. Danach kann das Modul deaktiviert werden.
Eingang |
Datentyp |
Beschreibung |
---|---|---|
i_xEnable |
BOOL |
Eine steigende Flanke FALSE -> TRUE aktiviert den Baustein, eine fallende Flanke TRUE -> FALSE deaktiviert den Baustein. Wenn die POU deaktiviert ist, führt sie keine Aktionen aus. |
i_xStart |
BOOL |
FALSE -> TRUE: Referenzfahrt wird gestartet. |
i_stParameter |
Parameterstruktur zur Referenzierung des MultiBelt-Verbunds. |
Ausgabe |
Datentyp |
Beschreibung |
---|---|---|
q_xActive |
BOOL |
TRUE: Die POU ist aktiv und muss weiter ausgeführt werden. FALSE: Die POU ist inaktiv. |
q_xReady |
BOOL |
TRUE: Die POU ist betriebsbereit und kann Benutzerbefehle entgegennehmen. FALSE: Die POU ist nicht bereit, Anwenderbefehle entgegenzunehmen. |
q_etDiag |
Allgemeingültige, bibliotheksunabhängige Aussage zur Diagnose. Ein Wert ungleich GD.ET_Diag.Ok entspricht einer Diagnosemeldung. |
|
q_etDiagExt |
POU-spezifischer Ausgang zur Diagnose. q_etDiag = GD.ET_Diag.Ok -> Statusmeldung q_etDiag <> GD.ET_Diag.Ok -> Diagnosemeldung |
|
q_sMsg |
STRING[80] |
Ereignisabhängige Meldung, die den Diagnosezustand konkretisiert. |
q_xHomeOk |
BOOL |
TRUE: Die Referenzfahrt wurde erfolgreich abgeschlossen. |
Ein-/Ausgang |
Datentyp |
Beschreibung |
---|---|---|
iq_stMultiBelt |
Parameterstruktur des MultiBelt-Verbunds |
q_etDiag |
q_etDiagExt |
Enumerationswert |
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. |
Enumerationsname: |
ControllerStopInterfaceInvalid |
Enumerationswert: |
101 |
Beschreibung: |
Das ControllerStopInterface ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
Das ControllerStopInterface ist ungültig. |
Ungültiger Antriebstyp. |
Wählen Sie einen gültigen Antriebstyp aus. |
Enumerationsname: |
Disabled |
Enumerationswert: |
0 |
Beschreibung: |
Der Baustein ist deaktiviert. |
Problem |
Ursache |
Lösung |
---|---|---|
Der Baustein ist deaktiviert. |
Statusmeldung – Funktionsbaustein ist nicht aktiviert. Der Eingang i_xEnable ist FALSE. |
Setzen Sie den Eingang i_xEnable auf TRUE. |
Enumerationsname: |
DriveLogAdrInvalid |
Enumerationswert: |
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 zugewiesen oder ein ungültiger Wert. |
Belegen oder ändern Sie stMultiBelt.astTrain[x].ifDrive.stLogAdr. |
Enumerationsname: |
DriveNotSet |
Enumerationswert: |
81 |
Beschreibung: |
Die Achse wurde nicht gesetzt. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Antriebsschnittstelle ist ungültig. |
Der Parameter stMultiBelt.astTrain[x].ifDrive ist nicht zugewiesen. |
Weisen Sie den Parameter stMultiBelt.astTrain[x].ifDrive zu. |
Enumerationsname: |
HomeAccelerationRange |
Enumerationswert: |
85 |
Beschreibung: |
Die Beschleunigung für das Referenzieren ist außerhalb des gültigen Bereichs. |
Problem |
Ursache |
Lösung |
---|---|---|
Der Parameter stHomePosToStationParameter.stMove.lrAcc ist ungültig. |
Der Parameter stHomePosToStationParameter.stMove.lrAcc liegt außerhalb seines Wertebereichs. |
Der Parameter stHomePosToStationParameter.stMove.lrAcc muss > Gc_lrMinAcceleration sein. |
Enumerationsname: |
HomeDecelerationRange |
Enumerationswert: |
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 ist ungültig. |
Der Parameter stHomePosToStationParameter.stMove.lrDec liegt außerhalb seines Wertebereichs. |
Der Parameter stHomePosToStationParameter.stMove.lrDec muss > Gc_lrMinAcceleration sein. |
Enumerationsname: |
HomeJerkRange |
Enumerationswert: |
87 |
Beschreibung: |
Der Ruck für das Referenzieren ist außerhalb des gültigen Bereichs. |
Problem |
Ursache |
Lösung |
---|---|---|
Der Parameter stHomePosToStationParameter.stMove.lrJerk ist ungültig. |
Der Parameter stHomePosToStationParameter.stMove.lrJerk liegt außerhalb seines Wertebereichs. |
Der Parameter stHomePosToStationParameter.stMove.lrJerk muss > Gc_lrMinJerk sein. |
Enumerationsname: |
HomeOffsetInvalid |
Enumerationswert: |
30 |
Beschreibung: |
Der Abstand zweier Züge ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
Der Abstand zweier Züge ist ungültig. |
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. |
Enumerationsname: |
HomeVelocityRange |
Enumerationswert: |
84 |
Beschreibung: |
Die Geschwindigkeit für das Referenzieren ist außerhalb des gültigen Bereichs. |
Problem |
Ursache |
Lösung |
---|---|---|
Der Parameter stHomePosToStationParameter.stMove.lrVel ist ungültig. |
Der Parameter stHomePosToStationParameter.stMove.lrVel liegt außerhalb seines Wertebereichs. |
Der Parameter stHomePosToStationParameter.stMove.lrVel muss > Gc_lrMinVelocity sein. |
Enumerationsname: |
LimitInterfaceInvalid |
Enumerationswert: |
36 |
Beschreibung: |
Die Schnittstelle Limit ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Schnittstelle Limit ist ungültig. |
Ungültiger Antriebstyp. |
Wählen Sie einen gültigen Antriebstyp aus. |
Enumerationsname: |
NumOfStationsRange |
Enumerationswert: |
43 |
Beschreibung: |
NumOfStations ist außerhalb des gültigen Bereichs. |
Problem |
Ursache |
Lösung |
---|---|---|
Der Parameter stMultiBelt.stGeneral.uiNumOfStations ist ungültig. |
Der Parameter stMultiBelt.stGeneral.uiNumOfStations liegt außerhalb seines Wertebereichs. |
Der Parameter stMultiBelt.stGeneral.uiNumOfStations muss im Bereich von 1 bis Gc_uiMaxNumberOfStations liegen. |
Enumerationsname: |
RefActValuesInterfaceInvalid |
Enumerationswert: |
80 |
Beschreibung: |
Die Schnittstelle RefActValues ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Schnittstelle RefActValues ist ungültig. |
Ungültiger Antriebstyp. |
Wählen Sie einen gültigen Antriebstyp aus. |
Enumerationsname: |
SercosInterfaceInvalid |
Enumerationswert: |
24 |
Beschreibung: |
Die Sercos-Schnittstelle ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
Die globale Sercos-Schnittstelle ist ungültig. |
Falscher Antriebsbus oder falscher Controller. |
Ändern Sie den Antriebsbus oder den Controller. |
Enumerationsname: |
SetLimitInterfaceInvalid |
Enumerationswert: |
42 |
Beschreibung: |
Die Schnittstelle SetLimit ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Schnittstelle SetLimit ist ungültig. |
Ungültiger Antriebstyp. |
Wählen Sie einen gültigen Antriebstyp aus. |
Enumerationsname: |
TrainOrderInvalid |
Enumerationswert: |
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. |
Enumerationsname: |
WaitAllTrainsStopped |
Enumerationswert: |
10 |
Beschreibung: |
Warten bis alle Züge stillgesetzt wurden. |
Problem |
Ursache |
Lösung |
---|---|---|
Warten bis alle Züge stillgesetzt wurden. |
Statusmeldung – Stopp beim Deaktivieren des Funktionsbausteins. Eingang i_xEnable = FALSE. |
Setzen Sie den Eingang i_xEnable auf TRUE. |
Enumerationsname: |
WaitForHomeDone |
Enumerationswert: |
16 |
Beschreibung: |
Warten bis das Referenzieren abgeschlossen ist. |
Statusmeldung - Warten bis das Referenzieren abgeschlossen ist.