Универсальный датчик ДУ-Р1

LocMe.ru — intelligent monitoring!
Универсальный датчик ДУ-Р1 — беспроводное устройство, которое является довольно универсальным прибором и может использоваться в различных режимах работы.
Начнем с очевидных плюсов.
Это беспроводной прибор. Он полностью автономен. Не нуждается в прокладке кабельных трасс, замене элементов питания и обслуживании. Отсутствие проводов облегчает монтаж и значительно сокращает его время. Используется радиоинтерфейс, работающий в диапазоне 2,4 ГГц, с собственным протоколом. Может использоваться без навигационного терминала, так как имеет встроенную память для хранения результатов измерений за последние 90 дней.
Использование радиоинтерфейса в нелецинзируемом диапазоне 2,4 ГГц является довольно спорным решением, однако мы должны отметить, что проводили испытания универсального датчика ДУ-Р1 в зоне действия как минимум 20 точек доступа Wi-Fi и при этом не испытывали никаких трудностей с приёмом сигнала от датчика ДУ-Р1 к приемнику ПРС-021.
Испытывали датчик мы в трех режимах: датчик температуры, радиометка и датчик моточасов, подключая его к навигационному терминалу как по протоколу LLS, так и по протоколу ModBus. И если к внешнему виду и качеству сборки прибора у нас никаких претензий не было, то в части реализации протоколов, а также их описанию на сайте производителя замечаний более чем достаточно.
Тест первый — Беспроводной двухканальный датчик температуры на базе Универсального датчика ДУ-Р1
В этом режиме мы решили испытать датчик ДУ-Р1 в первую очередь именно потому, что сейчас спрос на датчики температуры с беспроводным интерфейсом довольно высок.
Универсальный датчик ДУ-Р1 в режиме датчика температуры обладает довольно скромными характеристиками и способностями. В частности, для большинства современных решений разрешающая способность в один градус уже недостаточна. Заказчик нынче пошел привередливый и хочет видеть изменения до сотых. Присутствие двух дискретных «выходов» тоже является спорным плюсом, а с учетом того, что ДУ-Р1 в режиме измерения температуры довольно инертен, этот плюс и вовсе нивелируется. Дискретные выходы, как вы понимаете, не имеют физических окончаний, а передаются как сигналы в протоколах LLS и ModBus. Описание протоколов можно найти на странице прибора на сайте производителя. Оно довольно детальное, но, увы, не полное.
Начнем с протокола ModBus
Казалось бы все понятно, карта регистров исчерпывающая. Однако производитель почему-то забыл упомянуть одну важную характеристику регистров — их размер. Так вот, для того, чтобы у коллег-интераторов, которые рискнут использовать этот прибор, не возникло затруднений и недопониманий, разъясняем:
- температура передается в одном байте, в конкретном случае это беззнаковое значение;
- срабатывание выходов передается в одном байте, в конкретном случае это битовое поле;
- параметр «мониторинг батареи и доступности датчика» передается в двух байтах, значение беззнаковое;
- параметр «уровень сигнала» передается в одном байте, тоже беззнаковое.
В тестовых целях используем навигационный терминал Navtelecom SMART S-2435 MAX. Это один из лучших терминалов в своем классе. Настройки терминала Navtelecom SMART S-2435 MAX по карте ModBus регистров датчика ДУ-Р1 будут выглядеть следующим образом. Обратите внимание, что порт RS-485 должен иметь именно такие настройки (19200/None/1). Настройки для порта заданы в приемнике радиосигнала ПРС-02 и изменить их нельзя.
Любую картинку (почти) на нашем сайте можно увеличить простым кликом компьютерной мыши.
На следующем слайде представлены настройки протокола для терминала Navtelecom SMART S-2435.
Если эти настройки не выполнить, то параметры не будут передаваться на сервер мониторинга и не будут видны во вкладке «Телеметрия» конфигуратора Navtelecom.
Обратите внимание, что температура передается как 100, при этом реальная температура 0 градусов. Это соответствует описанию для регистра с адресом «0». А вот температура в чистом виде в регистре с адресом «1» не обнаружена. Уровень сигнала формируется по этому же принципу, только уже без лишних подробностей в документации.
Может так случиться, что все параметры из карты регистров ModBus окажутся не нужны. На этот случай производитель предусмотрел возможность настраивать не всю карту целиком, а только отдельные параметры. В этом случае каждому параметру присваивается отдельный адрес в сети RS-485. И вот тут надо тщательно расчитывать свои силенки, а если быть точнее — ориентироваться на технические характеристики навигационных терминалов. Адресов в терминале может не хватить на все необходимые параметры, особенно если в параллель будет работать ДУТ или два ДУТа. Кстати, в режиме работы по протоколу ModBus это невозможно.
На скриншоте ниже все параметры датчика ДУ-Р1 настроены по отдельности, а не по карте регистров ModBus. Задействовано 5 адресов в сети RS-485.
В этом случае температура также передается в формате LLS в соответствии с описанием, а вот уровень сигнала от датчика передается в чистом виде. Возможно, разработчики вложили в это какой-то глубокий смысл, вот только своим клиентам они почему-то об этом рассказывать не стали.
Мы умышленно испробовали оба способа, ведь дальше нас ждет тест работы датчика по протоколу LLS. Вот тут реально для каждого параметра придется использовать отдельный адрес в сети RS-485. В случае с терминалом Navtelecom SMART S-2435 мы будем ограничены подключением 4 датчиков. Протокол ModBus позволит нам подключить 16.
Настраиваем датчик для работы по протоколу LLS
Настройки в режиме LLS довольно простые.
В настройках протокола тоже достаточно отметить соответствующие поля.
В «телеметрии» наблюдаем следующую картину:
- «ДУТ 1» передает температуру в формате LLS в поле «Уровень топлива» и температуру в формате LLS в поле «Температура»;
- «ДУТ 2» и «ДУТ 3» передают дискретные состояния в поле «Уровень топлива» и температуру в формате LLS;
- «ДУТ 4» передает параметр «Мониторинг батареи и доступности датчика»и температуру в формате LLS;
- «ДУТ 5» передает уровень радиосигнала от датчика и температуру в формате LLS.
Хорошо, но мы считаем, что это как-то слишком жирно — занимать 5 адресов под один датчик.
Тест второй — Радиометка на базе Универсального датчика ДУ-Р1
И вот в этом месте мы заранее предупреждаем наших читателей о том забавном факте, что использовать радиометку на базе универсального датчика ДУ-Р1 в паре с протоколом LLS затея глупая и бесполезная, ибо получить идентификационные данные метки посредством LLS нельзя. Поэтому предлагаем всем сразу расти до протокола ModBus.
Сам универсальный датчик ДУ-Р1 для работы в качестве радиометки настраивается в отдельной вкладке конфигуратора приемника радиосигналов ПРС-02.
Необходимо поставить галочку «Принимать и передавать радиометки», выбрать сетевой адрес RS-485 и идентификатор. Мы выбрали первый адрес и серийный номер датчика в качестве идентификатора метки.
К сожалению, нам не удалось протестировать, как приемник и терминал отработают с несколькими метками, поэтому мы можем лишь предполагать, что адреса с нулевого по третий зарезервированы под ID меток именно на этот случай. Но каким образом они распределяются или используются, если в качестве ID метки выбирается не 2-байтовое значение, а большее число? Скудность описания протокола ModBus в документации оставим на совести производителя. Попробуем настроить терминал для приема данных метки.
Регистры с нулевого по третий имеют размер 2 байта (опять производитель это скрывает). Четвертый и пятый регистры однобайтовые. Все беззнаковые.
Заглянем во вкладку «Протокол»:
Теперь посмотрим вкладку «Телеметрия»:
Видим уровень сигнала от метки, состояние батареи и ID нашей метки. Три других регистра для ID меток содержат нули, что вполне естественно, так как других меток у нас нет.
Переходим к следующему тесту, ради которого все и затевалось.
Тест третий — Беспроводной датчик контроля моточасов на базе Универсального датчика ДУ-Р1
Конечно, контролировать моточасы датчиком стоимостью 3510 рублей (в комплекте с приемником радиосигнала ПРС-02) для большинства клиентов вопрос довольно спорный. Вероятно, еще не все понимают ценность такого контроля.
Начнем с ModBus.
Восполняем пробелы, оставленные производителем:
- «срабатывание выхода» — регистр занимает 1 байт, битовое поле;
- «температура» — 1 байт, беззнаковый;
- параметр «мониторинг батареи и доступности датчика» — 2 байта, беззнаковый;
- параметр «уровень сигнала» — 1 байт, беззнаковый.
Настраиваем навигационный терминал по карте регистров.
Здесь мы сделали небольшое лирическое отступление и настроили отдельным датчиком с адресом «2» тот же параметр, что передается в регистре с адресом «b». Это наша очередная попытка понять, что там происходит в головах у разработчиков. Она, правда, успехом пока не увенчалась. Один и тот же параметр с одного и того же датчика должен приходить с одним и тем же значением. Результат на вкладке «Телеметрия» утверждает обратное.
Настраиваем протокол.
Получаем данные во вкладке «Телеметрия».
Еще интереснее получилось с протоколом LLS.
Вроде все корректно. Задействовано 4 адреса сети RS-485. Но значение температуры (ДУТ с адресом «2») в поле «Уровень топлива» — полный бред.
Да, можно приспособиться, можно брать только отдельные корректные значения. Можно домыслить за производителя, экспериментальным способом выяснить то, что не описано в документации, самостоятельно разобраться с несоответствиями. А можно просто не выпускать на рынок сырые датчики, а потратить чуть больше времени и довести все до состояния коммерческого продукта. Но, видно, потребитель у нас ещё не настолько требовательный, чтобы так утруждать себя производителю, репутация которого на рынке и без того была неоднократно подорвана. Делать что-то для исправления ситуации ни к чему.
Хотя, стоит признать, колодки для предохранителей и пломбы-наклейки у компании Автосенсор отменного качества.