Коррекция времени не изменяет время при плохом канале связи ТБК-100 [17053]

Версия ЛЭРС УЧЁТ: 3.63.4
Сервер БД: SQL Server

Вот скриншоты сеансов обмена. Из них видно, что корректировка времени невозможна, но причина не указана. Искать решение сложно, не понимая причины невозможности корректировки времени.

Прошу пояснить причину невозможности корректировки времени в этих случаях, а также указывать эту причину в журнале опроса.

dump.RevdaFargoMaestro100.2025-12-05.log.gz (294,4 КБ)

Приложите, пожалуйста, файл журнала опроса, где отражена описываемая ситуация и к которому относится присланный дамп обмена. Также приложите скриншот привязки каналов и ячеек опрашиваемого в этом журнале прибора.

Журнал опроса.xlsx (7,5 КБ)

Как видно из вашего журнала, время в приборе вплоть до минут указывает на начало часа, а значит находится на его границе:

Дата и время по часам устройства: 05.12.2025 22:00:25

При проведении коррекции времени выдается соответствующее предупреждение с указанием причины:

ТБК-100: Выполнение коррекции на границе часа невозможно. Повторите выполнение коррекции через 60 секунд.

Ваше утверждение об отсутствии в журнале опроса описания причины невозможности проведения коррекции времени не соответствует действительности.

А вот как выглядит корректировка когда запрос не попадает на границу часа

прикладываю журнал опроса и дамп обмена

Журнал опроса.xlsx (7,7 КБ)

dump.RevdaFargoMaestro100.2025-12-09.log.gz (343,6 КБ)

Попробуйте провести коррекцию времени заводской программой. Покажите результат ее проведения.

Я пообщался с разработчиками прибора, и в результате совместного анализа и собственных экспериментов выяснилось следующее.

  1. Похоже, что при попытке коррекции времени на границе часа эта попытка сбрасывает счетчик попыток корректировок времени. У ТБК‑100 допускается одна попытка коррекции в сутки. Если пытаться корректировать время второй и последующие разы в тот же день, прибор возвращает код «E5» и именно он виден на скриншотах в ранних сообщениях как раз в ситуациях, когда первая попытка приходилась на переход часа, а последующие запросы получали ответ «E5».
    Правда это предполоджение технический специалист не подтверждает. Вот сообщение об этом:
    “Проверили. После неудачной попытки перевода на границе часа попытка не теряется - потом один раз удачно переводится.”

Однако логи явно указывают на описанное поведение. И вне зависимости от диагноза, я бы предложил в ЛЭРС не выполнять коррекцию времени ТБК‑100 на границе часа, чтобы не тратить суточную попытку. Разбор причин проблем с корректировкой — процесс небыстрый, и не стоит заставлять пользователя разбираться в особенностях «границы часа» и алгоритмах перевода времени.
2. [quote=“Иван Славный, post:6, topic:18855, full:true, username:slavniy”]
Попробуйте провести коррекцию времени заводской программой. Покажите результат ее проведения.
[/quote]

Сделать это я не могу: Не существует нет заводской программы, которая позволяла бы корректировать время по каналу CSD. А проблемный прибор сидит на этом канале. И под рукой всего один такой прибор

  1. После переноса времени опроса формально коррекция стала проходить, но, на мой взгляд, фактически не выполняется. Например, по запросам за соседние дни: 16.12 в 3 часа ночи расхождение было 93 секунды, 17.12 в 3 часа ночи — снова 93 секунды (см. приложенные скриншоты и журналы опроса).

И данные по этим запросам
Журнал опроса 17.xlsx (8,5 КБ)
dump.RevdaFargoMaestro100.2025-12-16.log.gz (178,3 КБ)
dump.RevdaFargoMaestro100.2025-12-17.log.gz (171,6 КБ)
Журнал опроса 16.xlsx (8,1 КБ)

Технический специалист производителя, которому я показал эти данные, дал следующее пояснение:

"Посмотрели лог. Причину, кажется, нашли. Все команды проходят правильно, корректировка работает. НО… Вы отправляете в прибор время, сдвинутое (с Вашей точки зрения) на 3 секунды относительно времени прибора. Но точность определения времени прибора составляет иной раз больше 3 секунд и время доставки пакета с командой записи до прибора тоже порой составляет больше 3 секунд. Получается, что прибор корректирует время, но, вполне возможно даже в другую сторону. Поясню на примере. Считали с прибора время, пакет шел 3 секунды. Получив пакет, Вы увидели, что оно отличается от сервера на 80 секунд в меньшую сторону. На самом же деле на 77 секунд (т.е. минус время доставки пакета). Дальше скорректировали смещение - взяли вместо 80 секунд 3 секунды. Затем вычислили нужное время прибора относительно текущего времени сервера как время сервера минус 77 секунд (относительно времени прибора в момент отправки это время составляет в нашем примере 0 секунд) и отправили в прибор команду установить такое время. Команда шла еще 3 секунды до прибора. итого прибору пришла команда откорректировать время на минус 3 секунды относительно его текущего времени. В итоге часы прибора стали отличаться от сервера еще сильнее в меньшую сторону.

Чтобы всего этого избежать, достаточно изменить алгоритм корректировки.

Надо отправлять для корректировки часов время сервера без обрезания до 3 секунд. В этом случае прибор откорректирует часы в нужную сторону на 3 секунды."

"Я бы хотел акцентировать внимание на еще одном моменте, в РЭ это явно не описано. При переводе часов в режиме РАБОТА (т.е. на 3 секунды) надо отправлять в прибор нужное вам время, но обязательно того же часа, который идет сейчас в приборе. Иначе перевод может выполниться в другую сторону, т.к. программа настроена на перевод часов в режиме РАБОТА только в пределах текущего часа. Например, если Вы в режиме РАБОТА в 14:02:00 (время прибора) переведете часы на 13:57:00 (нужное Вам время), то часы переведутся на 14:02:03, т.е. в другую сторону. При следующей корректировке РЭ я данное примечание добавлю в описание процедуры корректировки времени.

Чтобы избежать этой проблемы корректировать время на большое отставание (опережение), но меньше чем на полчаса, лучше всего на середине часа. Если уход часов больше получаса, то надо разбивать корректировку на меньшие интервалы. В любом случае корректироваться будет только на 3 секунды в сутки. В режиме ПАУЗА никаких этих ограничений нет. Только то, что надо стирать все архивы при корректировке часов назад больше чем на час. (это в РЭ описано)."

Если потребуется, контакт технического специалиста производителя:
Павел Жарков, e‑mail: zharkov@teplo-balans.ru.
Номер телефона могу при необходимости отправить на support@lers.ru.

На границе часа, когда вы видите сообщение “Выполнение коррекции на границе часа невозможно. Повторите выполнение коррекции через n секунд.”, коррекция никакая и не проводится, поэтому та единственная попытка в сутки не должна тратиться. Чтобы избежать проблемы коррекции, про которые пишет производитель, коррекция допускается только в диапазоне минут 1-58. Ошибка некорректной коррекции может произойти сейчас у нас только в том случае, если коррекция проводится в конце часа, например, в 58 минут и 55секунд + задержки канала связи (более 5 секунд). Если анализировать ваш дамп, то по нему видно, что у вас задержка ответа как раз около 3-5 секунд, что по сути нивелирует коррекцию в 3 секунды. Даже если использовать “обновленный” алгоритм от производителя, то в вашем случае, это не решит проблемы, так как по сути ничего не меняется (решится только вероятная проблема при коррекции в конце часа, как я писал выше). Если бы, например, коррекция была возможна на 15 секунд, то в вашей ситуации при таких задержках производилась бы коррекция на ~10с. и вы бы видели изменения, а так получается, что толку 0.

Я вам показал скриншоты, поведенеия на границе скринщота. Вы на них напислаи следующее

Думаю вы ошиблись в ответе

Очень сложно изложили мысль. Только с 3-его раза возможно я понял, что вы хотели написать.

Вы написали, что тот способ корректировки, который предлагает производитель, к конкретной случае при таких задержках в канале не позволяет корректировать время в ТБК-100. Я правильно понял?

Время корректируется, но при таких задержках вы не видите изменений.

Я не погружался в алгоритм, но вот тут вроде есть указание как это побороть. Понятно ли что тут нужно сделать?

Предоставьте, пожалуйста, доступ к проблемному устройству.

Отправил на support@lers.ru

Доступ проверил. Необходимо будет все проверить и провести анализ. По результатам отпишусь.

Отключите у себя на время тестирования коррекцию времени, чтобы возможность корректировать время была у нас.

Да. Отключил

Воспользовавшись рекомендацией производителя, удалось добиться коррекции времени при плохом качестве сигнала. О завершении работ я сообщу.

Работа завершена. Изменение войдет в обновление ЛЭРС УЧЁТ 3.65.