Среда разработки Unimod PRO 2 (версия 2.3.40)
 Руководство по программированию
×

TIME_SET - установка текущего времени


Назначение.
Функциональный блок TIME_SET изменяет текущее время на мастер-модуле.
 
Состав структурной переменной.
Переменная со структурным типом TIME_SET будет добавлена в локальный словарь автоматически при добавлении блока в редактор.
Параметры RESET и FAULT в настоящее время не используется.
 
Описание алгоритма.
Время в формате UTC передается на вход UTC_MSEC и устанавливается в качестве текущего времени устройства.
Вызов блока должен осуществляться с использованием условной конструкции, только при необходимости. При отсутствии условия вызова, текущее время на устройстве будет перезаписываться в каждом цикле контроллера.
В Unimod PRO 2 время в формате UTC представлено в виде вещественного числа двойной точности, которое соответствует числу миллисекунд, прошедших с полуночи 01 января 1970 года (часовой пояс UTC+0).
 
Пример синтаксиса на языке ST.
//Неправильно! Дата и время в каждом цикле равны значению UTC_MSEC
Block.TIME_SET(UTC_MSEC, RESET);
//Правильно! Изменение даты и времени однократное и ограничено условием
if (flag_time_set = true) then
    Block.TIME_SET(UTC_MSEC, RESET);
    flag_time_set := false;
end_if;