ADSRDSTATE
Der Baustein fordert den Zustand eines ADS-Gerätes an.
VAR_INPUT
VAR_INPUT
NETID : T_AmsNetId;
PORT : T_AmsPort;
RDSTATE : BOOL;
TMOUT : TIME;
END_VAR
NETID : Ist ein String, der die AMS-Netzwerkkennung des Zielgerätes enthält, an das der ADS-Befehl gerichtet wird.
PORT : Enthält die Portnummer des ADS-Gerätes.
RDSTATE : Durch eine steigende Flanke an diesem Eingang wird der ADS-Befehl ausgelöst.
TMOUT : Gibt die Zeit bis zum Abbruch der Funktion an.
VAR_OUTPUT
VAR_OUTPUT
BUSY : BOOL;
ERR : BOOL;
ERRID : UDINT;
ADSSTATE : UINT;
DEVSTATE : UINT;
END_VAR
BUSY : Dieser Ausgang bleibt solange auf TRUE, bis der Baustein eine Befehlsanforderung ausführt, 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. Bitte beachten Sie, dass nicht die Ausführung des Dienstes, sondern nur dessen Annahme zeitlich überwacht wird.
ERR : Dieser Ausgang wird auf TRUE geschaltet, wenn bei der Ausführung eines Befehls ein Fehler aufgetreten ist. Der befehlsspezifische Fehlercode ist in 'ErrorId' enthalten. Wenn der Baustein ein Timeout-Fehler hat, so ist 'Error' = TRUE und 'ErrorId' = 1861 (Hexadezimal 0x745). Wird durch das Ausführen eines Befehls an den Eingängen auf FALSE zurückgesetzt.
ERRID : 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.
ADSSTATE :
Enthält die Zustandskennzahl des ADS-Zielgerätes. Die hier zurück gelieferten Codes sind festgelegt für alle ADS-Server:
- ADSSTATE_INVALID =0 ;
- ADSSTATE_IDLE =1 ;
- ADSSTATE_RESET =2 ;
- ADSSTATE_INIT =3 ;
- ADSSTATE_START =4 ;
- ADSSTATE_RUN =5 ;
- ADSSTATE_STOP =6 ;
- ADSSTATE_SAVECFG =7 ;
- ADSSTATE_LOADCFG =8 ;
- ADSSTATE_POWERFAILURE =9 ;
- ADSSTATE_POWERGOOD =10 ;
- ADSSTATE_ERROR =11;
DEVSTATE : Enthält die spezifische Zustandskennzahl des ADS-Zielgerätes. Die hier zurück gelieferten Codes sind Zusatzinformationen, die für das ADS-Gerät spezifisch sind.
Beispiel für den Aufruf des Bausteins in FBD:

In dem Beispiel wird das SPS-Laufzeitsystem 1 (PortNr.801) auf dem Rechner mit der Netzwerkadresse ‚1.1.1.2.7.1' nach seinem Zustand gefragt. Die Antwort ist adsState = 1 (IDLE) ohne Zusatzcode devState=0.
Voraussetzungen
Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken |
---|---|---|
TwinCAT v2.7.0 | PC or CX (x86) | PLCSystem.Lib |
TwinCAT v2.8.0 | PC or CX (x86) | TcSystem.Lib |
TwinCAT v2.10.0 Build >= 1301 | CX (ARM) | TcSystem.Lib |