FB_HomeOnTP

 

FB_HomeOnTP - Allgemeine Informationen

Übersicht

Typ

Funktionsbaustein

Verfügbar ab

V1.0.0.0

Übernommen aus

-

Implementiert

-

Versionen:

Aktuelle Version

Aufgabe

Referenzfahrt eines MultiBelt mit Touchprobe-Signalen. Das Modul kann ein oder mehrere Signale pro Zug verarbeiten.

Beschreibung

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_stMut­liBelt.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.

Schnittstelle

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

ST_HomeOnTpParameter

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

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 wurde 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

WaitAllTrainsReady

1

Warten bis alle Züge bereit sind.

OK

WaitAllTrainsStopped

10

Warten bis alle Züge stillgesetzt wurden.

OK

WaitForCaptureOk

12

Warten auf CaptureOk der Züge.

OK

WaitForHomeDone

16

Warten bis das Referenzieren abgeschlossen ist.

OK

WaitForSortTrains

13

Warten bis die Züge sortiert sind.

OK

WaitForStart

2

Warten auf Startbefehl.

OK

WaitForStartOff

11

Warten auf Rücksetzen des Starts.

ControllerConditionInvalid

SystemLibDiag

21

Diagnose der SystemLib

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

HomeTpNotSet

82

HomeTp wurde nicht gesetzt.

InputParameterInvalid

HomeTPOffsetRange

29

HomeTPOffset ist außerhalb des gültigen Bereichs.

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

MaxTPSignalDistanceRange

89

MaxTPSignalDistance ist außerhalb des gültigen Bereichs.

InputParameterInvalid

MinTPSignalDistanceRange

90

MinTPSignalDistance ist außerhalb des gültigen Bereichs.

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

TpInterfaceInvalid

41

Die Schnittstelle des Tp ist ungültig.

InputParameterInvalid

TPSignalsPerTrainRange

88

TPSignalsPerTrain ist außerhalb des gültigen Bereichs.

InputParameterInvalid

TrainOrderInvalid

31

Die Reihenfolge der Züge ist ungültig.

LimitReached

MaxTPSignalDistance

37

Der Abstand zwischen zwei TP-Signalen war zu groß.

LimitReached

TpMissing

38

Tp nicht gefunden.

SercosConditionInvalid

SercosInterfaceInvalid

24

Die Sercos-Schnittstelle ist ungültig.

UnexpectedProgramBehavior

UnknownState

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

Disabled

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.

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 stHomeOnTpParameter.stMove.lrAcc liegt außerhalb seines Wertebereichs.

Der Parameter stHomeOnTpParameter.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 stHomeOnTpParameter.stMove.lrDec liegt außerhalb seines Wertebereichs.

Der Parameter stHomeOnTpParameter.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 stHomeOnTpParameter.stMove.lrJerk liegt außerhalb seines Wertebereichs.

Der Parameter stHomeOnTpParameter.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.

HomeTpNotSet

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.

HomeTPOffsetRange

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.

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 stHomeOnTpParameter.stMove.lrVel liegt außerhalb seines Wertebereichs.

Der Parameter stHomeOnTpParameter.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

MaxTPSignalDistance

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.

MaxTPSignalDistanceRange

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.

MinTPSignalDistanceRange

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.

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

SystemLibDiag

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.

TpInterfaceInvalid

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

TpMissing

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.

TPSignalsPerTrainRange

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.

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.

UnknownState

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

WaitAllTrainsReady

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.

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.

WaitForCaptureOk

Aufzählungsname:

WaitForCaptureOk

Aufzählungswert:

12

Beschreibung:

Warten auf CaptureOk der Züge.

Statusmeldung - Warten auf TP Signal

WaitForHomeDone

Aufzählungsname:

WaitForHomeDone

Aufzählungswert:

16

Beschreibung:

Warten bis das Referenzieren abgeschlossen ist.

Statusmeldung - Warten bis das Referenzieren abgeschlossen ist.

WaitForSortTrains

Aufzählungsname:

WaitForSortTrains

Aufzählungswert:

13

Beschreibung:

Warten bis die Züge sortiert sind.

Statusmeldung - interner Zustand

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.