IOF_GetDeviceType
The function block "IOF_GetDeviceType" can be used to obtain the device type from the device ID. The device IDs are specified during configuration by the TwinCAT System Manager, and can not be configured by the user. Internally to the function block an instance of the ADSREAD function block is called.
VAR_INPUT
VAR_INPUT
NETID : T_AmsNetId;
DEVICEID : UDINT;
START : BOOL;
TMOUT : TIME;
END_VAR
NETID: It is possible here to provide the AmsNetId of the TwinCAT computer on which the function to be executed. If it is to be run on the local computer, an empty string can be entered.
DEVICEID: The ID of the device whose device type is to be read
START: The function block is activated by a positive edge at this input.
TMOUT: States the length of the timeout that may not be exceeded by execution of the ADS command.
VAR_OUTPUT
VAR_OUTPUT
BUSY : BOOL;
ERR : BOOL;
ERRID : UDINT;
IODeviceType : IODEVICETYPES;
END_VAR
BUSY: When the function block is activated this output is set. It remains set until and acknowledgement is received.
ERR: If an ADS error should occur during the transfer of the command, then this output is set once the BUSY output is reset.
ERRID: Supplies the ADS error number when the ERR output is set.
IODeviceType: The device type constant.
Example of a call in FBD:
PROGRAM MAIN
VAR
GetDeviceType1 : IOF_GetDeviceType;
Start_GetType : BOOL;
GetType_Busy : BOOL;
GetType_Err : BOOL;
GetType_ErrId : UDINT;
DeviceType : IODEVICETYPES;
END_VAR
Requirements
Development environment | Target system type | IO hardware | PLC libraries to include |
---|---|---|---|
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 are included automatically ) |