ADSRDSTATE

Der Funktionsbaustein fordert den Zustand eines ADS-Gerätes an.
Eingänge
VAR_INPUT
NETID : T_AmsNetId;
PORT : T_AmsPort;
RDSTATE : BOOL;
TMOUT : TIME := DEFAULT_ADS_TIMEOUT;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
NETID | T_AmsNetId | String, der die AMS-Netzwerkkennung des Zielgerätes enthält, an das der ADS-Befehl gerichtet wird (Typ: T_AmsNetId). |
PORT | T_AmsPort | Portnummer des ADS-Gerätes (Typ: T_AmsPort). |
RDSTATE | BOOL | Durch eine steigende Flanke an diesem Eingang wird der ADS-Befehl ausgelöst. |
TMOUT | TIME | Gibt die Zeit bis zum Abbruch der Funktion an. |
Ausgänge
VAR_OUTPUT
BUSY : BOOL;
ERR : BOOL;
ERRID : UDINT;
ADSSTATE : UINT;
DEVSTATE : UINT;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
BUSY | BOOL | Dieser Ausgang bleibt so lange 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. Beachten Sie, dass nicht die Ausführung des Dienstes, sondern nur dessen Annahme zeitlich überwacht wird. |
ERR | BOOL | Dieser Ausgang wird auf TRUE geschaltet, wenn bei der Ausführung eines Befehls ein Fehler aufgetreten ist. Der befehlsspezifische Fehlercode ist in ERRID enthalten. Wenn der Baustein ein Timeout-Fehler hat, so ist ERR = TRUE und ERRID = 1861 (Hexadezimal 0x745). Wird durch das Ausführen eines Befehls an den Eingängen auf FALSE zurückgesetzt. |
ERRID | UDINT | ADS-Fehlercode oder befehlsspezifischer Fehlercode des zuletzt ausgeführten Befehls. Wird durch das Ausführen eines Befehls an den Eingängen auf 0 zurückgesetzt. |
ADSSTATE | UDINT | Enthält die Zustandskennzahl des ADS-Zielgerätes. |
DEVSTATE | UDINT | Spezifische Zustandskennzahl des ADS-Zielgerätes. Die hier zurück gelieferten Codes sind Zusatzinformationen, die für das ADS-Gerät spezifisch sind. |
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;
- ADSSTATE_SHUTDOWN = 12;
- ADSSTATE_SUSPEND = 13;
- ADSSTATE_RESUME = 14;
- ADSSTATE_CONFIG = 15;
- ADSSTATE_RECONFIG = 16;
- ADSSTATE_STOPPING = 17;
- ADSSTATE_INCOMPATIBLE = 18;
- ADSSTATE_EXCEPTION = 19;
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 (Kategoriegruppe) |
---|---|---|
TwinCAT v3.1.0 | PC oder CX (x86, x64, ARM) | Tc2_System (System) |