IOF_CAN_Layer2Command

IOF_CAN_Layer2Command 1:

The IOF_CAN_Layer2Command function block sends a 10-byte long command to layer 2 of a CAN master.

VAR_INPUT

VAR_INPUT
    NETID     : T_AmsNetId;
    DEVICEID  : UDINT;
    LEN       : UDINT;
    SRCADDR   : PVOID;
    START     : BOOL;
    TMOUT     : TIME := DEFAULT_ADS_TIMEOUT;
END_VAR

NETID: The network address of the TwinCAT computer on which the function is to be executed can be entered here (type: T_AmsNetID). If it is to be run on the local computer, an empty string can be entered.

DEVICEID: DeviceId specifies the device (CAN master) on which the function is to be executed. The device IDs are specified by the TwinCAT system during the hardware configuration.

LEN: The length of the layer 2 command in bytes.

SRCADDR: The address of the first data word in the CAN layer 2 command.°

START: the block is activated by a positive edge at this input.

TMOUT: States the length of the timeout that may not be exceeded during execution of the command.

VAR_OUTPUT

VAR_OUTPUT
    BUSY    : BOOL;
    ERR     : BOOL;
    ERRID   : UDINT;
END_VAR

BUSY: When the function block is activated this output is set. It remains set until a feedback is received.

ERR: If an error should occur during the transfer of the command, then this output is set once the BUSY output was reset.

ERRID: Supplies the ADS error number when the ERR output is set.

Example:

PROGRAM MAIN
VAR
    IOF_CAN_Layer2Command1 : IOF_CAN_Layer2Command;
    Layer2Data             : ARRAY[1..5] OF WORD;
    StartLayer2            : BOOL;
    Layer2_Busy            : BOOL;
    Layer2_Err             : BOOL;
    Layer2_ErrId           : UDINT;
END_VAR


IOF_CAN_Layer2Command 2:

Requirements

Development environment

Target platform

IO hardware

PLC libraries to be integrated (category group)

TwinCAT v3.1.0

None. This functionality is not supported by TwinCAT 3 at present!

HILSCHER CIF3xx COM master card

Tc2_IoFunctions (IO)