Установить часы можно двумя способами:
Средствами Linux
необходимо подать две команды:
1) задать текущее время SysExecute('date -s 2012.06.11-20:50:00');
2) сохранить изменения SysExecute('hwclock -w');
Средствами CoDeSys
VAR
get:BOOL;
set:BOOL;
SetTime: systimedate30;
UtcTime: DWORD;
res:UDINT;
END_VAR
IF get THEN
get:=FALSE;
SetTime.wDayOfWeek :=0;
SetTime.wMilliseconds :=0;
SetTime.wHour :=0;
SetTime.wMinute :=0;
SetTime.wSecond :=0;
SetTime.wYear :=0;
SetTime.wMonth :=0;
SetTime.wDay :=0;
UtcTime:=SysTime23.SysTimeRtcGet (res);
SysTime23.SysTimeRTCConvertUtcToDate (UtcTime,SetTime);
END_IF
IF set THEN
set:=FALSE;
SysTime23.SysTimeRTCConvertDateToUTC(SetTime,UtcTi me);
SysTime23.SysTimeRtcSet (UtcTime);
END_IF
Версия библиотеки SysTime23 - 3.4.0.10
для синхронизации время можно передавать через переменные Modbus например а потом применять одним из вышеперечисленных способов