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
NETWORKUSINT1
CAN network number the function block should operate on. Note: It is not the same like the network number in CANBus configurator. The CiA405
NETWORKis calculated by NetID + 1. Example: 1 = CAN0, 2 = CAN1, 3 = CAN2, …CiA405Base
ENABLEBOOLFALSE
Enables the function block on rising edge. Aborts operation on falling edge.
CiA405Base
TIMEOUTUDINT0
Timeout in ms; 0 means no timeout
CiA405Base
Output
CONFIRMBOOLFALSE
TRUE: function block finished without errorCiA405Base
ERRORCANOPEN_KERNEL_ERROR.CANOPEN_KERNEL_NO_ERROR
Error code: see CANOPEN_KERNEL_ERROR for further details
CiA405Base
Input
DEVICENodeID of destination device; 0 means local device (= CANopenManager)
CHANNELUSINT1
SDO channel: 0: use any free channel; 1..n: specific channel
INDEXWORDIndex of object
SUBINDEXBYTESubIndex of object
DATAARRAY [1..4] OF BYTE
data which should be written to the object
DATALENGTHUSINTNumber of bytes to be written to the object
Output
ERRORINFO