FB_HomeOnTP - Allgemeine Informationen
Typ |
Funktionsbaustein |
Verfügbar ab |
V1.0.0.0 |
Übernommen aus |
- |
Implementiert |
- |
Versionen: |
Aktuelle Version |
Referenzfahrt eines MultiBelt mit Touchprobe-Signalen. Das Modul kann ein oder mehrere Signale pro Zug verarbeiten.
Das Modul fährt alle Züge an ihren Homing-Sensoren vorbei und registriert die Signale. Wurde die korrekte Anzahl Signale erkannt, werden die Positionen der Züge um den in iq_stMutliBelt.astTrain[x].lrHomeTPOffset angegebenen Wert zurückgesetzt. Jetzt werden alle Züge in die angegebene Station gefahren. Nach Aufruf des Funktionsbausteins steht immer Zug 1 in i_stParameter.uiStation und die restlichen Züge stehen im definierten Abstand dahinter. Die Bewegungsparameter können über die entsprechenden Eingänge festgelegt werden. Haben alle Züge ihre Endposition erreicht, wird q_xHomeOk auf TRUE gesetzt. Danach kann der Baustein deaktiviert werden.
HINWEIS: Nur Touchprobes der Steuerung OnBoard I/O und Antriebs-Touchprobes werden von den Funktionalitäten dieser Bibliothek unterstützt. TM5 Modul Touchprobes werden nicht unterstützt.
Eingang |
Datentyp |
Beschreibung |
---|---|---|
i_xEnable |
BOOL |
Eine steigende Flanke FALSE -> TRUE aktiviert den Baustein, eine fallende Flanke TRUE -> FALSE deaktiviert den Baustein. Wenn der Baustein abgeschaltet ist, führt er keine Aktionen aus. |
i_xStart |
BOOL |
FALSE -> TRUE: Referenzfahrt wird gestartet. |
i_stParameter |
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 Anwenderbefehle entgegennehmen. FALSE: Der Baustein ist nicht bereit, Anwenderbefehle entgegenzunehmen. |
q_etDiag |
Allgemeine bibliotheksunabhängige Aussage zur Diagnose. Alle Werte außer GD.ET_Diag.Ok entsprechen einer Diagnosemeldung. |
|
q_etDiagExt |
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 wurde erfolgreich abgeschlossen. |
Ein-/Ausgang |
Datentyp |
Beschreibung |
---|---|---|
iq_stMultiBelt |
Parameterstruktur des MultiBelt-Verbunds |
q_etDiag |
q_etDiagExt |
Aufzählungswert |
Beschreibung |
---|---|---|---|
OK |
0 |
Der Baustein ist deaktiviert. |
|
OK |
1 |
Warten bis alle Züge bereit sind. |
|
OK |
10 |
Warten bis alle Züge stillgesetzt wurden. |
|
OK |
12 |
Warten auf CaptureOk der Züge. |
|
OK |
16 |
Warten bis das Referenzieren abgeschlossen ist. |
|
OK |
13 |
Warten bis die Züge sortiert sind. |
|
OK |
2 |
Warten auf Startbefehl. |
|
OK |
11 |
Warten auf Rücksetzen des Starts. |
|
ControllerConditionInvalid |
21 |
Diagnose der SystemLib |
|
InputParameterInvalid |
101 |
Das ControllerStopInterface ist ungültig. |
|
InputParameterInvalid |
26 |
Die Schnittstelle der Achse ist ungültig. |
|
InputParameterInvalid |
81 |
Die Achse wurde nicht gesetzt. |
|
InputParameterInvalid |
85 |
Die Beschleunigung für das Referenzieren ist außerhalb des gültigen Bereichs. |
|
InputParameterInvalid |
86 |
Die Verzögerung für das Referenzieren ist außerhalb des gültigen Bereichs. |
|
InputParameterInvalid |
87 |
Der Ruck für das Referenzieren ist außerhalb des gültigen Bereichs. |
|
InputParameterInvalid |
30 |
Der Abstand zweier Züge ist ungültig. |
|
InputParameterInvalid |
82 |
HomeTp wurde nicht gesetzt. |
|
InputParameterInvalid |
29 |
HomeTPOffset ist außerhalb des gültigen Bereichs. |
|
InputParameterInvalid |
84 |
Die Geschwindigkeit für das Referenzieren ist außerhalb des gültigen Bereichs. |
|
InputParameterInvalid |
36 |
Die Schnittstelle Limit ist ungültig. |
|
InputParameterInvalid |
89 |
MaxTPSignalDistance ist außerhalb des gültigen Bereichs. |
|
InputParameterInvalid |
90 |
MinTPSignalDistance ist außerhalb des gültigen Bereichs. |
|
InputParameterInvalid |
43 |
NumOfStations ist außerhalb des gültigen Bereichs. |
|
InputParameterInvalid |
80 |
Die Schnittstelle RefActValues ist ungültig. |
|
InputParameterInvalid |
42 |
Die Schnittstelle SetLimit ist ungültig. |
|
InputParameterInvalid |
41 |
Die Schnittstelle des Tp ist ungültig. |
|
InputParameterInvalid |
88 |
TPSignalsPerTrain ist außerhalb des gültigen Bereichs. |
|
InputParameterInvalid |
31 |
Die Reihenfolge der Züge ist ungültig. |
|
LimitReached |
37 |
Der Abstand zwischen zwei TP-Signalen war zu groß. |
|
LimitReached |
38 |
Tp nicht gefunden. |
|
SercosConditionInvalid |
24 |
Die Sercos-Schnittstelle ist ungültig. |
|
UnexpectedProgramBehavior |
25 |
Nicht bestimmbarer Zustand. |
ControllerStopInterfaceInvalid
Aufzählungsname: |
ControllerStopInterfaceInvalid |
Aufzählungswert: |
101 |
Beschreibung: |
Das ControllerStopInterface ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
ControllerStopInterface ungültig |
Ungültiger Antriebstyp |
Aufzählungsname: |
Disabled |
Aufzählungswert: |
0 |
Beschreibung: |
Der Baustein ist deaktiviert. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Statusmeldung - Funktionsbaustein ist nicht aktiviert. Der Eingang i_xEnable ist FALSE. |
Den Eingang i_xEnable auf TRUE setzen. |
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. |
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. |
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 stHomeOnTpParameter.stMove.lrAcc liegt außerhalb seines Wertebereichs. |
Der Parameter stHomeOnTpParameter.stMove.lrAcc muss > Gc_lrMinAcceleration sein. |
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 stHomeOnTpParameter.stMove.lrDec liegt außerhalb seines Wertebereichs. |
Der Parameter stHomeOnTpParameter.stMove.lrDec muss > Gc_lrMinAcceleration sein. |
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 stHomeOnTpParameter.stMove.lrJerk liegt außerhalb seines Wertebereichs. |
Der Parameter stHomeOnTpParameter.stMove.lrJerk muss > Gc_lrMinJerk sein. |
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. |
Aufzählungsname: |
HomeTpNotSet |
Aufzählungswert: |
82 |
Beschreibung: |
HomeTp wurde nicht gesetzt. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
TP-Schnittstelle ungültig |
Der Parameter stMultiBelt.astTrain[x].ifTpHome ist nicht belegt. |
Aufzählungsname: |
HomeTPOffsetRange |
Aufzählungswert: |
29 |
Beschreibung: |
HomeTPOffset ist außerhalb des gültigen Bereichs. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Der Parameter stMultiBelt.astTrain[x].lrHomeTPOffset liegt außerhalb seines Wertebereichs. |
Der Wertebereich des Parameters stMultiBelt.astTrain[x].lrHomeTPOffset reicht von -stMultiBelt.stGeneral.lrBeltLength bis stMultiBelt.stGeneral.lrBeltLength. |
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 stHomeOnTpParameter.stMove.lrVel liegt außerhalb seines Wertebereichs. |
Der Parameter stHomeOnTpParameter.stMove.lrVel muss > Gc_lrMinVelocity sein. |
Aufzählungsname: |
LimitInterfaceInvalid |
Aufzählungswert: |
36 |
Beschreibung: |
Die Schnittstelle Limit ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Begrenzungsschnittstelle ist ungültig. |
Ungültiger Antriebstyp |
Aufzählungsname: |
MaxTPSignalDistance |
Aufzählungswert: |
37 |
Beschreibung: |
Der Abstand zwischen zwei TP-Signalen war zu groß. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Der Abstand zwischen zwei Touchprobe-Signalen ist zu groß. |
Den Parameter stHomeOnTpParameter.lrMaxTPSignalDistance vergrößern. Die Abstände der TP-Signale verkleinern. |
Aufzählungsname: |
MaxTPSignalDistanceRange |
Aufzählungswert: |
89 |
Beschreibung: |
MaxTPSignalDistance ist außerhalb des gültigen Bereichs. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Der Parameter stHomeOnTpParameter.lrMaxTPSignalDistance liegt außerhalb seines Wertebereichs. |
Der Parameter stHomeOnTpParameter.lrMaxTPSignalDistance muss > 0 sein. |
Aufzählungsname: |
MinTPSignalDistanceRange |
Aufzählungswert: |
90 |
Beschreibung: |
MinTPSignalDistance ist außerhalb des gültigen Bereichs. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Der Parameter stHomeOnTpParameter.lrMinTPSignalDistance liegt außerhalb seines Wertebereichs. |
Der Parameter stHomeOnTpParameter.lrMinTPSignalDistance muss >= 0 sein. |
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. |
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 |
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 |
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 |
Aufzählungsname: |
SystemLibDiag |
Aufzählungswert: |
21 |
Beschreibung: |
Diagnose der SystemLib |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Diagnosemeldung aus einer Systembibliothek. |
Weitere Informationen finden Sie unter q_sMsg. |
Aufzählungsname: |
TpInterfaceInvalid |
Aufzählungswert: |
41 |
Beschreibung: |
Die Schnittstelle des Tp ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
TP-Schnittstelle ungültig |
Falscher Tp-Typ |
Aufzählungsname: |
TpMissing |
Aufzählungswert: |
38 |
Beschreibung: |
Tp nicht gefunden. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Es wurde kein Tp-Signal erkannt. |
Es wird ein TP-Signal innerhalb der Strecke stMultiBelt.stGeneral.lrBeltLength erwartet. |
Aufzählungsname: |
TPSignalsPerTrainRange |
Aufzählungswert: |
88 |
Beschreibung: |
TPSignalsPerTrain ist außerhalb des gültigen Bereichs. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Der Parameter stHomeOnTpParameter.uiTPSignalsPerTrain liegt außerhalb seines Wertebereichs. |
Der Parameter stHomeOnTpParameter.uiTPSignalsPerTrain muss >= 1 sein. |
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. |
Aufzählungsname: |
UnknownState |
Aufzählungswert: |
25 |
Beschreibung: |
Nicht bestimmbarer Zustand. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Bei der Programmverarbeitung ist ein ungültiger Zustand aufgetreten. |
Support kontaktieren |
Aufzählungsname: |
WaitAllTrainsReady |
Aufzählungswert: |
1 |
Beschreibung: |
Warten bis alle Züge bereit sind. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Statusmeldung - Beim Aktivieren wartet der FB, bis alle Züge (Achsen) in Lageregelung sind. |
Die Achsen müssen extern aktiviert werden. Es dürfen keine Fehler anstehen. |
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. |
Aufzählungsname: |
WaitForCaptureOk |
Aufzählungswert: |
12 |
Beschreibung: |
Warten auf CaptureOk der Züge. |
Statusmeldung - Warten auf TP Signal
Aufzählungsname: |
WaitForHomeDone |
Aufzählungswert: |
16 |
Beschreibung: |
Warten bis das Referenzieren abgeschlossen ist. |
Statusmeldung - Warten bis das Referenzieren abgeschlossen ist.
Aufzählungsname: |
WaitForSortTrains |
Aufzählungswert: |
13 |
Beschreibung: |
Warten bis die Züge sortiert sind. |
Statusmeldung - interner Zustand
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. |
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. |