CfgRead3DAxisIds

CfgRead3DAxisIds 1:

Der Baustein CfgRead3DAxisIds liest die Achskonfiguration einer 3D-Gruppe. Die ID der 3D-Gruppe wird am Eingang nGroupId angelegt. An den Eingang pAddr wird die Adresse der Variablen angelegt, in die der Baustein die AchsIds der Gruppenbelegung schreibt. Diese Variable ist ein Array mit drei Elementen vom Typ UDINT.

Mit einer steigenden Flanke am Eingang bExecute wird der Befehl ausgeführt.

Der Ausgang bBusy bleibt solange auf TRUE, bis der Baustein eine Befehlsanforderung ausführt hat, längstens aber für die Dauer der an dem tTimeOut-Eingang angelegten Zeit. Während bBusy = TRUE wird an den Eingängen kein neuer Befehl angenommen.

Der Ausgang bErr wird auf TRUE geschaltet, wenn bei der Ausführung des Befehls ein Fehler aufgetreten ist. Der befehlsspezifische Fehlercode ist in nErrId enthalten. Durch das Ausführen eines Befehls an den Eingängen werden die Ausgänge zurückgesetzt.

Interface

VAR_INPUT
bExecute       : BOOL;
nGroupId       : UDINT;
pAddr          : DWORD;
tTimeOut       : TIME;
END_VAR
VAR_OUTPUT
bBusy          : BOOL;
bErr           : BOOL;
nErrId         : UDINT;
END_VAR

Beispiel:

VAR
(* instance *)
ReadAxIds : CfgRead3DAxisIds;
AxIds : ARRAY[1..3] OF UDINT;
END_VAR
ReadAxIds( bExecute := TRUE,
nGroupId := 4,
pAddr := ADR( AxIds ),
tTimeOut := T#1s );

AxIds enthält nun die drei Achs-ID's der 3D-Gruppe mit der Gruppen-ID 4.