При опросе Карат-307 возникает "Ошибка выполнения команды устройства"

Здравствуйте!

После доработок драйвера опроса Карат-307, призванных повысить стабильность опроса, у нас на многих Каратах эта самая стабильность как раз сильно ухудшилась. Вплоть до невозможности вообще считать хоть какие-то данные. До всей этой эпопеи с драйверами Карат-307, всё прекрасно работало. Карат-307 один из немногих приборов, к которому у не было никаких нареканий как со стороны самого прибора, так и со стороны работы ЛЭРС с этим прибором.
Теперь же опрос зачастую выглядит вот так:24.10.2017 14:48:57.093 Чтение ЧАСОВОГО архива
24.10.2017 14:48:57.093 Чтение данных за интервал 18.10.2017 00:00:00 - 24.10.2017 13:00:00
24.10.2017 14:48:57.904 Считаны данные за 18.10.2017 00:00:00
24.10.2017 14:48:58.793 Считаны данные за 18.10.2017 01:00:00
24.10.2017 14:48:59.698 Считаны данные за 18.10.2017 02:00:00
24.10.2017 14:49:00.400 Карат-307: Ошибка выполнения команды устройства. Не сходится контрольная сумма пакета
24.10.2017 14:49:01.507 Карат-307: Ошибка выполнения команды устройства. Не сходится контрольная сумма пакета
24.10.2017 14:49:02.709 Карат-307: Ошибка выполнения команды устройства. Не сходится контрольная сумма пакета
24.10.2017 14:49:03.910 Карат-307: Ошибка выполнения команды устройства. Не сходится контрольная сумма пакета
24.10.2017 14:49:05.111 Карат-307: Ошибка выполнения команды устройства. Не сходится контрольная сумма пакета
24.10.2017 14:49:05.111 Ошибка опроса устройства КАРАТ-307 #17771112. Запрос не обработан после 5 попытокЧитаются, читаются данные, а потом раз и “конец света”. Причем может долго читаться, а может, как в приведенном примере, пару значений и дальше ошибка. А бывает и сразу ошибка, только конфиг нормально и удается прочитать.
Журнал опроса и дамп прилагаю.
dump.log (5.6 KB)
Журнал опроса.xls (18.5 KB)

О какой доработки драйвера (эпопеи) Карат-307 идет речь?

Вот здесь написано, что был доработан драйвер: http://forum.lers.ru/viewtopic.php?f=23&t=5259&hilit=Карат+307#p36492

Так же была тема про “зацикливание чтения” с Карат-307, но я не помню чем там дело кончилось, дорабатывали ли драйвер еще раз.

Если смущает слово “эпопея”, можно заменить на слово “история” или на любое другое слово, которое вас устроит, мне без разницы. Моя задача только лишь в том, чтобы опрос снова заработал без сбоев, как это было на протяжении нескольких лет до этого.

Отказ оборудования, конечно же, полностью не исключаю. Однако, одинаковые проблемы возникли одновременно на разных домах, на устройствах никак друг с другом не связанных аппаратно. Их объединяет только ЛЭРС. Плюс, как минимум, есть один факт доработки драйвера. Поэтому подозрение, в первую очередь, пало на программную часть.

Может что-то из этой оперы? - http://forum.lers.ru/viewtopic.php?f=23&t=4944&p=33961

За последний год в драйвер КАРАТ-307 были внесены следующие изменения: уменьшение тайм-аута ожидания ответа устройства (что позволило увеличить скорость опроса на быстрых каналах связи), добавление тайм-аута перед отправкой запроса прибору (как сообщил производитель, перед отправкой запроса прибору необходимо выдержать тайм-аут в 100 мс).

Второе изменение не могло повлиять на опрос устройства.

Возможно на вашем канале связи недостаточно ожидание ответа, которое используется в драйвере по умолчанию. Попробуйте увеличить время ожидания на 1000 или 2000 мс.

По вопросу “Зацикливание чтения данных с КАРАТ-307” мы не вносили изменения в драйвер, поскольку проблема заключалась в программном обеспечении прибора.

Добавил 500 мс, толку мало. Добавил 1000 мс, вроде сейчас работает, но это же не дело, на каждую команду по 1 секунде доп.паузы. Что толку тогда от чудесной скорости 19200, которую поддерживает Карат-307?

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

Вы видимо невнимательно прочитали мое сообщение. В драйвер были внесены следующие изменения: ранее в драйвере было жестко прописано, что необходимо ожидать ответ от прибора в течении 1500 мс. Это не значит, что служба опроса ждет 1500 мс, а потом читает данные, это значит, что служба опроса пытается считать данные в течении этого времени, и если ответа нет, то запрос будет повторен. Если ответ от прибора придет раньше, то он будет считан и не будет ожидания в 1500 мс. Кроме того к жестко прописанному ожиданию ответа добавлялось ожидание ответа, которое установлено в свойства оборудования. Сейчас в драйвере карат мы убрали ожидание ответа 1500 мс и задержку пользователь должен выставлять в свойствах оборудования. Это изменение влияет на работу медленных каналов связи. На быстрых каналах связи вы не должны были заметить изменений.
А теперь покажите ваш журнал опроса и дамп обмена, которые были сделаны после того, как вы установили задержку в свойствах оборудования.

Также зайдите в папку, в которой установлена служба опроса ЛЭРС УЧЕТ, нажмите правой кнопкой мыши на файле Lers.PollService.exe и сделайте скриншот вкладки Подробно. Покажите скриншот.

В меню правой кнопки нет пункта “Подробно”. Может вы имеете ввиду “СвойстваПодробно”?

Да, я опечатался. Необходимо зайти в свойства и сделать скриншот вкладки Подробно.

Держите. Всё в архиве.
pack.zip (145 KB)

1000 мс - это время, в течении которого лэрс будет дополнительно ожидать передачу данных от прибора, если они не успевают передаться. У вас я так понимаю модемное соединение? Как раз 1000 и нужно выставлять. Не путайте скорость интерфейса Карата и скорость передачи по модемному каналу, она 9600.

Что касается вашего “завершения опроса” - то видно что вы пытаетесь считать за один опрос ЧАСОВЫЕ данные за весь МЕСЯЦ, естественно на это уходит много времени. Зачем вам часовые данные, если опрос вы проводите раз в месяц? опрашивайте только дневные, проблем не будет. Если нужны часовые, лучше делать опрос каждые сутки.

Не угадали, Moxa у нас. А между домами оптика. Между Каратом и Moxa скорость 19200.

Не стоит делать поспешные выводы… В журнале же видно, что это ручной опрос. И данные не за месяц, а больше. А почему так? А потому что это тестовый опрос, после установки параметра timeout 1000. Автоматически часовые данные уже давно не читались по той же причине, что была создана эта тема. Но выяснилось это относительно недавно, после старта отопительного сезона. Летом никто не смотрит на эти данные. К том же суточные при автоопросе считывались и Карат в ЛЭРС выглядел зеленым, типа всё ок. И да, автоопрос у нас раз в сутки (с повторами), само собой.

У вас время между запросом к устройству и ответом находится в интервале от 400 до 800 мс. При этом чем раньше дата запрашиваемой записи, тем больше интервал между запросом и ответом.
Единственной вариант, который можно предложить, для увеличения скорости опроса, так это сократить этот интервал.
Причиной возникновения такой задержки может быть прибор, в котором время тратится на поиск архивной записи или канал связи.

У вас также задержка между ответом устройства и следующим запросом около 500 мс. У нас данная задержка равна 150 мс. Возможно у вас загружен компьютер, на котором установлена служба опроса.