SDO_WRITE (FB) ¶ FUNCTION_BLOCK SDO_WRITE EXTENDS CiA405Base This function block is obsolete. It supports only data up to 64kb. Use new functionblock SDO_WRITE_DATA instead! 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 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 UINT 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
CAA DTUtil Extern Library Documentation ¶ Company CAA Technical Workgroup Title CAA DTUtil Extern Version 3.5.12.0 Categories Intern|CAA|System Namespace DTU Author CAA Technical Workgroup Placeholder CAA DTUtility Description 1 ¶ Functions for the handling of a real time clock and the CODESYS time and date data types Contents: ¶ CAA DTUtil Enums Function Blocks Functions Global Constants Structs GetSupplierVersion (Function) VersionConstants (GVL) Indices and tables ¶ 1 Based on CAA_DTUtil_Extern.library, last modified 15.12.2017, 11:35:02. LibDoc 4.4.0.0-b.27 The content file CAA_DTUtil_Extern.clean.json was generated with CODESYS V3.5 SP12 on 15.12.2017, 11:35:08.
CAA DTUtil ¶ Enums ERROR (Enum) Function Blocks Time Zone Information GetTimeZoneInformation (FunctionBlock) SetTimeZoneInformation (FunctionBlock) Time and Date GetDateAndTime (FunctionBlock) SetDateAndTime (FunctionBlock) Functions Utility Functions DTConcat (Function) DTSplit (Function) DateConcat (Function) DateSplit (Function) GetDayOfWeek (Function) TODConcat (Function) TODSplit (Function) Global Constants GlobalConstants (GVL) Structs DTU_GETDATEANDTIME_PARAMS (Struct) DTU_GETTIMEZONEINFORMATION_PARAMS (Struct) DTU_SETDATEANDTIME_PARAMS (Struct) DTU_SETTIMEZONEINFORMATION_PARAMS (Struct)
ERROR (ENUM) ¶ TYPE ERROR : This data structure describes errors which might occur when using the functions of the CAA_DtUtility library. Attributes: qualified_only InOut: Name Initial Comment NO_ERROR 0 No Error; function successfully executed FIRST_ERROR 5750 First library-specific error TIME_OUT 5751 Time limit exceeded NOT_AVAILABLE 5752 Not available INPUT_INVALID 5753 Invalid input values DTU_ERROR_UNKNOWN 5754 Unknown error DTU_WRONG_PARAMETER 5755 Wrong parameter DTU_TZI_NOT_SET 5756 Timezone information not initialized FIRST_MF 5770 First manufacturer-specific error LAST_ERROR 5799 Last library-specific error
Function Blocks ¶ Time Zone Information GetTimeZoneInformation (FunctionBlock) SetTimeZoneInformation (FunctionBlock) Time and Date GetDateAndTime (FunctionBlock) SetDateAndTime (FunctionBlock)
Time Zone Information ¶ The World is divided in time zones which are based on the degrees of longitude. The English town Greenwich is situated in their centre on the so-called prime meridian that defines the starting point for the count of the world’s degrees of longitude. By taking a closer look at a globe, one can distinguish the degrees of longitude and latitude which clasp the world like a grid. The degrees of longitude go from north to south and connect the two poles. The time being measured in the observatory in Greenwich is called GMT which is the abbreviation for Greenwich Mean Time . The GMT serves as a basis for calculating the respecting times in all countries of the world. However nowadays the term GMT is not used any more as it has been replaced by the expression Universal Time Coordinated (UTC). [CC BY-SA 4.0 ( Wikimedia Commons )] GetTimeZoneInformation (FunctionBlock) SetTimeZoneInformation (FunctionBlock)
GetTimeZoneInformation (FB) ¶ FUNCTION_BLOCK GetTimeZoneInformation This function block reads the specific information on the time zone (for further information see library CAA_RealTimeClock ). InOut: Scope Name Type Comment Input xExecute BOOL Rising edge: Action start Falling edge: Resets outputs. If a falling edge occurs before the function block has completed its action, the outputs operate in the usual manner and are only reset if either the action is completed or in the event of an error. In this case, the corresponding output values (xDone, xError, iError) are present at the outputs for exactly one cycle. Output xDone BOOL Action successfully completed xBusy BOOL Function block active xError BOOL TRUE : error occurred, function block aborts action FALSE : no error eError ERROR Error description for diagnosis tziInfo RTCLK.TIME_ZONE_INFO Information on the time zone
SetTimeZoneInformation (FB) ¶ FUNCTION_BLOCK SetTimeZoneInformation With this function block the specific information of the time zone can be modified. The time zone setting will be kept even after a Reset-Origin of the controller and can only be modified by being overwritten again. If no automatic switch is desired, all elements of tziInfo.stStandardDate and tziInfo.stDaylightDate must be set to 0. (for further information see library CAA_RealTimeClock ) InOut: Scope Name Type Comment Input xExecute BOOL Rising edge: Action start Falling edge: Resets outputs. If a falling edge occurs before the function block has completed its action, the outputs operate in the usual manner and are only reset if either the action is completed or in the event of an error. In this case, the corresponding output values (xDone, xError, iError) are present at the outputs for exactly one cycle. tziInfo RTCLK.TIME_ZONE_INFO Information on the time zone Output xDone BOOL Action successfully completed xBusy BOOL Function block active xError BOOL TRUE : error occurred, function block aborts action FALSE : no error eError ERROR Error description for diagnosis
Time and Date ¶ Reading and setting of the realtime clock is already supported by modules of the library CAA_RealTimeClock.lib . These modules, however, might not take into account the time zone and a possible switch between summer and standard time. If an automatic switch is desired all the same, the function blocks of the CAA_DTUtility library can be used for reading and setting the realtime clock. In this case the time switch is done via this library. The switch between summer and standard time is not done until one of the function blocks GetDateAndTime or SetDateAndTime is called. For this reason it is recommended to read the system time cyclically via function block GetDateAndTime . If the runtime system supports the automatic switch between summer and standard time, the calls of the library will be forwarded directly to the corresponding functions of library CAA_RealTimeClock and the clock switch will be done by the runtime system. GetDateAndTime (FunctionBlock) SetDateAndTime (FunctionBlock)