SDO access ¶ SDO_READ4 (FunctionBlock) SDO_READ_DATA (FunctionBlock) SDO_WRITE4 (FunctionBlock) SDO_WRITE_DATA (FunctionBlock) obsolete (only for compatibility) SDO_READ (FunctionBlock) SDO_WRITE (FunctionBlock)
SDO_READ4 (FB) ¶ FUNCTION_BLOCK SDO_READ4 EXTENDS CiA405Base This function block is used for reading a specific object from object dictionary of a DEVICE . Up to 4 bytes can be read. Data is written to an ARRAY OF BYTE . If more than 4 bytes should be read please use SDO_READ . If object can be read without error CONFIRM becomes TRUE and DATA contains read data in Little Endian byte order. If an error occurs ERROR becomes unequal 0. In case of a SDO abort ERROR is set to CANOPEN_KERNEL_ERROR.CANOPEN_KERNEL_OTHER_ERROR and ERRORINFO contains the associated abort code (in Little endian) as defined by CiA 301. InOut: Scope Name Type Initial Comment Inherited from Input NETWORK USINT 1 CAN network number the function block should operate on. Note: It is not the same like the network number in CANBus configurator. The CiA405 NETWORK is calculated by NetID + 1. Example: 1 = CAN0, 2 = CAN1, 3 = CAN2, … CiA405Base ENABLE BOOL FALSE Enables the function block on rising edge. Aborts operation on falling edge. CiA405Base TIMEOUT UDINT 0 Timeout in ms; 0 means no timeout CiA405Base Output CONFIRM BOOL FALSE TRUE : function block finished without error CiA405Base ERROR CANOPEN_KERNEL_ERROR CANOPEN_KERNEL_ERROR.CANOPEN_KERNEL_NO_ERROR Error code: see CANOPEN_KERNEL_ERROR for further details CiA405Base Input DEVICE DEVICE NodeID of destination device; 0 means local device (= CANopenManager) CHANNEL USINT 1 SDO channel: 0: use any free channel; 1..n: specific channel INDEX WORD Index of object SUBINDEX BYTE SubIndex of object Output DATA ARRAY [1..4] OF BYTE Array of Byte the data is written to. Data is in CANopen Byte Order (= Little Endian). DATALENGTH USINT Amount of data in bytes written to DATA ERRORINFO SDO_ERROR contains abort code in little endian in case of ERROR is CANOPEN_KERNEL_ERROR.CANOPEN_KERNEL_OTHER_ERROR
SDO_READ_DATA (FB) ¶ FUNCTION_BLOCK SDO_READ_DATA EXTENDS CiA405Base This function block is used for reading a specific object from object dictionary of a DEVICE . If object can be read without error CONFIRM becomes TRUE and DATA contains read data in Little Endian byte order. If an error occurs ERROR becomes unequal 0. In case of a SDO abort ERROR is set to CANOPEN_KERNEL_ERROR.CANOPEN_KERNEL_OTHER_ERROR and ERRORINFO contains the associated abort code (in Little endian) as defined by CiA 301. InOut: Scope Name Type Initial Comment Inherited from Input NETWORK USINT 1 CAN network number the function block should operate on. Note: It is not the same like the network number in CANBus configurator. The CiA405 NETWORK is calculated by NetID + 1. Example: 1 = CAN0, 2 = CAN1, 3 = CAN2, … CiA405Base ENABLE BOOL FALSE Enables the function block on rising edge. Aborts operation on falling edge. CiA405Base TIMEOUT UDINT 0 Timeout in ms; 0 means no timeout CiA405Base Output CONFIRM BOOL FALSE TRUE : function block finished without error CiA405Base ERROR CANOPEN_KERNEL_ERROR CANOPEN_KERNEL_ERROR.CANOPEN_KERNEL_NO_ERROR Error code: see CANOPEN_KERNEL_ERROR for further details CiA405Base Input DEVICE DEVICE NodeID of destination device; 0 means local device (= CANopenManager) CHANNEL USINT 1 SDO channel: 0: use any free channel; 1..n: specific channel INDEX WORD Index of object SUBINDEX BYTE SubIndex of object MODE SDO_MODE SDO_MODE.AUTO specifies the SDO Mode to be used DATA POINTER TO BYTE Pointer to memory the data should be written to. Data is written in CANopen Byte Order (= Little Endian). Inout DATALENGTH UDINT VAR_IN: Number of bytes DATA is pointing to. VAR_OUT: Amount of data bytes written to DATA Output ERRORINFO SDO_ERROR contains abort code in little endian in case of ERROR is CANOPEN_KERNEL_ERROR.CANOPEN_KERNEL_OTHER_ERROR
SDO_WRITE4 (FB) ¶ FUNCTION_BLOCK SDO_WRITE4 EXTENDS CiA405Base This function block is used for writing a specific object in object dictionary of a DEVICE . Up to 4 bytes can be written. Data is provided as an ARRAY OF BYTE . If more than 4 bytes should be written please use SDO_WRITE . If DATA was written without error CONFIRM becomes TRUE . DATA has to be in Little Endian byte order. If an error occurs ERROR becomes unequal 0. In case of a SDO abort ERROR is set to CANOPEN_KERNEL_ERROR.CANOPEN_KERNEL_OTHER_ERROR and ERRORINFO contains the associated abort code (in Little endian) as defined by CiA 301. InOut: Scope Name Type Initial Comment Inherited from Input NETWORK USINT 1 CAN network number the function block should operate on. Note: It is not the same like the network number in CANBus configurator. The CiA405 NETWORK is calculated by NetID + 1. Example: 1 = CAN0, 2 = CAN1, 3 = CAN2, … CiA405Base ENABLE BOOL FALSE Enables the function block on rising edge. Aborts operation on falling edge. CiA405Base TIMEOUT UDINT 0 Timeout in ms; 0 means no timeout CiA405Base Output CONFIRM BOOL FALSE TRUE : function block finished without error CiA405Base ERROR CANOPEN_KERNEL_ERROR CANOPEN_KERNEL_ERROR.CANOPEN_KERNEL_NO_ERROR Error code: see CANOPEN_KERNEL_ERROR for further details CiA405Base Input DEVICE DEVICE NodeID of destination device; 0 means local device (= CANopenManager) CHANNEL USINT 1 SDO channel: 0: use any free channel; 1..n: specific channel INDEX WORD Index of object SUBINDEX BYTE SubIndex of object DATA ARRAY [1..4] OF BYTE data which should be written to the object DATALENGTH USINT Number of bytes to be written to the object Output ERRORINFO SDO_ERROR
SDO_WRITE_DATA (FB) ¶ FUNCTION_BLOCK SDO_WRITE_DATA EXTENDS CiA405Base This function block is used for writing a specific object in object dictionary of a DEVICE . If DATA was written without error CONFIRM becomes TRUE . DATA has to be in Little Endian byte order. If an error occurs ERROR becomes unequal 0. In case of a SDO abort ERROR is set to CANOPEN_KERNEL_ERROR.CANOPEN_KERNEL_OTHER_ERROR and ERRORINFO contains the associated abort code (in Little endian) as defined by CiA 301. InOut: Scope Name Type Initial Comment Inherited from Input NETWORK USINT 1 CAN network number the function block should operate on. Note: It is not the same like the network number in CANBus configurator. The CiA405 NETWORK is calculated by NetID + 1. Example: 1 = CAN0, 2 = CAN1, 3 = CAN2, … CiA405Base ENABLE BOOL FALSE Enables the function block on rising edge. Aborts operation on falling edge. CiA405Base TIMEOUT UDINT 0 Timeout in ms; 0 means no timeout CiA405Base Output CONFIRM BOOL FALSE TRUE : function block finished without error CiA405Base ERROR CANOPEN_KERNEL_ERROR CANOPEN_KERNEL_ERROR.CANOPEN_KERNEL_NO_ERROR Error code: see CANOPEN_KERNEL_ERROR for further details CiA405Base Input DEVICE DEVICE NodeID of destination device; 0 means local device (= CANopenManager) CHANNEL USINT 1 SDO channel: 0: use any free channel; 1..n: specific channel INDEX WORD Index of object SUBINDEX BYTE SubIndex of object MODE SDO_MODE SDO_MODE.AUTO specifies the SDO Mode to be used DATA POINTER TO BYTE pointer to data which should be written (data has to be in little endian byte order) DATALENGTH UDINT length of data in bytes Output ERRORINFO SDO_ERROR contains abort code in little endian in case of ERROR is CANOPEN_KERNEL_ERROR.CANOPEN_KERNEL_OTHER_ERROR
obsolete (only for compatibility) ¶ SDO_READ (FunctionBlock) SDO_WRITE (FunctionBlock)
Types ¶ DEVICE (Alias) SDO_ERROR (Alias)
DEVICE (ALIAS) ¶ TYPE DEVICE : USINT (0..127) Defines a NodeID of a device.
SDO_ERROR (ALIAS) ¶ TYPE SDO_ERROR : UDINT Contains a SDO abort code (see CiA 301)
analog monitors ¶ Hysteresis_DINT (FunctionBlock) Hysteresis_LREAL (FunctionBlock) LimitAlarm_DINT (FunctionBlock) LimitAlarm_LREAL (FunctionBlock) sgn (Function)