Коррекция времени в ЭКОМ может быть выполнена при помощи следующих источников:
Точное время ЭКОМ может получать от приёмника GPS, либо с циклом 160 секунд от NTP-сервера (если сервер времени указан в конфигурации). Приоритетным считается GPS-приёмник.
В случае, когда "Сервер опроса" корректирует время УСПД/модуля УСО, в протоколе работы системы по этому УСПД/модулю УСО будет зафиксировано событие "Синхрон." с меткой времени записи события в БД, и величиной коррекции в поле "Комментарий", определяемой непосредственно перед выполнением коррекции в виде разницы между временем ПК, на котором запущен "Сервер опроса", и временем, полученным от УСПД/модуля УСО непосредственно перед коррекцией. Впоследствии в протокол работы системы по этому УСПД/модулю УСО из УСПД/модуля УСО будут считаны и сохранены в БД его пара событий "коррекция времени/перед" (код 15) и "коррекция времени/после" (код 16) с метками времени при них.
Величина коррекции в секундах события "Синхрон." (поле "Комментарий") не учитывает временных задержек в линии связи, и следовательно не может считаться фактической величиной коррекции времени УСПД/модуля УСО. Точным определением того, на какую величину было скорректировано время УСПД/модуля УСО, является разница между метками времени событий коррекции, полученных из журнала УСПД/модуля УСО, то есть событий "коррекция времени/перед" (код 15), "коррекция времени/после" (код 16), или значение параметра Fpar любого из пары этих событий.
Если при чтении времени УСПД/модуля УСО "Сервером опроса" интервал между временем отправки запроса чтения времени и временем получения ответа УСПД/модуля УСО на этот запрос больше величины "допустимой рассинхронизации", задаваемой в настройках "Сервера опроса", коррекция времени УСПД/модуля УСО "Сервером опроса" не выполняется.
Для приема времени можно использовать как встроенный, так и внешний модуль GPS. Если такие модули внесены в конфигурацию контроллера и хотя бы с одного из них в контроллер поступает сигнал точного времени, другие методы коррекции времени контроллера автоматически отключаются (если не установлен приоритет NTP перед GPS). Встроенный модуль GPS сконфигурирован на порту COM2 без возможности переключения.
Точное время GPS-приёмника УСПД получает с той частотой, с какой его выдаёт сам приёмник. Если на протяжении 2 секунд пакет с точным временем не был получен, ЭКОМ сам запросит его и получит в течении максимум 4 секунд. Коррекция производится на величину рассинхронизации с точностью до секунды. При рассинхронизации меньше чем на 40 минут коррекция производится постепенно (однократно на максимально возможную величину внутри каждого следующего короткого интервала архивирования УСПД, обычно он равен 3 минутам).
При этом в журнал событий УСПД (канал j0) заносятся пары событий "коррекция времени по GPS/перед" (код 17) с меткой времени выполнения коррекции и комментарием вида "было отставание/опережение на n сек.", и "коррекция времени по GPS/после" (код 18) с меткой вновь установленного времени и комментарием "отставание/опережение на m секунд отложено до следующей коррекции" (либо "полная коррекция", если время УСПД и GPS синхронизировано). Параметр Fpar в парных событиях 17, 18 содержит величину коррекции - разницу в секундах между метками времени этих событий.
При рассинхронизации, превышающей 40 минут, коррекция производится 1 раз на всю величину рассинхронизации. Максимальная величина однократной коррекции времени не ограничена.
При возникновении проблем с определением времени по GPS (неисправен приёмник, обрыв или КЗ антенны, не видны спутники), в журнале событий УСПД (канал j0) фиксируется событие "пропало время GPS" (код 40) с меткой времени фиксации события. При последующем устранении данных проблем в журнале событий УСПД фиксируется событие "восстановлено время GPS" (код 41) с меткой времени фиксации события.
УСПД с GPS-приёмниками, имеющими выход PPS (pulse-per-second), вдобавок к вышесказанному обеспечивают рассинхронизацию с временем GPS не более 1 миллисекунды. При этом выполняется ежесекундная синхронизация до границы ближайшей секунды. В журнале событий УСПД эти минисинхронизации не отражаются.
Поддержка синхронизации времени от спутников ГЛОНАСС зависит от типа GPS-модуля и года выпуска прибора:
Посмотреть тип приемника можно в конфигурации на вкладке «Удаленные модули УСО» – «GPS»:
Месяц и год выпуска прибора можно определить по заводскому номеру: первые две цифры заводского номера – месяц производства, вторые – год производства.
Поддерживающий перевод на ГЛОНАСС модуль имеет номенклатурное наименование ML8088. Чтобы точно определить тип используемого модуля на контроллере, необходимо открутить лицевую панель (где расположены интерфейсы) |
Проверить приём времени по GPS (использовать CRQ-запрос «xxx.xxx.xxx.xxx/crq?req=getfile&name=/proc/time» или блок диагностики прибора).
Если ЭКОМ не поддерживает синхронизацию по спутникам, предлагаются варианты:
ЭКОМ сам можем выступать в роли NTP-сервера. NTP-сервер в нём всегда включен, специальных настроек не требуется. Но как источник точного времени не сертифицирован – надо учитывать, если это будет критично.
Если сконфигурирован прием времени как по GPS, так и по NTP, по умолчанию приоритет имеет GPS (синхронизация будет выполняться по нему).
После конфигурирования любого внешнего оборудования его нужно добавить в конфигурацию контроллера. Для этого нужно сделать несколько действий:
После сохранения конфигурации и перезагрузки контроллера проверить метод синхронизации времени можно через CRQ-запрос «xxx.xxx.xxx.xxx/crq?req=getfile&name=/proc/time» или блок диагностики прибора.
Настроек не требуется, часы реализованы аппаратно, работает в случае отсутствия всех вышеперечисленных источников точного времени контроллера.
Время внешних модулей УСО после включения УСПД не синхронизируется до получения точного времени от GPS-приёмника или NTP-сервера, либо истечения двух основных интервалов архивирования (длина интервала задана в самом модуле УСО - обычно 30 минут) в отсутствие точного времени.
УСПД считывает время опрашиваемых модулей УСО однократно в каждой сессии обмена с модулем. Корректирует время модуля УСО не чаще 1 раза внутри основного интервала архивирования. Если внутри основного интервала время уже корректировалось, коррекция откладывается на следующий интервал.
Поводом для коррекции служит превышение рассинхронизации по времени между ЭКОМом и модулем УСО параметра "Допустимая разница по времени", задаваемого в конфигурации ЭКОМа для каждого модуля УСО (по умолчанию 3с, минимальное значение параметра 1с, максимальное не ограничено). Максимальная величина однократной коррекции времени и период коррекции определяются типом модуля УСО - например, для счётчика СЭТ возможна коррекция один раз в сутки и не более чем на 2 минуты.
При выполнении коррекции УСПД фиксирует в своём журнале событий счётчика (j-канал) событие "команда коррекции времени модуля УСО" (код 23), с меткой времени получения ответа от счётчика на эту команду, и величиной коррекции в секундах в параметре Fpar, в параметр Ipar сохраняется код ошибки при выполнении команды, формируемый ЭКОМом (0 - успешное выполнение команды коррекции; -1 - не получен корректный ответ на команду (ошибка связи); -2 - счётчик не предоставляет в ответе кода ошибки; все остальные значения - код ошибки в ответе самого счётчика).
Впоследствии в одной из следующих сессий опроса счётчика в журнал его событий в УСПД (j-канал) считываются события коррекции времени из самого счётчика с метками времени, зафиксированными счётчиком. При этом событие начала коррекции сохраняется в виде "коррекция времени/перед" (код 15), а событие окончания коррекции "коррекция времени/после" (код 16).
Если счётчик не разделяет события начала и окончания времени коррекции (например, счётчики СЕ303, ЦЭ, EPQS, ISKRA, ПСЧ-xТА, SL7000), в его журнал в ЭКОМе (j-канал) событие коррекции из самого счётчика будет занесено как "коррекция времени" (код 6), с меткой времени, зафиксированной счётчиком, и без указания величины коррекции.
Величина коррекции в секундах (параметр Fpar) события "команда коррекции времени модуля УСО" (код 23) не учитывает погрешностей, имеющих место при выполнении синхронизации времени счётчика (временные задержки в линии связи, неточность представления времени счётчиком), и следовательно не может считаться фактической величиной коррекции времени счётчика. Точным определением того, на какую величину было скорректировано время счётчика, является разница между метками времени событий коррекции, полученных из счётчика, то есть событий "коррекция времени/перед" (код 15), "коррекция времени/после" (код 16), либо "коррекция времени" (код 6).
Если при чтении времени модуля УСО разница по времени с УСПД составит более половины основного интервала профиля счётчика, УСПД прекратит опрос профилей, событий, зафиксированных показаний, тарифных сумм, то есть значений, выдаваемых модулем УСО с меткой времени, оставив лишь опрос текущих значений телеметрии и показаний, выдаваемых модулем УСО без метки времени. Возобновление опроса указанных значений произойдёт после уменьшения рассинхронизации до величины, меньшей половины основного интервала архивирования модуля УСО.