IOF_GetDeviceName
Der Funktionsbaustein IOF_GetDeviceName liest die Gerätebezeichnung eines IO-Gerätes. Intern wird in diesem Funktionsbaustein eine Instanz des ADSREAD-Funktionsbausteins aufgerufen. Die Gerätebezeichnung kann während der Konfiguration in TwinCAT-System Manager vom Benutzer festgelegt werden. Beim Systemstart wird diese dann als String in den IO-Treiber gesendet und kann über die ADS-Kommandos gelesen werden. Über die Eingangsvariable DEVICEID wird das IO-Gerät spezifiziert, dessen Gerätebezeichnung gelesen werden soll.
VAR_INPUT
VAR_INPUT
NETID : T_AmsNetId;
DEVICEID : UDINT;
START : BOOL;
TMOUT : TIME;
END_VAR
NETID: Hier kann die AmsNetId des TwinCAT-Rechners angegeben werden, auf dem die Funktion ausgeführt werden soll. Für den lokalen Rechner kann auch ein Leerstring angegeben werden.
DEVICEID: Über die DeviceId (Geräte-Id) wird das Gerät spezifiziert, auf dem die Funktion ausgeführt werden soll. Die Geräte-Ids werden während der Hardware-Konfiguration von TwinCAT-System Manager festgelegt.
START: Über eine positive Flanke an diesem Eingang wird der Baustein aktiviert.
TMOUT: Gibt die Timeout-Zeit an, die bei der Ausführung des ADS-Kommandos nicht überschritten werden darf.
VAR_OUTPUT
VAR_OUTPUT
BUSY : BOOL;
ERR : BOOL;
ERRID : UDINT;
DEVICENAME : T_MaxString;
END_VAR
BUSY: Bei der Aktivierung des Funktionsbausteins wird dieser Ausgang gesetzt und bleibt gesetzt, bis eine Rückmeldung erfolgt.
ERR: Sollte ein ADS-Fehler bei der Übertragung des Kommandos erfolgen, dann wird dieser Ausgang gesetzt, nachdem der BUSY-Ausgang zurückgesetzt wurde.
ERRID: Liefert bei einem gesetzten ERR-Ausgang die ADS-Fehlernummer.
DEVICENAME: Die Gerätebezeichnung des IO-Gerätes.
Voraussetzungen
Entwicklungsumgebung | Zielplattform | IO-Hardware | Einzubindende SPS-Bibliotheken |
---|---|---|---|
TwinCAT v2.7.0 | PC (i386) | All IO devices | Standard.Lib; PLCSystem.Lib; TcPLCAds.Lib; TcPlcIoFunctions.Lib |
TwinCAT v2.8.0 | PC (i386) | All IO devices | TcIoFunctions.Lib ( Standard.Lib; TcBase.Lib; TcSystem.Lib; TcUtilities.Lib werden automatisch eingebunden ) |