ItpGetBlocksearchData
Der Funktionsbaustein ItpGetBlocksearchData liest die aktuelle Position auf der Bahn aus. Üblicherweise wird dieser Befehl im Stillstand aufgerufen. Anschließend kann mit ItpBlockSearch der Interpreter wieder an die in sBlockSearchData gespeicherte Position aufgesetzt werden.
Eingänge
VAR_INPUT
bExecute : BOOL;
tTimeOut : TIME;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
bExecute | BOOL | Der Befehl wird durch eine steigende Flanke an diesem Eingang ausgelöst. |
tTimeOut | TIME | ADS Timeout-Delay |
/
Ein-/Ausgänge
VAR_IN_OUT
sNciToPlc : NCTOPLC_NCICHANNEL_REF;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
sNciToPlc | NCTOPLC_NCICHANNEL_REF | Struktur des zyklischen Kanalinterfaces von der NCI zur SPS. Auf diese Struktur wird nur lesend zugegriffen (Typ: NCTOPLC_NCICHANNEL_REF). |
Ausgänge
VAR_OUTPUT
bBusy : BOOL;
bErr : BOOL;
nErrId : UDINT;
sBlockSearchData : ST_ItpBlockSearchData;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
bBusy | BOOL | Bleibt TRUE, bis der Baustein eine Befehlsanforderung ausgeführt hat, längstens aber für die Dauer der an dem 'Timeout'-Eingang angelegten Zeit. Während Busy = TRUE wird an den Eingängen kein neuer Befehl angenommen. |
bErr | BOOL | Wird TRUE, wenn bei der Ausführung des Befehls ein Fehler aufgetreten ist. Der befehlsspezifische Fehlercode ist in 'nErrId' enthalten. Wird durch das Ausführen eines Befehls an den Eingängen auf FALSE zurückgesetzt. |
nErrId | UDINT | Enthält den befehlsspezifischen Fehlercode des zuletzt ausgeführten Befehls. Wird durch das Ausführen eines Befehls an den Eingängen auf 0 zurückgesetzt. Die Fehlernummern in ErrId können in der ADS-Fehlerdokumentation oder in der NC-Fehlerdokumentation (Fehlercodes ab 0x4000) nachgeschlagen werden. |
sBlockSearchData | ST_ItpBlockSearchData | Enthält Informationen zur aktuellen Position auf der Bahn. |
TYPE ST_ItpBlockSearchData :
STRUCT
fLength : LREAL;(* remaining distance of actual movement block in percent*)
nBlockNo : UDINT;(* number of the actual block *)
nBlockCounter : UDINT;(* counter value of the actual block *)
bIsRetrace : BOOL;(* indicates whether Retrace is active*)
bRetraceBackward : BOOL;(* indicates whether backward movement took place on the path*)
END_STRUCT
END_TYPE