Датчики климата (температуры, влажности) ОВЕН ПВТ, WirenBoard WB-MSW, Sentera ODTHM

Число просмотров: 1 887 

Датчики климата (температуры, влажности) с Modbus для помещений и улицы (WirenBoard, ОВЕН, SENTERA)

Датчики климата (температуры, влажности) с Modbus для помещений и улицы (WirenBoard, ОВЕН, SENTERA)

Сегодняшний пост готовился к выпуску с осени 2020 года, ахахаха! Я рад, что с ним получилась такая задержка: за это время у меня набралось много информации и опыта по датчикам WirenBoard, про которые я хотел рассказывать, ОВЕН обновил уличный датчик температуры и влажности ПВТ-100, выпустив модель ПВТ-110 (возможно, на момент выхода поста её даже не будет в продаже: я отхватил образец у ОВЕНа раньше), а мы с заказчиком из Mail.Ru-1 купили интересный уличный датчик температуры, влажности и освещёности SENTERA ODTHM.

Я хотел поделить этот пост на две части: написать отдельно про датчики ОВЕН и отдельно — про другие датчики. А потом я понял, что лучше написать один общий пост, в котором все эти датчики будет сравниваться между собой: по удобству монтажа, по удобству опроса и по функциям, вложенным в датчики. Готовьтесь: в посте будет МНОГО фоток! За сами фотки приношу извинения: некоторые будут тёмные, а некоторые — не в фокусе. К сожалению, я не смогу переснять некоторые из них, так как некоторые датчики уже уехали на объекты, а демо-стенд стены ушёл на мусорку!

Пост обновлён: WirenBoard рассказали о своих планах и исправлениях в карте регистров WB-MSW v3.

Введение. Где и зачем нужны датчики климата?

В качестве вступления давайте поговорим о том, где и зачем используются датчики температуры и влажности. Логично и тупо говорить о том, что для контроля параметров климата. Но вот где этот контроль нужен? Если мы говорим про очевидные случаи, то это будет контроль в жилых комнатах и помещениях: всем хочется знать о том, насколько в комнате жарко (особенно в адскую летнюю жару) и какова в комнате влажность.

О влажности я вообще хочу написать отдельно, так как выяснилось, что моя кожа ОЧЕНЬ-ОЧЕНЬ плохо переносит любую влажность. Как только влажность поднимается выше 20-25%, у меня на коже начинают лезть ужасные прыщи (как у подростков), а любая царапина перестаёт заживать. А как только влажность (зимой в морозы) становится ниже 20-25%, на мне всё заживает за полсуток. Этот секрет помог мне лучше понимать своё здоровье и знать особенности своего тела. Конечно же я знаю и обратные случаи, когда людям требуется повышенная влажность в районе 60% (как Киричу Funt), иначе они сразу начинают покашливать и легко заболевают соплями.

И ещё от уровня влажности зависит восприятие температуры человеком. Например, жара в +35 градусов, но с низкой влажностью будет переноситься гораздо лучше, чем жара +25 градусов, но с высокой влажностью. На таком восприятии часто основаны прогнозы погоды: это восприятие выводится чаще всего в виде строки «Ощущается как». К примеру зимой в сухую погоду мороз в -5 градусов совсем не ощущается, а при повышенной влажности и ещё и с ветром будет казаться, что там все -15 градусов!

Вот тут-то контроль параметров влажности вам поможет: если мы говорим о простой автоматике, то ПЛК (или другая система сбора данных) может предупредить вас о том, что параметры вышли за норму (так же как и уровень CO2, например). А если мы делаем систему на базе устройств управления климатом с Modbus или с управлением другим способом (часть моих заказчиков поставили себе канальные кондеи, приточные установки и увлажнители Carel с управлением по Modbus), то наш ПЛК (или другая система управления) может напрямую рулить влажностью и температурой, ориентируясь на показания датчиков.

Ещё одно применение датчиков климата — это проветривание гаражей и подвалов (для гаражей ещё применяют датчики угарного газа CO, которые ОВЕН тоже выпускает). Если ваш дом построен на местности с высоким уровнем грунтовых вод, то они могут проникать в подвал (или погреб) и поднимать там влажность, что приведёт к образованию плесени. Имея ПЛК и датчики влажности, вы можете включать вентилятор для проветривания подвала или гаража и снижения влажности в них. Ну и, конечно же, видеть влажность и температуру на графике.

Также прикольно ставить датчики температуры и влажности в санузлах, чтобы при повышении влажности автоматически включать вентилятор. Так как мы работаем с ПЛК (или другими программируемыми устройствами), то всегда можно накрутить сложный алгоритм, чтобы вентилятор не включался тогда, когда мы этого не хотим. Например, пусть вентилятор включается если свет погасили (используем F_TRIG — сигнал о спаде уровня, переходе из True в False) и если влажность выше заданного уровня, работая до тех пор, пока влажность не упадёт ниже заданной.

Конечно же поддержание температуры и влажности (всё-таки это два самых важных параметра в плане климата) очень важно и в промышленности: для складов, теплиц, бассейнов, производств (например, работающих с деревом)! Главное не использовать эти датчики в банях: на влажность им пофиг, а вот высокая температура (за 100 градусов) может вывести из строя электронику датчика.

Сенсором (тем, что определяет уровни температуры и влажности) во всех датчиках чаще всего является специальная микросхема (электронный компонент). И, в общем-то, много ума для того, чтобы припаять эту микросхему, опросить её микроконтроллером и выдать результат по Modbus — не надо. Как-то я упоминал датчики температуры и влажности от RazumDom (вот пост-ссылка), фотку которых вставлю ниже. Но вот ум нужен там, где надо довести простую измерилку до состояния готового продукта, дав какие-то гарантии на качество и точность измерений и надёжность работы самого датчика как изделия. Собственно, с RazumDom в этом плане начались проблемы: датчики врали и зависали, а поддержки — почти никакой не было (на уровне «Присылайте нам» или «Протрите сенсор спиртом»).

Датчики RazumDom серии MSU44 (температура + влажность, освещённость)

Датчики RazumDom серии MSU44 (температура + влажность, освещённость)

Также важным критерием в выборе датчиков оказался КОРПУС и удобство монтажа: вот не зря я поставил фотку датчиков RazumDom: видите, там клеммы для подключения питания и RS-485 расположены открыто. Представьте такой датчик смонтированным на крутой дорогой отделке квартиры (декоративная венецианская штукатурка, например) и два куска кабеля (шлейф: приходящий и уходящий), выходящие рядом из стены, разделанные и закрученные в эти клеммы. Впечатляет? ;)

На обзоре у меня сегодня аж четыре датчика, которые могут покрыть нужды промки и быта:

  • ОВЕН ПВТ-10 (готовится обновление до ОВЕН ПВТ-11): простой датчик для помещений, который меряет температуру, влажность и вычисляет точку росы. Главное достоинство: имеет сертификат поверки в лаборатории, где указана точность измерения по параметрам. Благодаря этому может использоваться там, где нужно поддержание климатических параметров с известной точностью.
    Предназначен для использования в помещении, имеет большое внутреннее пространство для удобной разделки и подключения кабелей RS-485 (Modbus), монтируется на стену. Подводить кабель можно как через боковое отверстие, так и скрыто через заднюю стенку датчика. Внутри датчика есть светодиод, который показывает статус связи и работу датчика.
  • ОВЕН ПВТ-110 (обновлён с ОВЕН ПВТ-100): уличный датчик температуры и влажности. Его корпус, расположение мембраны сенсора (теперь она не засирается грязью) и плата электроники полностью переработаны заново: на RS-485 есть гальваническая развязка (это довольно редко для датчиков такого типа), а параметры связи RS-485 настраиваются переключателями (можно залезть на стремянку и на лету всё настроить, а не тыркаться под крышей здания с ноутбуком). Внутри датчика есть двухцветный светодиод, который показывает работу или ошибки датчика/сенсора.
    Можно использовать в промке (склады, овощехранилища, цеха, уличные постройки): выдержит ливень и грозу (уже проверено, ахаха). Выпускается в двух версиях: с RS-485 и с аналоговыми выходами 0..10V/4..20 мА (напоминаю пост про них). Монтаж и подключение датчика тоже удобны: внутри у него много свободного пространства, и сами клеммы для подключения кабеля имеют большие и удобные контакты.
  • SENTERA ODTHM: Латвийский уличный датчик (так же как и ПВТ-110 может ставиться на улицу под непогоду и ливни со снегами), который меряет температуру, влажность и освещённость. Датчик имеет небольшой корпус, который удобен в монтаже и герметичен. Измерение освещённости на улице — это очень большой плюс, так как одним датчиком можно получить сразу три параметра, а уровень освещённости применять в работе проектов на ПЛК для определения дня или ночи и изменения логики работы освещения или других систем, которыми ПЛК управляет.
    Из минусов — навороченная таблица регистров (регистры идут не по порядку), подключение RS-485 и питания через разъём RJ-45 и полное отсутствие каких-нибудь светодиодов для индикации работы датчика.
  • WirenBoard WB-MSW v3: Разрекламированная всеми, кем попало, навороченная версия датчика, который меряет: температуру, влажность, концентрацию углекислого газа CO2, уровень вредных частиц VOC (на вино хорошо реагирует, аж зашкаливает, ахахаха), уровень шума, уровень движения (относительная величина в виде «много движения», «мало движения»), уровень освещённости и может управлять встроенной пищалкой, двумя встроенными светодиодами (красным и зелёным) и до кучи записывать и воспроизводить команды от инфракрасных пультов.
    Всё это выглядит круто, но на практике оказывается не таким гладко работающим. Собственно, этот датчик и тормозил появление поста, так как я теплой и светлой нелюбовью обожаю WirenBoard и их решения вида «Шо смогла, то и сделала».
    До 2022 года датчик не имел никаких поверок и документов, где сказаны погрешности измерений, а Modbus-регистры в карте шли НЕ ПО ПОРЯДКУ, а с пропусками (например 0, 1, …, 3, 4, 5, 6…8, 9, 10, 11). Из-за этого прочитать их одним групповым запросом не получается (датчик возвращает ILLEGAL_DATA_ADDRESS, что означает попытку чтения несуществующего адреса регистра), и при большом количестве датчиков (мы в проекте Mail.Ru-1 взяли 8 штук) вся сеть RS-485 тормозит так, что задержка при определении движения от датчика равняется 5,5 секунд!!
    В 2022 году WirenBoard ОБЕЩАЕТ поправить карту регистров так, чтобы можно было читать регистры с пропусками, а так же сделать функцию ремаппинга карты так, чтобы мы могли сами составить последовательность нужных нам регистров в нужном формате. Так же датчик WB-MSW v3 проходит сертификацию и будет внесён в РосРеестр средств измерений.
    Подключение этого датчика тоже оставляет желать лучшего. Если вы не используете обычную витую пару или верёвкообразные кабели типа КСПВ, а как грамотный проектировщик закладываете правильные, специально предзназначенные, кабели для RS-485 (напоминаю пост про них), то при разделке и подключении этих кабелей к этому датчику вы будете выть белугой и плакать кровавыми слезами, так как места для разделки и подключения кабелей шлейфом в датчике НЕТ. Если не ставить за ним обычный подрозетник. Всё это я покажу на фотках в посте.
    Wiren постепенно оттаивают после отмораживания и постепенно переписывают прошивку. Удалось добиться того, что они переделали карту регистров для работы с ИК-командами, так как до переделки было 80 регистров на подачу команды «Записать команду номер такую-то», 80 регистров на подачу команды «Воспроизвести команду номер такую-то» и 80 регистров на подачу команды «Удалить команду номер такую-то» О_о. Сейчас они сделали (специально для тех, кто пишет на CodeSys, где опрос регистров идёт циклично) всего два регистра: «Номер банка ИК-команды» и «Команда» (что сделать: ничего, записать, воспроизвести, удалить). Теперь я ругаюсь на тему того, чтобы можно было читать несуществующие регистры (исправление будет)…

Все датчики, о которых я буду рассказывать, имеют интерфейс RS-485 с протоколом Modbus и малую потребляемую мощность (1-4 Вт). Что это значит? А то, что для опроса всех таких датчиков можно проложить одну магистраль Modbus по всей квартире или даже дому и подключить все датчики на неё! Конечно же не всё так просто: следует учитывать правила разводки RS-485 (про них я когда-нибудь сделаю большой пост; разводка должна идти строго шлейфом и чем больше длина линии, тем ниже должна быть скорость обмена) и падение напряжения питания на длине кабеля магистрали.

Обычно с падением напряжения проблем нет, так как большинство датчиков имеют широкий диапазон рабочих напряжений (например 11-30 вольт для ПВТ-10). Но, если ваша линия связи длинная, то вы можете заложить кабель для RS-485 повышенного сечения. Вам нужен кабель на две пары: одна пара будет использоваться для питания, а другая — для RS-485. Вот какие кабели я использую для разводки по квартирам или коттеджам (жирным выделил сечение в квадратных миллиметрах; напоминаю ещё раз пост про такие кабели):

  • Сегмент КОПСЭнг(А)-FRHF 2×2х0.67 (0,35) Кабель интерфейса RS-485 (120 Ом) 2 витые пары, огнестойкий
  • Сегмент КОПСЭнг(А)-FRHF 2×2х0.8 (0,5) Кабель интерфейса RS-485 (120 Ом) 2 витые пары, огнестойкий
  • Сегмент КОПСЭнг(А)-FRHF 2×2х0.98 (0,75) Кабель интерфейса RS-485 (120 Ом) 2 витые пары, огнестойкий
  • Сегмент КОПСЭнг(А)-FRHF 2×2х1.38 (1,49) Кабель интерфейса RS-485 (120 Ом) 2 витые пары, огнестойкий

В моих проектах чаще всего хватает кабеля 2×2х0.67 (0,35 кв. мм), а на длинных линиях я закладываю кабель 2×2х0.8 (0,5 кв.мм).

1. Датчики температуры и влажности ОВЕН ПВТ-10 (для помещений).

Датчик ОВЕН ПВТ-10 (температура и влажность, для помещений)

Датчик ОВЕН ПВТ-10 (температура и влажность, для помещений)

Начинаем с простых датчиков: ОВЕН ПВТ-10 (скоро они обновятся до ПВТ-11). Это датчик, предназначенный для использования внутри помещений без агрессивных воздействий (квартиры, жилые помещения, офисные помещения). Ставить его на улицу нельзя, так как его корпус не защищён от воздействия конденсата и других уличных воздействий.

Тут надо бы сказать, что основные враги всех датчиков климата — это загрязнение сенсора и повреждение электроники. Сенсор может загрязниться, если на него осядут грязь или разные вещества из внешней среды (жир, деревянные опилки, пыль и так далее), а электроника может повредиться из-за образования конденсата, попадания воды или проводящей пыли (например, графитовой или металлической).

Эти критерии и отличают датчики по способу их применения и монтажа. В теории ПВТ-10 можно было бы повесить и на улице под крышей, но его корпус не даёт защиты от мошкары, пыли, влажности, осадков. В таких условиях датчик прослужит недолго. Тут и надо использовать датчики ПВТ-110 или аналогичные им, которые имеют специально разработанный корпус для защиты от внешних воздействий. Про них мы поговорим в следующем разделе.

На моих фотографиях будет показана самая первая модель датчика ОВЕН ПВТ-10, которая не имела индикаторного светодиода (он показывает наличие питания и статус опроса датчика по Modbus). Сейчас во всех ПВТ-10 есть индикаторный светодиод, а в будущем я подал ОВЕНу идею сделать его отключаемым, чтобы он не мешал и не мозолил глаза ночью в жилой квартире.

На фотке-заставке я сфотографировал ПВТ-10 в офисе ОВЕНа: они там ими меряют состояние климата в помещениях-переговорках, а все данные собирают и выводят на свой же собственный регистратор РГ-10 (ссылка на сайт ОВЕНа):

Регистратор ОВЕН РГ-10 для сбора информации с датчиков ПВТ/ПКГ по офису

Регистратор ОВЕН РГ-10 для сбора информации с датчиков ПВТ/ПКГ по офису

Там, где уровень CO2 равен 1299 ppm, мы как раз и трепались про все датчики (посты будут выходить постепенно)! =)

Сам датчик ПВТ-10 простой и неприхотливый. Он измеряет температуру, влажность, рассчитывает точку росы (температуру, при которой при текущей влажности будет конденсироваться и выпадать в виде капель влага из воздуха) и имеет два вида выходов: 4..20 мА (отдельно для температуры и влажности) и RS-485 с протоколом Modbus.

Выходы могут работать независимо друг от друга и одновременно: можно подавать ток 4..20 мА на какой-нибудь регулятор ОВЕНа (ТРМххх), чтобы он сразу же управлял техпроцессом автономно без ПЛК, а по RS-485 собирать данные в систему верхнего уровня (собирая статистику и отображая и на компьютере). Минусом такого решения является путаница, большое количество контактов для подключения и отсутствие развязки RS-485 (а кое-где это может быть важно).

В будущем датчик ПВТ-10 будет переделан и обновлён до датчика ПВТ-11, в котором будут выпускаться отдельные версии с аналоговыми выходами (универсальными: 0..10V или 4..20 ма) и отдельно с RS-485. Настройка параметров связи датчика будет выполняться при помощи встроенных переключателей. Подробнее про это я расскажу в разделе датчика ПВТ-110.

Датчик поставляется в коробочке и в открытом виде выглядит вот так:

Датчик ОВЕН ПВТ-10 (внутреннее устройство)

Датчик ОВЕН ПВТ-10 (внутреннее устройство)

Крепить датчик можно за заднюю стенку (на ней, кстати, указана схема подключения датчика по всем типам выходов), и через неё же (если просверлить в ней отверстие) можно скрыто завести провода. Если же надо подвести кабели к датчику открыто (через короб, кабель-канал), то эти кабели заводятся в датчик через боковое отверстие, закрытое резиновой заглушкой.

В комплекте с датчиком идёт паспорт, в укотором есть настоящие клейма ПОВЕРКИ каждого конкретного экземпляра датчика! Это ОЧЕНЬ круто, и я не видел таких бумаг ни у какого другого производителя!

Датчик ОВЕН ПВТ-10 (паспорт с клеймом поверки)

Датчик ОВЕН ПВТ-10 (паспорт с клеймом поверки)

Короче, если вам нужен датчик для каких-то точных измерений, которые ещё и будут подтверждены документально, то ПВТ-10 — это ваш выбор.

Корпус датчика сделан из пластика, и этот пластик при желании можно перекрасить в другой цвет из баллончика (мы так делали с Шелепихой). Передняя и задняя часть корпуса соединяются на пластиковых штырях. Чтобы открыть корпус, надо поддеть его за специальный выступ:

Датчик ОВЕН ПВТ-10 (открывание корпуса: поддеваем его отвёрткой)

Датчик ОВЕН ПВТ-10 (открывание корпуса: поддеваем его отвёрткой)

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

Подключения линий питания и RS-485 к датчику ПВТ-10

Подключения линий питания и RS-485 к датчику ПВТ-10

Сам сенсор датчика представляет собой чёрный прямоугольник, расположенный в нижней части датчика на верхней фотографии. Сенсор смонтирован на отдельной съёмной плате, что способствует его быстрой замене (а ещё его можно снять для очистки).

Требования к монтажу датчика я бы сформировал такие. Во-первых, монтировать датчика надо так, чтобы НЕ перекрывать сенсор: вокруг решёточек датчика должен свободно циркулировать воздух (иначе датчик будет показывать фиг что). Во-вторых, надо избегать попадания на сенсор и плату датчика грязи, мусора, воды и масел (про это я говорил выше). В-третьих, располагать датчик в помещении следует таким образом, чтобы на него не влияли сквозняки: иначе открытое зимой в морозы окно (и холодный сквозняк) резко изменит показания датчика, повлияв на систему регулирования. Но при этом помним и первый пункт о том, что воздух вокруг датчика дожен циркулировать свободно: ведь если вы поставите датчик в непродуваемый угол комнаты, то он будет показывать данные о воздухе, который в этом углу застоялся.

На мой взгляд лучшее место для датчика — середина комнаты и средняя высота (не у пола и не у потолка). Это создаст проблемы с дизайном (прямоугольник датчика на ровной стене будет бросаться в глаза и привлекать взгляд к себе). Если в комнате на стенах есть бра или какие-то другие объекты — то расположение датчика можно ими и обыграть. В общем, если вы хотите заложить такие датчики себе в проект, учтите их расположение в вашем дизайне.

Конфигурируется этот датчик по RS-485 через ОВЕНский конфигуратор (для аналоговых выходов конфигурировать ничего не надо). Подключаем датчик к преобразователю RS-485 <> USB и выставляем заводские параметы связи (9600, 8, N, 1; адрес = 16):

Настройка датчика ОВЕН ПВТ-10 через конфигуратор: подключение к датчику

Настройка датчика ОВЕН ПВТ-10 через конфигуратор: подключение к датчику

А дальше при помощи конфигуратора настраиваем параметры связи (адрес, скорость, чётность) и, установив галочки контроля текущих значений, наблюдаем то, что измеряет датчик. Влажность равна 22% — хорошо (для меня)!

Настройка датчика ОВЕН ПВТ-10 через конфигуратор: заданы параметры связи, идёт наблюдение текущих значений

Настройка датчика ОВЕН ПВТ-10 через конфигуратор: заданы параметры связи, идёт наблюдение текущих значений

Для теста монтажа датчика я сделал имитацию стены, из которой выходит два кабеля RS-485 (напоминаю пост про такие кабели): они имитируют шлейф «Питание + Данные», по которому можно опрашивать несколько датчиков. Данная имитация стены пригодится нам, чтобы сравнить удобство монтажа ПВТ-10 и WirenBoard WB-MSW v3 (в конце поста).

Я взял фанерку и прикрепил к ней сзади кабель Сегмент КОПСЭнг(А)-FRHF 2×2х0.67 (0,35 кв. мм):

Подготовка к монтажу датчика ПВТ-10 на стену (для примера на макете)

Подготовка к монтажу датчика ПВТ-10 на стену (для примера на макете)

Первым делом мы разделываем оба кабеля, оставляя запас по длине жил, чтобы можно было подключить датчик, а потом надеть его на заднюю стенку корпуса. НЕ ЗАБЫВАЕМ СОЕДИНИТЬ ПРОВОД ЭКРАНА (спаять его)! Провод экрана — это тонкая металлическая проволочка (лужёная медь), которая должна быть подключена со стороны щита к клемме PE, а по всей линии не иметь разрывов! На фотографии она у меня скручена.

Монтаж ПВТ-10 на стену (макет): зачищаем кабели RS-485

Монтаж ПВТ-10 на стену (макет): зачищаем кабели RS-485

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

Далее я заготовил шлейфы нашего кабеля (в реальности их надо бы пропаять):

Монтаж ПВТ-10 на стену (макет): подготавливаем жилы и их шлейф

Монтаж ПВТ-10 на стену (макет): подготавливаем жилы и их шлейф

И сделал все тестовые подключения к клеммам датчика:

Монтаж ПВТ-10 на стену (макет): подключаем датчик

Монтаж ПВТ-10 на стену (макет): подключаем датчик

Вот то, что я хотел показать: внутри датчика ПВТ-10 есть достаточно пространства для укладки всех жил кабелей. Ура!

Монтаж ПВТ-10 на стену (макет): датчик смонтирован, внутри есть много места для проводов

Монтаж ПВТ-10 на стену (макет): датчик смонтирован, внутри есть много места для проводов

Мои кабели имеют жёсткие жилы (моножилы), поэтому монтировать их чуть сложнее, чем гибкие (многопроволочные жилы).

Клеммы датчика ПВТ-10 нормально принимают оба типа жил (в том числе и наконечники НШВИ).

Удобное расположение клеммника для подключения датчика ПВТ-10 (так же есть место для разделки кабелей)

Удобное расположение клеммника для подключения датчика ПВТ-10 (так же есть место для разделки кабелей)

В общем, ПВТ-10 (и будущие ПВТ-11) — простые, отличные и удобные как по подключению, так и по внешнему виду. Если вам хочется получить ОЧЕНЬ ДЕШЁВЫЙ ДАТЧИК — вы можете обратиться к датчикам RazumDom (ссылка была в начале поста), но помните что они глючат, не имеют высокой точности и, главное, их клеммы для подключения RS-485 и питания открыты: вся разделка кабеля будет открытой, что будет очень некрасиво.

2. Датчики температуры и влажности ОВЕН ПВТ-110 и ПВТ-100 (для улицы).

Уличный датчик измерения температуры и влажности ОВЕН ПВТ-110 (замена ПВТ-100)

Уличный датчик измерения температуры и влажности ОВЕН ПВТ-110 (замена ПВТ-100)

Этот датчик — обновлённая версия старой модели датчика ПВТ-100, поэтому рассказывать я про него буду, сравнивая его с предыдущей моделью и с тем, что в датчике изменилось.

Датчики ПВТ-110 (и их предыдущая модель ПВТ-100) предназначены для использования в тех условиях, когда электронную плату датчика надо защитить от внешних воздействий, а сам сенсор датчика — от загрязнения (и дать возможность пользователю легко его почистить или заменить). Это улица и грязные промышленные среды (где в воздухе летают опилки, пыль, жиры и прочая дрянь). Корпус датчика имеет степень пылевлагозащиты IP65, сенсор сделан выносным и защищён специальной мембраной, которая пропускает к сенсору температуру и влажность, но не пропускает грязь и срань.

Если вы устанавливаете датчики температуры и влажности на улице, то позаботьтесь о том, чтобы на них НЕ попадали прямые солнечные лучи: датчик должен находиться в тени (например, можно прикрыть его защитным козырьком). Если на датчик будет попадать солнце, то он будет слишком сильно нагреваться и показывать вам адские 42 градуса при реальных +32, например.

В моём случае датчик заведомо установлен НЕВЕРНО (и ещё и на южной стороне дома), чтобы он мог переживать такой перегрев и работал в более жёстких условиях. Возможно в будущем я сделаю для его зонда защитный козырёк.

Тут надо дополнить пост рассказом о том, что в таких же корпусах ОВЕН выпускает и другие датчики, которые могут определять концентрацию углекислого газа CO2, метана, аммиака и угарного газа CO.

Датчик ОВЕН ПКГ-100 для определения концентрации углекислого газа CO2

Датчик ОВЕН ПКГ-100 для определения концентрации углекислого газа CO2

Про датчики метана мы говорили в другом посте (ОВЕН ДЗ-1-CH4), а тут я упомяну сферы применения таких датчиков:

  • Определение концентрации метана CH4 (горючего природного газа) используется в котельных: метан взрывоопасен и ядовит;
  • Определение концентрации угарного газа CO важно на закрытых автопарковках, так как этот газ также является ядовитым для человека: при его превышении до некоторого порога надо включать вентиляцию, а при превышении ещё большего порога — эвакуировать людей;
  • Про углекислый газ вы все знаете благодаря распиаренной теме его определения (в том числе и с приточной вентиляцией в виде бризеров Tion, про которые я тоже писал). Сенсоры CO2 продаются на AliExpress сплошь и рядом. Да, и это работает: если концентрация CO2 поднимается выше 800 ppm, то голова перестаёт хорошо соображать, начинает хотеться прилечь полежать или поспать.
  • А вот про аммиак NH3 не все знают (и для меня это тоже было открытием): опасные концентрации аммиака могут возникать на… свинофермах! Потому что эти чёртовы свиньи им пердят!!! Ну и при гниении навоза аммиак тоже выделяется ещё как. Вот и за его концентрацией тоже, оказывается, надо следить.

Итак, корпус и концепт датчиков, включая наш ПВТ-110 (ПВТ-100) у ОВЕНа типовой, и мы возвращаемся к нашим датчикам температуры и влажности, про которые я сегодня рассказываю.

На старые датчики ПВТ-100 была куча жалоб по следующим причинам:

  • Конструкция зонда (съёмной части, где установлен сенсор и мембрана) была такова, что вся грязь и срань оставалась на мембране, залепляя её и мешая датчику корректно измерять параметры. Саму мембрану нельзя было заменить, приходилось менять весь зонд целиком (а он стоит денег);
  • Иногда датчик зависал из-за помех по RS-485 и даже не выходил из зависания при перезагрузке процессора по WhatchDog-таймеру в процессоре. В новых прошивках 2022 года это уже поправлено, но помехозащищённость датчика осталась низковатой;
  • Разъём для подключения зонда некоторые шаловливые ручки прокручивали вокруг оси так, что он перекручивал и обрывал провода, которые в нему шли внутри датчика.

Новые датчики ПВТ-110 имеют следующие возможности и фишки (дальше я сравню их со старым ПВТ-100):

  • Меряют температуру и влажность. Точку росы почему-то не рассчитывают, хотя хотелось бы иметь и это значение;
  • Регистры идут не по порядку, с пропусками. Хотелось бы, чтобы это поправили (почему — можно будет прочитать в разделе про WirenBoard);
  • Корпус имеет большее число точек крепления: можно закрепить его винтами внутри крышки, можно закрепить на две или четыре точки снаружи;
  • Датчики ПВТ-110 имеют отдельные варианты с RS-485 (протокол Modbus) и отдельно с аналоговыми выходами (0..10V/4..20 мА, выбирается переключателями внутри датчика отдельно для каждой величины);
  • В версиях датчиков с RS-485 имеется гальваническая развязка RS-485 по питанию, что улучшило стабильность датчиков при работе на улице;
  • Параметры связи и другие настройки датчика теперь задаются переключателями БЕЗ подключения датчика к компьютеру: это сделано для того, чтобы можно было настраивать датчик на объекте на лету, не залезая на какую-нибудь условную крышу с ноутом в ливень;
  • Сенсор и его мембрана полностью переработаны: теперь мембрана расположена так, что загрязнения будут стекать с неё, накапливаясь на ней и не загрязняя её, а саму мембрану можно снять и промыть, если это будет необходимо. Разъём зонда (части, где установлен сенсор и мембрана) держится более крепко, и его фиг скрутишь.
  • Внутри датчика есть двухцветный (красно-зелёный) светодиод, который показывает ошибки датчика, сенсора и статус (и ошибки тоже) связи по RS-485.

Вот они: старый (слева) и новый (справа) датчики:

Сравнение датчиков старой модели (ПВТ-100) и новой (ПВТ-110)

Сравнение датчиков старой модели (ПВТ-100) и новой (ПВТ-110)

А вот так они выглядят с открытыми крышками корпусов:

Сравнение внутренностей датчиков старой модели (ПВТ-100) и новой (ПВТ-110)

Сравнение внутренностей датчиков старой модели (ПВТ-100) и новой (ПВТ-110)

Зонд старого датчика имел цельную неразборную конструкцию, что усложняло его ремонт и обслуживание:

Зонд датчика ОВЕН ПВТ-100 с мембраной, расположенной снизу зонда

Зонд датчика ОВЕН ПВТ-100 с мембраной, расположенной снизу зонда

Основной ошибкой проектирования старого датчика было расположение мембраны (её задача — защищать сенсор датчика от попадания на него грязи и пыли, которые будут искажать показания).

Мембрана (белая штучка) была расположена снизу сенсора, из-за чего всё, что могло хоть как-то стекать (жиры на кухнях, пищевых производствах, пыль, загрязнения), стекало на мембрану, забивая её.

Мембрана датчика ОВЕН ПВТ-100 (расположена снизу, все загрязнения попадают на неё)

Мембрана датчика ОВЕН ПВТ-100 (расположена снизу, все загрязнения попадают на неё)

А так как зонд датчика был неразборным, то попытки промыть или протереть мембрану (это допустимо, так делать можно) приводили к тому, что вся грязь, которая на ней скопилась, только забивалась в поры мембраны ещё глубже, ещё сильнее ухудшая качество измерений датчика.

Поэтому при разработке нового ПВТ-110 зонду уделили очень большое внимание. Теперь мембрана расположена вокруг нижней части зонда в виде рёбер: всё, что будет по ней стекать, будет стекать в нижнюю часть зонда, которая теперь не используется.

Мембрана нового датчика ОВЕН ПВТ-110 (расположена по бокам, загрязнения будут стекать с неё)

Мембрана нового датчика ОВЕН ПВТ-110 (расположена по бокам, загрязнения будут стекать с неё)

Дополнительно нижнюю часть зонда можно открутить, чтобы промыть мембрану. Мембрана делается из фторопласта (тефон, материал, который имеет повышенную химическую стойкость к большинству химикатов), она достаточно прочная. Можно промыть её в спирте или каком-нибудь жирорастворителе (чуть ли не в средстве для мытья посуды) — и она будет работать как новая!

Также практика использования ПВТ-100 (старой модели) показала то, что у большинства людей с нашим придурочным менталитетом нет желания читать инструкцию, а есть шаловливые ручки.

Множество людей пыталось откручивать зонд при монтаже датчика (его удобно снять, чтобы не сломать и не засрать строительной пылью, если датчик будет присверливаться к стене), вращая его не за гайку разъёма, а за сам зонд вот так:

НЕправильная попытка открутить зонд датчика ПВТ-100 (так будет откручиваться разъём зонда)

НЕправильная попытка открутить зонд датчика ПВТ-100 (так будет откручиваться разъём зонда)

Конечно же, любой разъём имеет ключ — специальные выступы, которые позволяют вставить ответную часть разъёма в строго определённом положении (чтобы контакты разъёма совпали друг с другом). Этот же ключ (да и сами вставленные контакты) не дают вращаться разъёму вокруг оси.

В результате люди с шаловливыми ручками получали это:

Прокрученный разъём зонда после попыток неправильно открутить зонд

Прокрученный разъём зонда после попыток неправильно открутить зонд

Да-да! Разъём прокручивался, наматывал на себя шлейф проводов внутри датчика и обрывал его.

Правильно снимать зонд (да и вообще отключать все виды разъёмов) надо, вращая их накидную гайку, которая этот разъём как раз и фиксирует!

Правильное откручивание зонда датчика: за гайку разъёма, а не за зонд

Правильное откручивание зонда датчика: за гайку разъёма, а не за зонд

В новом датчике ПВТ-110 разъём дополнительно заливают компаундом, чтобы его УЖ ТОЧНО никто не провернул (хотя сдаётся мне, что такие придурки всё же найдутся).

Крепление разъёма зонда компаундом в новой версии датчика ОВЕН ПВТ-110

Крепление разъёма зонда компаундом в новой версии датчика ОВЕН ПВТ-110

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

Датчик поставляется в большой коробке с установленным зондом и саморезами для крепления его на бетонную поверхность (стена). В комплекте с датчиком идут нужные документы, включая паспорт с клеймами поверки, как и у ПВТ-10.

Датчик температуры и влажности уличного исполнения ОВЕН ПВТ-110 (замена ПВТ-100)

Датчик температуры и влажности уличного исполнения ОВЕН ПВТ-110 (замена ПВТ-100)

На боковой стенке датчика описаны все его характеристики (диапазон напряжений питания 11..30 вольт, потребляемая мощность 2 Вт), указан заводской номер и приведён QR-код, ведущий на сайт ОВЕН. «RS» обозначает модель датчика с RS-485.

Информация о характеристиках на корпусе датчика ПВТ-110

Информация о характеристиках на корпусе датчика ПВТ-110

У нового корпуса датчика появились «ушки», и теперь есть три варианта крепления датчика: за четыре отверстия внутри корпуса (они не нарушают влагозащиту внутри корпуса), за два отверстия посередине «ушек» и за четыре отверстия по краям «ушек».

Задняя часть корпуса ПВТ-110 с разными отверстиями для крепления датчика

Задняя часть корпуса ПВТ-110 с разными отверстиями для крепления датчика

Крышка датчика имеет резиновую прокладку (она и даёт степень влагозащиты IP65) и невыпадающие винты под шлиц PH2 (датчик можно монтировать в пределах шуруповёрта). На внутренней стороне крышки указана схема подключения датчика.

Крышка датчика ПВТ-110 имеет невыпадающие винты и резиновую прокладку для влагозащиты. На крышке есть схема подключения датчика

Крышка датчика ПВТ-110 имеет невыпадающие винты и резиновую прокладку для влагозащиты. На крышке есть схема подключения датчика

Зонд датчика крепится к нему на разъёме (4 контакта: питание и интерфейс связи с зондом), который имеет ключ: разъём можно вставить только в определённом положении и зафиксировать гайкой.

Зонд датчика ПВТ-110 и разъём для его подключения

Зонд датчика ПВТ-110 и разъём для его подключения

Степень пылевлагозащиты разъёма и самого зонда — такая же, как и у датчика: IP65.

Мембрана зонда расположена по кругу в нижней его части, а сам сенсор стоит на печатной плате.

Съёмная мембрана зонда ПВТ-110 (для обслуживания или замены) и сам датчик крупным планом

Съёмная мембрана зонда ПВТ-110 (для обслуживания или замены) и сам датчик крупным планом

Конструкция зонда поволяет (как я говорил выше) снимать мембрану и мыть её, или же заменить весь зонд целиком. Несмотря на то, что мембрана тонкая, она не пропускает воду от дождей внутрь датчика — проверено!

Ниже показаны два варианта датчика: слева — с аналоговыми выходами 0..10V или 4..20 мА (тип выхода выбирается переключателями; также ещё и ещё раз напоминаю пост про аналоговые сигналы), а справа — с RS-485.

Датчики ОВЕН ПВТ-110 с разными типами выходов: аналоговые 0..10V/4..20 мА (слева) и RS-485 (справа)

Датчики ОВЕН ПВТ-110 с разными типами выходов: аналоговые 0..10V/4..20 мА (слева) и RS-485 (справа)

Решение с переключателями для настройки датчика на лету (настройки применяются сразу же, без передёргивания питания датчика, а светодиоды индицируют ошибки или нормальную работу датчика) — бомбическое!

Не забываем, что этот датчик рассчитан на промышленный сегмент, который может означать следующее: датчик может стоять под крышей здания на большой высоте, может располагаться в середине шестиметровой стены, может располагаться среди свинофермы или овощехранилища. Что удобнее? Пощёлкать переключатели по месту отвёрткой, увидев мигание зелёного светодиода (которого говорит о том, что опрос датчика идёт успешно) или же тащить на лестницу ноутбук только из-за того, что в настройки датчика, сделанные на столе в мастерской, вкралась ошибка? ;)

Зацените настройки датчика с аналоговыми выходами:

Плата с переключателями настроек датчика ПВТ-110 с аналоговыми типами выходов (0..10V/4..20 мА)

Плата с переключателями настроек датчика ПВТ-110 с аналоговыми типами выходов (0..10V/4..20 мА)

Для каждой из величин предусмотрены: светодиод статуса измерения, выбор типа выхода (0..10V или 4..20 мА) и выбор типа сигнала ошибки (то, какое значение выставляется при сбое датчика). ОФИГИТЕЛЬНО!!

А вот как выглядит плата моего датчика с интерфейсом RS-485:

Плата с переключателями настроек датчика ПВТ-110 с RS-485 (все параметры настраиваются переключателями)

Плата с переключателями настроек датчика ПВТ-110 с RS-485 (все параметры настраиваются переключателями)

Здесь светодиод статус уже двухцветный, и он может отображать ошибку (или отсутствие) зонда, неверно выставленные параметры связи RS-485 или успешный опрос датчика.

А в углу датчика притаился DC-DC преобразователь для развязки интерфейса RS-485, про которую мне рассказали ребята в ОВЕНе:

Преобразователь DC/DC для развязки RS-485 (основные компоненты находятся на обратной стороне платы)

Преобразователь DC/DC для развязки RS-485 (основные компоненты находятся на обратной стороне платы)

При помощи переключателей можно настроить все известные скорости связи (от 2 400 до 155 200), чётность, количество стопбитов и выставить адрес от 1 до 99. Да, при помощи переключателей нельзя выставить адреса от 1 до 255, но это не такая большая плата за удобство настройки датчика: вот тут даже в инструкцию смотреть не надо, нужна только отвёртка.

Переключатели для настройки адреса и режимов работы RS-485 датчика ПВТ-110

Переключатели для настройки адреса и режимов работы RS-485 датчика ПВТ-110

Для ввода кабеля в датчик предусмотрен стандартный сальник PG13,5. С завода он был закрыт резиночкой, которая у меня легко оторвалась: ну, она и не нужна, так как мы собираемся подключать наш датчик.

Кабельный сальник PG13,5 для ввода кабеля в корпус датчика

Кабельный сальник PG13,5 для ввода кабеля в корпус датчика

Давайте сделаем тестовое подключение датчика. Светодиод мигает красным, так как я не подключал зонд к датчику.

Пробное подключение датчика ПВТ-110 без зонда (работает красный светодиод аварии)

Пробное подключение датчика ПВТ-110 без зонда (работает красный светодиод аварии)

А с подключенным зондом и адресом, настроенным на «20», датчик заработал, и я смог опросить его через компьютер и Modbus Poll. Ура!

Рабочее подключение датчика ПВТ-110 с зондом (зелёный светодиод показывает обмен данными)

Рабочее подключение датчика ПВТ-110 с зондом (зелёный светодиод показывает обмен данными)

Ну а дальше я решил подключить этот датчик по временной схеме и повесить его на улицу.

Временная схема означает следующее: вместо того, чтобы просверлить нормальное отверстие на улицу, протащить туда правильный кабель для RS-485 и завести его в датчик, я взял огрызок телефонной лапши (у меня в домашнем тестовом ПЛК много чего так подключено) и завёл его в сальник.

Ввод кабеля ОЧЕНЬ маленького диаметра в сальник (тестовый монтаж датчика)

Ввод кабеля ОЧЕНЬ маленького диаметра в сальник (тестовый монтаж датчика)

Это был ОЧЕНЬ рисковый шаг, так как сальник в датчике рассчитан на определённый диаметр кабелей, которые в него подключаются, а телефонная лапша имеет очень малый диаметр: сальник может не зажать её, и вода начнёт попадать в датчик.

Со стороны улицы я разметил, засверлил и заготовил точки крепления для датчика (перфоратор уехал в другое место, пока там идёт мини-ремонт):

Подготовленные винты крепления датчика к стене дома

Подготовленные винты крепления датчика к стене дома

Дальше я сразу же подключил кабель к клеммам датчика (чтобы не делать это, выгибаясь из окна на улицу):

Датчик ПВТ-110 подключен и приготовлен к креплению на стену дома

Датчик ПВТ-110 подключен и приготовлен к креплению на стену дома

А дальше при помощи шуруповёрта я прикрутил датчик на его место на стене дома:

Крепление ПВТ-110 на стену дома (непосредственно на улицу)

Крепление ПВТ-110 на стену дома (непосредственно на улицу)

Установка датчика превратилась в небольшое приключение, так как вдали появилась чёрная туча и раздались раскаты грома, а на улице уже поднялся нехороший ветер.

И тут… тут я вдруг смотрю и понимаю что светодиод на датчике мигает красным! И как-то хитро мигает. Лезу читать инструкцию, и расшифровываю это мигание как ошибку связи по Modbus. Думаю, думаю: какая это ошибка? Что ему не нравится, если на том же шлейфе RS-485 сидит пара модулей ввода-вывода и датчики от RazumDom, часть из которых я даже снял, чтобы перемонтировать их на другой объект…

Так. Датчики-то я снял, но какие у них были адреса? Хм… вроде адрес 20 у меня как раз освободился, а я его на ПВТ-110 и настраивал… Лезу в программу на ПЛК и понимаю, что как раз-то освободились адреса 10 и 12, а 20ый — занят, и оба датчика (с текущим адресом и новый ПВТ-110) отвечают на запрос одновременно!!

Вот тут-то возможность быстренько под раскаты грома вдали перенастроить адрес датчика как раз и пригодилась! Быстренько меняю адрес с 20 на 30 при помощи отвёртки!

Использование переключателей для настройки адреса Modbus на лету

Использование переключателей для настройки адреса Modbus на лету

Светодиод замигал зелёным, опрос пошёл успешно, и крышку датчика можно закрывать!

Датчик ПВТ-110 подключен в домашнюю сеть RS-485, адрес настроен, идёт опрос датчика

Датчик ПВТ-110 подключен в домашнюю сеть RS-485, адрес настроен, идёт опрос датчика

Наш датчик работает и ждёт грозы и ливня:

Монтаж датчика ПВТ-110 на улице на стене дома (датчик готов к работе)

Монтаж датчика ПВТ-110 на улице на стене дома (датчик готов к работе)

И вот что с ним стало после июльского летнего ливня, после которого снова выглянуло солнышко:

Датчик ОВЕН ПВТ-110 на улице после летнего ливня с грозой

Датчик ОВЕН ПВТ-110 на улице после летнего ливня с грозой

Верхний сальник оказался полностью залит водой, которая набралась как на верхней резинке сальника (которая зажимает кабель), так и на нижней резинке (которая защищает отверстие для крепление сальника в корпусе):

Капли воды на верхней части датчика ПВТ-110 (в сальник не попадают)

Капли воды на верхней части датчика ПВТ-110 (в сальник не попадают)

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

Вода после ливня на зонде датчика: она стекает вниз и не попадает на мембрану датчика, как это было в старом ПВТ-100

Вода после ливня на зонде датчика: она стекает вниз и не попадает на мембрану датчика, как это было в старом ПВТ-100

Датчик мне ОЧЕНЬ понравился. Вот что можно про него сказать:

  • Самое неприятное для меня — это то, что нет расчёта точки росы и что регистры датчика идут не подряд (хочу групповые запросы);
  • Датчик пережил три крупных ливня-шторма (с порывами ветра и грозой). Внутри никаких потёков воды не было. Для тестирования я открывал датчик после последнего ливня: всё было сухо, и сальник держит даже такую тонкую телефонную лапшу;
  • Настройка при помощи переключателей — ОЧЕНЬ удобная и крутая, и я невольно проверил её на практике;
  • Конструкция зонда и мембраны тоже удобна и не мешает работе датчика.

Я доволен! Мне будет интересно почитать отзывы тех, кто будет эксплуатировать этот датчик на промышленных объектах, чтобы посмотреть на их реакцию.

3. Датчик температуры, влажности и освещённости SENTERA ODTHM (для улицы).

Уличный датчик температуры, влажности и освещённости SENTERA ODTHM

Уличный датчик температуры, влажности и освещённости SENTERA ODTHM

Этот датчик интересен и не однозначен. Мы купили его с Mail.Ru-1 для его проекта, чтобы определять погоду на улице и заодно (так вышло) ещё и получать данные об освещённости. Эти датчики производит латвийская компания SENTERA (https://senteracontrols.ru/product/odthm/) и я сейчас не знаю, доступны ли они после санкций или нет (вроде как возят через Беларусь).

Вот какие особенности имеет датчик ODTHM:

  • Уличное исполнение, как у ПВТ-110 (ПВТ-100): степень пылевлагозащиты IP65, сенсор защищён так, чтобы на него не попадала вода. Можно ставить на улице;
  • Измеряет температуру, влажность, уровень освещённости. Рассчитывает температуру точки росы. По параметрам — идеальный уличный датчик;
  • На выходе — интерфейс RS-485 с протоколом Modbus RTU (регистры идут не по порядку). Правда подкачало подключение: через разъём RJ-45, очень неудобное;
  • Нет никакой индикации работы датчика (светодиода). Подключать и налаживать очень неудобно!

Вот… вот в плане измерения освещённости и расчёта точки росы этот датчик рвёт ПВТ-100 как грелку! Чёрт, вот если бы в ПВТ-110 такое добавили — ему бы цены не было!

Поставляется датчик в неприметной коробочке с названием и кривой наклеечкой с серийным номером:

Коробка с датчиком SENTERA ODTHM

Коробка с датчиком SENTERA ODTHM

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

Упаковка датчика SENTERA ODTHM (видны поролоновые штучки, защищающие от повреждения датчика)

Упаковка датчика SENTERA ODTHM (видны поролоновые штучки, защищающие от повреждения датчика)

На задней стенке корпуса датчика имеется ещё одна наклейка с моделью датчика и всего два отверстия для крепления (они так же, как и у ПВТ-110, не влияют на пылевлагозащиту датчика):

Задняя часть корпуса датчика ODTHM (видна наклейка с параметрами датчика и точки крепления на стену)

Задняя часть корпуса датчика ODTHM (видна наклейка с параметрами датчика и точки крепления на стену)

В плане крепления датчик ПВТ-110 рвёт всех: его-то можно на четыре отверстия прикрепить!

Зонд датчика несъёмный и расположен тоже в нижней его части. Мембрана зонда напоминает распылитель воздуха для аквариумов: она, видимо, имеет мелкие поры, но при этом твёрдая как камень. Ввод кабеля также находится снизу датчика, что является явным плюсом: вода с кабеля будет стекать вниз и не попадать на сальник PG.

Нижняя часть датчика ODTHM с сальником для ввода кабеля и защитной пористой частью для зонда

Нижняя часть датчика ODTHM с сальником для ввода кабеля и защитной пористой частью для зонда

На передней части датчика находится окошко для сенсора освещённости:

Сенсор датчика ODTHM для измерения освещённости

Сенсор датчика ODTHM для измерения освещённости

Крышка датчика крепится на четырёх винтах так же под шлиц PZ2, но в них отлично входит и PH2 (самый распространённый, что облегчает монтаж датчика):

Открываем корпус датчика ODTHM (выкручиваем 4 винта)

Открываем корпус датчика ODTHM (выкручиваем 4 винта)

Винты на крышке тоже невыпадающие, и это тоже плюс к удобству монтажа.

Винты на крышке датчика ODTHM невыпадающие (это отлично)

Винты на крышке датчика ODTHM невыпадающие (это отлично)

А вот технически конструкция датчика сделана хрен как. Посмотрите на его внутренний мир, а потом я выкачу свои придирки:

Внутренняя плата датчика SENTERA ODTHM (подключение к датчику по RJ-45)

Внутренняя плата датчика SENTERA ODTHM (подключение к датчику по RJ-45)

  • Не понятно, есть ли развязка по RS-485 (ОВЕН говорит что это редкость для датчиков такого типа). Вроде как слева ребром стоит плата с какими-то большими по размерам компонентами, которые могут напоминать DC-DC преобразователь, который нужен для таких развязок, а могут быть просто блоком питания датчика;
  • Защита (мембрана) зонда вкручена в корпус датчика просто так, без защитных прокладок (видна чёрная резба в центре фотки). Это даёт влагозащиту в IP65 или нет? Может быть, производитель считает то, что раз мембрана расположена снизу датчика, то вода по ней не будет затекать в верх корпуса?
  • Сама плата сенсора температуры и влажности держится на штырьках, которые впаяны в плату и являются электрическими контактами. Это выглядит хлипенько. Не потеряет ли плата контакт от времени и окисления этих штырей? То же относится к датчику освещённости: при монтаже датчика его легко сдёрнуть с штырьков и потерять или сломать;
  • У датчика нет НИКАКОЙ обратной связи: ни единого светодиода, хотя разъём для RJ-45 имеет два светодиода на борту;
  • Да! Все подключения к датчику надо делать через разъём RJ-45. Даже если вы хотите быстренько тестануть его на столе. Никакой схемы и назначения контактов на крышке или печатной плате датчика нет (это вам не ОВЕН), обратной связи через светодиод тоже нет — поэтому узнать о том, что вы подключили всё верно и ничего не спалили, можно только при правильном опросе по Modbus. Ха-ха! А про то, чтобы соединить несколько датчиков шлейфом, вообще можно забыть.

Какой чёрт выдумал такое подключение — я не знаю. Иногда у китайцев я видел, как они в некоторых шлюзах ArtNet<>DMX (я чуть-чуть работал с ними и рассказал про это в своём посте) выводили по две-три линии DMX на один разъём RJ-45… но вот чтобы выводить RS-485 и питание — это нафига?!

Ведь это не удобно: если обжать разъём на кабель, то его уже не получится снять (такие разъёмы одноразовые): а значит не получится заменить датчик (или снять его в ремонт), так как разъём надо будет срезать.

Вот какая распиновка разъёма указана в инструкции:

Назначение контактов разъёма RJ-45 для подключения датчика ODTHM (Питание, RS-485)

Назначение контактов разъёма RJ-45 для подключения датчика ODTHM (Питание, RS-485)

И она меня запутала, так как разъём показан со стороны, непривычной для тех, кто его обжимает: обычно стандартная разводка TIA-568B, которая используется в России, запоминается с вида на сторону контактов разъёма: Бело-Оранжевый, Оранжевый, Бело-Зелёный, Синий и так далее…

Я тупил, тупил (датчик спалить страшно), и нашёл картинку с обозначением нумерации контактов разъёма RJ-45, которая (о, удивительное совпадение, хаха) как раз и начинается с того места, куда мы подключаем Бело-Оранжевый провод (контакт 1):

Стандартная нумерация контактов разъёма RJ-45 (Ethernet)

Стандартная нумерация контактов разъёма RJ-45 (Ethernet)

Короче, если забить на инструкцию, то получается вот что: контакты разъёма используются попарно (можно выпендриться и обжать два кабеля шлейфом в один разъём О_о) и имеют такое назначение:

  • 1-2: Плюс питания
  • 3-4: RS-485, A
  • 5-6: RS-485, B
  • 7-8: Минус питания

Идиотизм!!

В нашем проекте датчик будет подключаться нормальным кабелем RS-485, который имеет жёсткие жилы (моножилы). Чтобы не возиться с обжимом этого кабеля в разъём RJ-45, я заранее заготовил такой вот шлейфик, обжав в разъём витуху:

Хвост из разъёма RJ-45 и витой пары Patch для подключения датчика ODTHM

Хвост из разъёма RJ-45 и витой пары Patch для подключения датчика ODTHM

Дальше я планирую соединить этот шлейфик с кабелем RS-485 через клеммы WAGO или ScotchLock (напоминаю древний пост про них).

Пока же я обжал свою «любимую» временную телефонную лапшу. Тут, кстати, как раз видны два светодиода на разъёме RJ-45, которые НИКАК не задействованы. Пока датчик не начёшь опрашивать через ПЛК или Modbus Poll, ты даже не узнаешь о том, что на него питание подано! УЖАСНО!

Пробное подключение датчика ODTHM при помощи телефонной лапши

Пробное подключение датчика ODTHM при помощи телефонной лапши

Так как никакой обратной связи нет, то приведу ещё один скриншот из инструкции на датчик, где цифрой «1» показан блок штырьков, на которую можно установить комплектную перемычку:

Назначение перемычки для сброса настроек датчика ODTHM

Назначение перемычки для сброса настроек датчика ODTHM

Если установить перемычку на контакты «1» и «2» (и как их считать, если на датчике конаткты расположены вертикально, а в инструкции горизонтально, а на плате еле-еле видна цифра «1»), то происходит сброс параметров связи на заводские.

А дальше берём Modbus Poll и меняем настройки датчика на нужные мне (адрес и скорость), заодно проверяя то, что датчик отдаёт свои параметры:

Опрос регистров датчика ODTHM по Modbus

Опрос регистров датчика ODTHM по Modbus

Если заглянуть в карту регистров этого датчика (тут уж пожалуйста сами найдите и прочитайте полную документацию на датчик), то можно увидеть что она имеет навороты: в датчик можно внести пороговые значения для температуры, влажности, точки росы и освещённости, и при помощи некоторых регистров он может отдавать не абсолютные значения, а флаги, которые можно интерпретировать как «Мало», «Нормально», «Много». Задумка интересная, но я не знаю, куда её применить: ту же логику (только с быстро настраиваемыми через интерфейс или панель оператора) порогами можно на ПЛК/ПР сделать.

То, как мы будем мучиться с подключением этого датчика, я узнаю позже: когда доделаю программу на Mail.Ru-1, и мы с Киричем будем заниматься пусконаладкой его щита. Вот тогда-то я дополню этот пост фотками монтажа датчика ODTHM!

4. Датчик температуры, влажности, освещённости, CO2, VOC с расширенным управлением WirenBoard WB-MSW v3 (для помещений).

Датчик измерения параметров климата WirenBoard WB-MSW v3

Датчик измерения параметров климата WirenBoard WB-MSW v3

После выхода этого поста ребята из WirenBoard связались со мной и дали комментарии по информации, которую я тут изложил. Она в некоторых случаях оказалась не совсем верной, так как WirenBoard учли опыт наших разговоров в 2020 году, и за эти два года сделали много изменений и заделов на будуще. Исправления и поправки будут выделены жирным.

А теперь — самый распиаренный и самый неоднозначный датчик: WirenBoard WB-MSW v3, который нафарширован кучей сенсоров и возможностей, но имеет адски кривую карту регистров и дофига заморочек, но при этом годится для использования в квартирных проектах, если вам не нужна точность измерений (как на ПВТ-10), но нужна куча данных! Часть истории о том, как ребята из WirenBoard приезжали ко мне, и мы разбирались с тем, как этот датчик опрашивается ПЛК со средой CodeSys, рассказана в посте новостей, так как я тогда не мог ждать новой прошивки и решил хоть немного, но погрузить вас в тему. Часть фоток я буду использовать оттуда, а вот ссылка на тему на форуме WirenBoard, где я ругался про их датчик.

Я пылаю горячей скептической нелюбовью к WirenBoard, но хрен вам: попкорном запасаться не надо, так как я не ругаю производителей просто так, а придираюсь за дело и по делу. Хайпа и криков «всё гавно» не будет! Будет праведная пылающая ненависть на тему «Ну почему?! Почему задумка так хороша, а над реализацией вы сразу наперёд не подумали?!».

Датчик WirenBoard WB-MSW v3 — видимо, третье поколение таких датчиков (раз в его названии фигурирует «v3»). Задумка датчика — очень крутая, так как его возможности огромны (они зависят от конфигурации датчика):

  • Измерение температуры и влажности с разными точностями (одни регистры отдают с точностью 0,1, а другие — с 0,01);
  • Измерение уровня освещённости;
  • Измерение уровня шума в dB;
  • Измерение концентрации углекислого газа CO2 и вредных частиц VOC;
  • Измерение уровня (и наличия) движения;
  • Возможность мигать встроенными красным и зелёным светодиодами, пищать пищалкой;
  • Возможность записывать команды с инфракрасных (ИК) пультов и воспроизводить их (в новой версии прошивки до 30 команд, в предыдущей — до 80 команд): это позволяет имитировать нажатие кнопок на пультах кондиционеров, бытовой техники и других устройств.

Вы можете заказать датчик в полной версии или в обрезанной (без контроля CO2/VOC, например), что будет дешевле. В теории потом нужные сенсоры можно доустановить в датчик, но установка некоторых сенсоров потребует его калибровки.

Мой заказчик купил парочку датчиков с полным набором сенсоров на Avito. Они почему-то завышали показания температуры. Ребята из WirenBoard проверили их по серийному номеру и выяснили, что продавались эти датчики без сенсора CO2. Те, кто добавил этот сенсор и продал датчик на Avito, не включили в датчике режим коррекции по температуре (сенсор CO2 нагревается, искажая показания сенсора температуры), поэтому показания и плавали. Будьте осторожны, покупая датчики с рук!

Когда ко мне приезжали ребята из WirenBoard, они привезли с собой специальный поверенный термометр и образцы влажности. Вот тогда-то и выяснилось, что в моих датчиках не включены коэффициенты калибровки, и поэтому датчики завышали показания температуры.

Сравнение датчиков ОВЕН ПВТ-10 и WirenBoard WB-MSW v3 на тестовом стенде

Сравнение датчиков ОВЕН ПВТ-10 и WirenBoard WB-MSW v3 на тестовом стенде

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

— Это WirenBoard. Ну, как? Наше предложение на форуме про приехать в силе!
— О, ура! Так я же раза три писал, что приезжайте. Я вам чаю сделаю! Когда вам удобно? Хоть щас!
— Давай в понедельник к 13ти часам? Мы в 10 утра позвоним и скажем, что едем и всё в силе.
— Принято! Как вам мой адрес переслать? У меня есть PDF для заказчиков с картой.
— Да нет, диктуй так, мы запишем.

Понедельник. 10 утра — тишина. 11 утра — тишина. 12 утра — тишина. Я плюнул нахер и занялся сборкой щита. И вот в районе 13ти звонок: «Это WirenBoard, мы задерживаемся на часа полтора». Угу, ну пусть. Дальше опять звонок:

— Это WirenBoard. Мы минут через 20 будем. А какой у тебя там адрес?
— Эээ… што? Так я же вам в пятницу диктовал, вы же сказали что не надо вам PDF слать, и записали его…
— Ну… в общем, мы бумажку потеряли.

Блин! Ну вот как так? Мне сразу вспомнилось «Не люблю я таких людей. Не пунктуальных» из фильма «Афоня», хоть и не совсем в тему.

Минусы этих датчиков — в таблице регистров и физическом подключении:

  • Никаких сертификатов и поверок на 2020 год НЕ БЫЛО.. Это вам не ОВЕН, а просто бытовой датчик. Его главное достоинство — стоимость (для своих возможностей он очень недорогой). Однако сейчас, в 2022 году, датчики WirenBoard прошли метрологические испытания. Скоро документы по датчикам попадут в РосРеестр, и датчик будет иметь все необходимые документы и считаться средством измерений. Это ОЧЕНЬ большой шаг! Молодцы!
  • Самый главный минус WirenBoard — это документация к датчику. Так как проект WirenBoard начинался как проект гиков для гиков (по другому я стиль программирования «напишите linux-командную строку вида modbus -poll -adr -9600 -r01 -12» обозвать не могу, я избалован и привык к сервису, который дают нормальные среды разработки, включая установку точек останова и отладку онлайн).
  • Чтобы было веселее, каждый датчик имеет разный адрес, установленный на заводе. ДА! Почему-то угарный WirenBoard решил что пользователи слишком тупые, и не смогут сами настроить адрес датчика, а заводские случайно выбранные адреса в одной партии датчиков не совпадут.
    Я не знаю, как на это реагировать: я привык к тому, что у любого устройства RS-485 есть СТАНДАРТНЫЙ адрес (и параметры связи) по умолчанию, которые указаны в инструкции, а также есть режим сброса к заводским настройкам. А тут — хрень какая-то: вместо сброса к заводским настройкам надо выполнять поиск датчика в виде перебора всех скоростей обмена и всех возможных адресов и ждать, когда он ответит. Короче, если хочется устроить кому-то западло, то можно поменять местами платы от нескольких датчиков друг с другом и посмотреть на то, как долго и упорно пользователь будет пытаться обратиться к этим датчикам по их адресам, нанесённым на корпусе. Вместо сброса настроек на заводские и установки своего адреса =)
  • Документации в печатном виде — нет. Документации в PDF, содержащем информацию про подключение, настройку, использование и карту регистров датчика — нет. Вся документация разбросана онлайн на сайте WirenBoard в формате WIKI и не собрана в едином месте: одна страница — про описание датчика, другая — про настройку параметров связи Modbus (так как они общие для всех устройств), третья — про карту регистров, четвёртая — про ИК-команды. И вот ты в первый раз, привыкший к инструкциям от ОВЕНа, RazumDom и других производителей (той же SENTERA, про которую мы только что говорили), открываешь «ЭТО» и охуеваешь от кучи разбросанной докумы. А если инета нет? А если мне хочется внести докуму к датчику во вложения CS CRM (пост про номенклатуру), чтобы она была под рукой? Фиг!
  • Второй УЖАСНЫЙ минус датчика — это ОЧЕНЬ малое место для подключения кабелей питания и RS-485. На фотках в посте вы это увидите подробно с примером-имитацией стены. Отверстие для ввода кабелей в датчик находится рядом с клеммником для подключения. Места для разделки кабеля, спайки экрана и соединения кабелей шлейфом — нет! При этом датчик можно установить на стандартный подрозетник, вмурованный в стену. Но про это в инструкции НИГДЕ не говорится, да и не поможет это: запас кабеля может остаться в подрозетнике, но заводить-то его всё равно надо через то же небольшое отверстие!!!
  • Ну а третье — самое вкусное! Это уёбищная карта регистров!! Да, для сохранения интересности и классной кульминации поста мне хотелось бы, чтобы вы узнали про это позже, но я уж сразу проматерю и поясню, так как пост про Modbus я буду писать ещё долго (и уж там-то всё подробно расскажу).
    Обновление (подробнее будет рассказано дальше в посте): сейчас WirenBoard работает над тем, что я давно хочу — чтением несуществующих регистров и ремаппингом регистров так, чтобы можно было самому составить карту регистров как хочешь и читать её одним запросом. Молодцы!
    Суть придирки и ликбеза по Modbus в том, что каждый запрос на получение данных с устройства (датчика в нашем случае) требует накладные расходы, так как имеет примерно такую структуру: «Адрес», «Команда», «Начало», «Сколько» и CRC (контроль целостности посылки). Запрос может выглядеть, на словах, так: «Адрес 40, Прочитать регистры, начиная с 0 в количестве 20 штук [CRC]». Всё это превращается в байты и отправляется по линии связи. Но наша линия связи в RS-485 тормозная (так как мы снижаем скорость, когда растёт её длина), а ПЛК может в один момент времени общаться только с одним устройством, ожидая от него ответа в течение определённого времени (таймаута). Чем больше запросов идёт к устройству, тем больше тормозит линия.
    Давайте уж рассчитаем длину запроса в байтах: (Адрес = 1 байт) + (Команда = 1 байт) + (Начало = 2 байта) + (Сколько = 2 байта) + (CRC = 2 байта) = 8 байт. Если регистры в карте датчика идут подряд (или датчик позволяет читать несуществующие регистры), то для того чтобы получить все его данные, датчику надо послать ОДИН такой запрос (8 байт). А если у датчика в карте регистров пропуски, и он не позволяет читать эти пропуски как пустые значения — то запросов может быть больше — в первых примерах у меня было их 6 штук. 6 x 8 = СОРОК_СУКА_ВОСЕМЬ байт вместо ВОСЬМИ!
    Всё это приводит к тормозам сети RS-485 и увеличивает время отклика датчиков. А ведь нам обещают определение движения в помещении. И вот что? Я в помещение уже зашёл (и у меня должен отключиться кварц или вентиляция), а информация о движении от пятого по счёту датчика до ПЛК ещё не дошла, потому что ПЛК опрашивает ещё только 4ый регистр третьего по счёту датчика. И есть риск того, что когда ПЛК доберётся до опроса нашего пятого датчика, тот уже скажет что движенеие кончилось. Вот такие скрытые косяки несёт карта регистров с пропусками. Далее по посту мы всё подсчитаем в байтах и секундах, и сделаем выводы. Плохие.
  • (Актуально на 2020-2021 год) А самое НЕПРИЯТНОЕ в том, что WirenBoard не совсем понимает, ПОЧЕМУ это является косяком и не торопится исправлять эти кривые моменты. Нет, даже не так. Самое неприятное — это то, что они заранее не подумали о косяках, а теперь наступили на грабли: да, они могут сделать чтение несуществующих регистров, но они не знают, какое число туда отдавать, так как 0x0000 и 0xFFFF у них уже зарезервированы под ошибки «Сенсор не подключен». Ну не глупость, а?! Я из-за этого и называю их самобытными: что-то сделали, как-то работает — и ладно.
    Обновление: Разобрались, всё будет читаться с одним специальным значением 0xFFFE!

WirenBoard плотно работает со СберБанком, так что их датчики вы можете увидеть в отделениях и около банкоматов:

Датчик WirenBoard WB-MSW v3 в одном из отделений сбербанка

Датчик WirenBoard WB-MSW v3 в одном из отделений сбербанка

Так как пост готовился долго (я ждал обновления прошивки датчиков, в которых можно будет читать регистры при помощи группового запроса), то за это время случился ковид и мировой кризис нехватки полупроводников. Не путайте нехватку полупроводников с санкциями 2022 года. Нехватка полупроводников буквально означает то, что если раньше какая-нибудь простейшая микросхема стоила 0,5$, то теперь она стоит 40$, заказать её можно партией в 10 000 штук с ожиданием в полгода.

Многие производители электроники вынуждены искать аналоги самого распространённого микропроцессора STM32: год назад все (включая WirenBoard и ОВЕН) начали переходить с него на его аналог GigaDevice, но сейчас и с поставками GigaDevice начались проблемы, и некоторые производители вынуждены переходить на другие китайские аналоги. А это влечёт за собой переразводку печатных плат, переписывание и отладку прошивки и новое тестирование (и сертификацию) устройства в сборе. При этом эти аналоги не дают полной совместимости, а чаще всего дают неизвестные глюки. В общем, полная задница (и не только у WirenBoard).

Конкретно у WirenBoard сейчас на 2022 год создан запас GigaDevice на 2 года вперёд, что очень хорошо. За это время ситуация с микросхемами может быть хоть как-то стабилизируется, и проблема может уйти (кому интересно — поищите про производителя ASML и заводы TSMC; сейчас по всему миру строятся новые заводы для производства микросхем, и в это вкладываются очень большие деньги).

На фотографии ниже показаны два корпуса датчиков: левый — 2020 года выпуска, правый — 2021 года (он стал более бежевым). Хорошо, что там с Майлихой-1 повезло и два датчика в старом корпусе пойдут в коридор-прихожую, а другие — в комнаты: так будет соблюдаться хоть какая-то симметрия в цветах.

Сравнение корпусов датчиков WirenBoard WB-MSW v3 раных годов выпуска (слева 2019, справа 2021)

Сравнение корпусов датчиков WirenBoard WB-MSW v3 раных годов выпуска (слева 2019, справа 2021)

Корпус у этих датчиков тоже можно красить, как и у ПВТ-10. Для покраски надо открутить линзу инфракрасного сенсора (она крепится с обратной стороны датчика на двух винтах) — её красить нельзя — и снять плату с электроникой (она крепится на двух защёлках).

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

Чертёж разметки отверстий крепления в комплекте с датчиком WB-MSW v3

Чертёж разметки отверстий крепления в комплекте с датчиком WB-MSW v3

Я хотел сравнить датчики WB-MSW v3 с датчиком ОВЕН ПВТ-10. По габаритным размерам датчик от WirenBoard больше, чем ПВТшка:

Сравнение размеров датчика WB-MSW v3 с датчиком ОВЕН ПВТ-10

Сравнение размеров датчика WB-MSW v3 с датчиком ОВЕН ПВТ-10

А по глубине (толщине) они примерно соизмеримы (если не забыть подсчитать толщину линзы инфракрасного сенсора и выпуклость корпуса датчика).

Сравнение размеров датчика WB-MSW v3 с датчиком ОВЕН ПВТ-10 (сбоку)

Сравнение размеров датчика WB-MSW v3 с датчиком ОВЕН ПВТ-10 (сбоку)

Сзади датчик, как и все изделия WirenBoard, пестреет красочными наклейками и рисунками. Иногда я шучу о том, что WirenBoard умеет красиво делать наклейки, и это их главный приоритет. Тут всё обклеено «QC», «FC» — прям как электроника на бывшем Черкизоне! =)

Задние части датчиков WirenBord WB-MSW v3, где указаны адреса Modbus и то, что измеряет датчик

Задние части датчиков WirenBord WB-MSW v3, где указаны адреса Modbus и то, что измеряет датчик

Основная задача наклейки сзади датчика — показать то, какие компоненты (сенсоры) установлены внутри: упаковочная коробка задумана так, что датчик лежит этой наклейкой наружу, и отмеченные компоненты видны. Это Wiren хорошо сделали: молодцы!

Сзади датчика находится зелёный светодиод, который светится при подаче питания на датчик и мигает при получении каждого Modbus-запроса. В старых моделях датчика светодиод имел большую яркость, а потом её уменьшили. Моё мнение тут двоякое: светодиода особо не видно, если датчик закреплён на стене (на Майлихе мы это ещё проверим), но для обратной связи он нужен и важен. Снова напоминаю идею с регистром, который может управлять светодиодом (включать его работу или отключать его; эта идея в планах реализации). Обновлено: WirenBoard взяли такую идею на вооружение и будут доделывать прошивку с возможностью отключения светодиода на датчике.

Так же на задней стороне датчика указаны версия прошивки и заводской адрес Modbus по умолчанию. Кстати, заводские параметры связи здесь отличаются от стандартных. Обычно многие производители настраивают свои устройства на 9 600, 8, N, 1 (один стоп-бит), а WirenBoard решили настроить всё на 9 600, 8, N, 2 (два стоп-бита). В щите в Адлер, который засветился в обзоре серии шкафов ABB ComfortLine CA, я пропустил этот момент, и заказчик не смог сам перенастроить датчик на 1 стоп-бит, и поэтому мне надо будет туда поехать. Ну не скотство?!

В 2022 году, с новой прошивкой датчиков, этот неприятный косяк исправлен. Оказывается, он делался для совместимости датчиков с датчиками от RazumDom О_о (напоминаю пост про них). Новая прошивка умеет понимать запросы как с одним, так и с двумя стоп-битами и корректно отвечать на них. Чёрт, вот мне повезло попасть на сырой продукт и намучиться с ним!

Касательно того, что каждый датчик имеет свой уникальный заводской адрес (указанный на наклеечке сзади рядом с версией прошивки) и не имеет механизма сброса настроек на заводские я уже ругался. Я считаю это косяком и недоработкой. Вот какого же чёрта: у ОВЕНа даже совсем «закрытые» (без дисплея, без USB-конфигуратора) устройства типа нормирующих преобразователей (НПТ, круглые «таблетки», которые устанавливаются в головку измерительного датчика, чтобы привести его выход к 0..10V/4..20 мА или RS-485 — позже я расскажу про датчик температуры с НПТ) — и те имеют отдельный вывод для сброса на заводские настройки! А тут, в сложном датчике, НЕТ!

При этом, как я уже говорил, WirenBoard предлагает воспользоваться их контроллером и сценарием (в виде последовательности Linux-команд), который будет последовательно перебирать все возможные параметры скорости и адреса, если наклеечка будет повреждена или вы забыли то, на какой адрес был настроен датчик. Ну нельзя так! НЕЛЬЗЯ!!

WirenBoard услышали эти крики безысходности и поставили себе в планы сделать программу-конфигуратор их устройств. Это хорошо! Ура!

Моя злость и ненависть к WirenBoard касается таких моментов: они считают их не значимыми и не важными, и при разговоре с ними упираешься в непробиваемую стену вида «Ну так датчики часто используют с нашим контроллером, а там для поиска датчика есть сценарий» или «Так это редкая операция, зачем под неё что-то мутить». Тьфу.

В посте про выставку «Электро-2022» я упоминал то, они хотят вообще отключить светодиоды на некоторых модулях IO (дескать, они мешают и светят в глаза; это оказалось ложью: сотрудник сообщил ошибочную информаию, а мне теперь надо посты поправлять) вместо того, чтобы дать пользователю возможность настройки: работают всегда, зажигаются на N секунд после изменения статуса, не работают. Даже ОВЕН начал хвататься за эту идею, а они хотят всё зарубить на корню.

Чтобы открыть корпус датчика, надо надавить на пластиковый упор в нижней части:

Как открыть корпус датчика WB-MSW v3: нажимаем на штырёк снизу корпуса

Как открыть корпус датчика WB-MSW v3: нажимаем на штырёк снизу корпуса

Надавливать надо посильнее. После этого можно откинуть крышку датчика:

Как открыть корпус датчика WB-MSW v3: открываем крышку датчика

Как открыть корпус датчика WB-MSW v3: открываем крышку датчика

Внутри у датчиков WB-MSW v3 находится одна общая плата, на которой на съёмных разъёмах типа PIN установлены сенсоры разных величин. Наличие этих сенсоров и определяет возможности и стоимость датчика.

На фото ниже показаны плата выпуска 2020 года (слева) и плата выпуска 2021 года (справа). Правая плата переработана на процессор GigaDevice и содержит чуть больше поясняющих надписей (появились назначения контактов разъёма питания и RS-485).

Сравнение плат датчиков WirenBoard WB-MSW v3 раных годов выпуска (слева 2019, справа 2021)

Сравнение плат датчиков WirenBoard WB-MSW v3 раных годов выпуска (слева 2019, справа 2021)

На плате датчика установлены такие сенсоры и элементы:

  • В центре на плате: PIR-детектор движения и приёмник ИК-команд;
  • В центре, левее: микрофон для определения уровня шума;
  • В центре на съёмной U-образной плате: красные и зелёные светодиоды, цепочка ИК-светодиодов для передачи записанной ИК-команды;
  • В левом верхнем углу: сенсор температуры и влажности;
  • В левом нижнем углу: сенсор вредных частиц VOC;
  • В правом нижнем углу: сенсор концентрации углекислого газа CO2;
  • В правом верхнем углу: пищалка для того, чтобы датчик мог пищать.

Вот как выглядит весь фарш сенсоров этого датчика в полной конфигурации:

Модульная конструкция датчиков WirenBoard WB-MSW v3: сенсоры устанавливаются по запросу

Модульная конструкция датчиков WirenBoard WB-MSW v3: сенсоры устанавливаются по запросу

Как я и говорю: ребята из Wiren — молодцы, так как сумели реализовать охрененную задумку, которая отлично подходит для квартир, коттеджей и офисов: ведь очень круто наблюдать не только за температурой и влажностью, а ещё и за освещённостью, шумом и концентрациями CO2/VOC. И светодиоды (красный и зелёный) и пищалка тут в тему.

Я сразу навскидку могу выдумать несколько сценариев для этого датчика (и реализовать их на ПЛК, конечно):

  • Мониторинг состояния офисных помещений днём по климату и концентрации CO2, чтобы у людей голова не болела: поддерживаем заданную влажность через регулирование климатической установки (фанкойлов, например), следим за уровнем CO2 и, если он превышает норму, мигаем красным светодиодом датчика, а если становится критическим — ещё и пищалкой пищим.
  • Более подробный мониторинг помещений с функцией простой охранной системы: отслеживаем освещённость и движение тогда, когда в помещении не должно быть людей.
  • Датчик VOC хорошо реагирует на спиртосодержащие продукты: можно отслеживать, когда офис решил ЗАБУХАТЬ! А датчик CO2 — на пожар или зажигание свечей.
  • Мой заказчик в Майлихе-1 попросил сделать ему напоминалку о ситуации, когда входая дверь в квартиру закрыта физически, но не заперта на замки (мы обвесили её кучей датчиков типа «сухой контакт» для определения этого — напоминаю пост про СК): если такая ситуация возникла и длится более заданного времени, то датчик WB-MSW v3 в прихожей будет мигать красным светодиодом и пищать. Удобно!

Мне показалось странным расположение датчика СО2 на плате:

Странное расположение сенсора CO2 на плате: выходное отверстие сенсора закрыто платой

Странное расположение сенсора CO2 на плате: выходное отверстие сенсора закрыто платой

Одним окошком он расположен к краю корпуса датчика, а другим окошком (видимо, окошек для для того, чтобы внутри датчика хорошо циркулировал воздух) упирается в плату, в которой сделано небольшое отверстие напротив этого окошка. Это нормально или нет? Может ли кто-то прокомментировать это?

Ну а теперь мы начинаем рвач датчика. И первым делом я начну с вопроса МОНТАЖА.

Все подключения датчика делаются через мелкий разъём с шагом выводов около 3 мм, для закручивания винтов которого нужна чуть ли не часовая отвёртка со шлицом шириной в 1 мм.

Разъём для подключения питания и RS-485: ОЧЕНЬ маленький!

Разъём для подключения питания и RS-485: ОЧЕНЬ маленький!

Из хорошего — это то, что сейчас производитель подписал назначения контактов разъёма на плате датчика, так как как только датчик будет прикручен к стене, надписи с задней стороны корпуса датчика уже не прочитаешь, а цветовая маркировка сделана не на всех разъёмах. И ещё хорошо то, что сами контакты расположены подряд: Плюс, Минус, A, B — без перепутывания как у SENTERA ODTHM, например.

Когда WirenBoard приезжали ко мне в 2020, чтобы посмотреть на то, как я опрашиваю их датчик при помощи ПЛК ОВЕН, то я проматерил ребят на тему их разъёма и подключения туда нормального (сертифицированного) кабеля RS-485. Ребята пообещали мне привезти образцы их кабеля, с которым (по их словам) у них нет проблем.

Знаете, что они мне привезли? Ужасную резиновую липкую ВИТУЮ ПАРУ завода «Паритет»!!!

Кабель, который WirenBoard предлагает использовать для RS-485: обычная витая пара, тьфу!

Кабель, который WirenBoard предлагает использовать для RS-485: обычная витая пара, тьфу!

Я рассмеялся и охуел. Спрашиваю: «А вот как так? Это ж витуха, какого чёрта! Там же должен быть экранированный кабель большего сечения, чтобы потерь сигнала и просадок напряжения питания не было». Они отвечают: «Ну… мы витуху закладываем по коробам в офисах, а там, где не заработает — уже используем специальный кабель, так как витуха дешевле».

Я ещё больше охуел и задал вопрос, который относится к моей сфере: «А как быть, если я заложу витуху (по вашему совету на сайте и по вашей практике, про которую вы рассказали) в стену под крутую и дорогую отделку (декоративную штукатурку, керамогранит, мозаику), а потом окажется что она не заработает и надо будет всё перекладывать?». Вот тут они почесали голову и сказали: «Да, ну, конечно, в таком случае надо сразу нормальный кабель закладывать».

Вот, сука!! ХОЧЕШЬ, хочешь их любить! Но не получается!

А это пример разделки кабеля RS-485 от того же «Паритет»‘а, который они мне показали:

Пример соединения шлейфа RS-485 от WirenBoard (привезли образец)

Пример соединения шлейфа RS-485 от WirenBoard (привезли образец)

Чот я тут вижу обгрызенный экран, а не спаянный, как должно быть. И их кабель имеет больший диаметр по сравнению с тем, который использую я.

Вот мой (экран, точнее его Drain-провод, спаян):

Кабель для RS-485 от завода СегментЭнерго, заведённый в разъём для подключения WB-MSW v3

Кабель для RS-485 от завода СегментЭнерго, заведённый в разъём для подключения WB-MSW v3

А теперь начинается магия (а точнее, какие-то нездоровые угары под группу Dvar, которую разрабы этого датчика точно слушали: мы к этому ещё вернёмся, когда до таблицы регистров дойдём)!

Берём датчик, втыкаем туда разъём и видим, что места внутри датчика НЕТ! Провода улеглись впритирку, еле-еле и, самое главное, я им помогал за кадром, пропихивая их с задней стороны датчика, которая в реальности будет закреплена на стене и недоступна!

Разъём с кабелями RS-485 подключен в датчик WB-MSW v3: ОЧЕНЬ МАЛО МЕСТА!

Разъём с кабелями RS-485 подключен в датчик WB-MSW v3: ОЧЕНЬ МАЛО МЕСТА!

По удобству монтажа их датчик получает полное «FUUUU» и скатывается в самый низ моего рейтинга.

И не надо говорить мне, что если этот датчик установить на подрозетник в стене, то тогда запас жил кабелей останется в подрозетнике, и монтировать датчик будет удобно. Фигушки! А как жилы в разъём заводить и закручивать их туда?

У датчика WB-MSW v3 внутри оставлено очень мало места для подключения кабелей RS-485

У датчика WB-MSW v3 внутри оставлено очень мало места для подключения кабелей RS-485

В начале моего поста я показывал стенд-имитатор стены на датчике ПВТ-10. Но на самом деле он готовился как раз для WB-MSW v3!

Проверка установки датчика WB-MSW v3 на стену (макет): приготовили датчик и кабели

Проверка установки датчика WB-MSW v3 на стену (макет): приготовили датчик и кабели

Итак, чтобы не повредить плату ножичком, пока мы будем снимать внешнюю изоляцию с кабелей RS-485, вынимаем её из датчика, отгибая два пластиковых усика по краям корпуса:

Проверка установки датчика WB-MSW v3 на стену (макет): снимаем плату, чтобы она не мешала разделке кабелей

Проверка установки датчика WB-MSW v3 на стену (макет): снимаем плату, чтобы она не мешала разделке кабелей

Допишу свой небольшой комментарий по поводу снятой платы: на плате маловато места для того, чтобы можно было куда-то наклеить наклейку с адресом датчика (я их печатаю под проект: на внешние датчики и модули внутри щита). Поэтому если вы решите снять сразу все платы со всех датчиков, то не перепутайте их: на плате негде пометить то, для какого датчика она предназначена.

Проверка установки датчика WB-MSW v3 на стену (макет): всё готово для монтажа

Проверка установки датчика WB-MSW v3 на стену (макет): всё готово для монтажа

Прикручиваем корпус датчика на воображаемую стену, выпуская через отверстие в корпусе кабели RS-485 (здесь идёт имитация шлейфа по квартире, так как такие датчики чаще всего и подключаются шлейфом):

Проверка установки датчика WB-MSW v3 на стену (макет): корпус датчика прикручен к макету стены

Проверка установки датчика WB-MSW v3 на стену (макет): корпус датчика прикручен к макету стены

Так как при настенном монтаже датчика в нём совсем не остаётся места для укладки кабелей, то срезаем их внешнюю изоляцию под корень (была бы тут плата — она давно бы вся поломалась нахер от ножа):

Проверка установки датчика WB-MSW v3 на стену (макет): разделываем кабели RS-485 (надо не забывать спаивать экран)

Проверка установки датчика WB-MSW v3 на стену (макет): разделываем кабели RS-485 (надо не забывать спаивать экран)

Распушаем жилы наших кабелей и где-то там в глубине спаиваем экран (интересно, много ли монтажников будет его спаивать в таких условиях; при этом целостность экрана важна для стабильной работы RS-485):

Проверка установки датчика WB-MSW v3 на стену (макет): устанавливаем плату датчика на место

Проверка установки датчика WB-MSW v3 на стену (макет): устанавливаем плату датчика на место

И наконец-то, матерясь и используя пинцет, заводим все жилы в разъём датчика.

Проверка установки датчика WB-MSW v3 на стену (макет): с большим трудом завели кабели в разъём

Проверка установки датчика WB-MSW v3 на стену (макет): с большим трудом завели кабели в разъём

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

О! WirenBoard же любит наклейки! Надо им подать мысль о том, чтобы печатали на шаблоне отверстий для датчика ещё и назначение контактов разъёма! Это было бы правда удобно, без сарказма и двоемыслия! А ещё можно печатать QR-код со ссылкой на документацию по датчику.

Наконец-то ценой матов и ювелирной точности датчик подключен.

Проверка установки датчика WB-MSW v3 на стену (макет): с большим трудом подключили датчик

Проверка установки датчика WB-MSW v3 на стену (макет): с большим трудом подключили датчик

…безвозвратно: если его понадобится отключить, открутив жилы кабелей от разъёма, то заново завести их в разъём будет трудно.

Короткие и непригодные к перемонтажу жилы кабелей RS-485, оставшиеся после снятия датчика WB-MSW v3 с макета стены

Короткие и непригодные к перемонтажу жилы кабелей RS-485, оставшиеся после снятия датчика WB-MSW v3 с макета стены

Короче, я НЕДОВОЛЕН удобством подключения! Позже, когда мы будем подключать эти восемь датчиков в Майлиху-1, я сделаю ещё несколько фоток и дополню этот пост ими здесь!

Претензий по смене настроек связи и адресу датчика у меня, кстати нет (фиг вам, а не срач с попкорном): WirenBoard стандартизировал эти регистры и их значения в своих продуктах. Правда, сделал и единую страницу в своих Вики для этого, поэтому до попадания на неё надо ещё кучу всего пролистать…

Таблица регистров для настройки параметров связи датчика WB-MSW v3

Таблица регистров для настройки параметров связи датчика WB-MSW v3

Такие способы настройки применяются многими производителями: подключил устройство по заводским настройкам (или сбросил его на них, чего нет у Wiren), задал нужные значения регистров, передёрнул питание — и всё работает. Хотя мне нравится концепт конфигураторов, который использует ОВЕН: подключил устройство, конфигуратор сам определил его тип и версию, выдал тебе все настройки списком, опросил нужные регистры для того, чтобы ты убедился что всё заработало, а ещё позволил тебе сохранить все настройки в файл, чтобы потом загрузить их и тиражировать эти настройки на однотипные устройства. Вот что стоит Wiren такое написать? Они же позиционируют себя как крупную компанию!..

Дополнение: конфигуратор появился в планах. Будет под Linux и Windows, и будет поддерживать настройку датчиков.

Вся информация, описанная ниже, скоро будет НЕ актуальна, так как WirenBoard активно работает над новой прошивкой (когда прошивка выйдет, я обновлю этот пост), которая позволит читать пропуски регистров и даже делать ремаппинг карты регистров под свои нужды. Данная информация будет являться примером того, как НЕ НАДО (НЕЛЬЗЯ) проектировать карты регистров для Modbus-устройств.

А теперь начинается полный Dvar (ссыль на группу из Википедии)! Почему Dvar? Да потому что такие заковыристые карты регистров и заумные объяснения того, почему сделано именно так, можно составить только обслушавшись этой группы!!! Сами, бля, послушайте всякие Hor Hor, Nahaliroh, Ko Ki Ki, а потом что-нибудь из ранних альбомов типа Taai Liira, Iih Rah…

Что нам говорит стандарт Modbus о том, какие способы доступа к данным можно использовать?

  • Регистры (Registers) стоит использовать тогда, когда надо прочитать большой объём данных (битовую маску: 16 бит в одном регистре) или же эти данные могут иметь значения отличные от 0 и 1: температура, влажность, давление, скорость и так далее.
  • Флаги (Coils) стоит использовать тогда, когда надо управлять или считывать булевые переменные (Вкл-Выкл): включить-выключить выход, светодиод, пищалку и так далее.

Но наша больная жизнь (в том числе и испороченная китайскими товарами) плевать хотела на этот стандарт, и на практике большинство операций сводится только к регистрам и двум командам:

  • 0x03: Read Holding Registers — прочитать один или несколько регистров;
  • 0x10: Write Multiple Registers — записать несколько регистров. Там где «Multiple» — много, может быть и один регистр.

Некоторые версии ПЛК (например, основанные на CodeSys v 2.3 — ОВЕН ПЛК 110/ПЛК 160) даже вообще не поддерживают никакие команды, связанные с чтением и записью Coils.

Наши любимые WirenBoard решили полностью следовать стандарту Modbus (они это любят, пропуская ответы на вопрос о том, что будет если по GND всех устройств, соединённых без развязки RS-485 от частотника прилетит какая-нибудь ёбань, которая всё спалит к херам и что в промке делают развязку RS-485 и иногда без GND), поэтому они завели отдельно Флаги Coils для управления пищалкой и светодиодами датчика (а ещё служебными функциями типа перекалибровки датчика CO2):

Таблица регистров (Coils) для управления датчиком WB-MSW v3 (светодиоды, пищалка)

Таблица регистров (Coils) для управления датчиком WB-MSW v3 (светодиоды, пищалка)

Обратите внимание на то, что пищалка включается по Coil 0, а светодиоды — по Coil 10 и 11 (это ТРИ запроса, если ваш ПЛК не умеет посылать Write Muliple Coils и ДВА запроса, если он это умеет).

Вы уже начинаете чувствовать то, что у вас начало подгорать и под жопу надо срочно подкладывать асбестовое одеяло? Нет?! Тогда идём к регистрам!

Я не поленился и склеил скриншот самых распространённых регистров этого датчика. Вот она, Страшная Карта (я хочу, чтобы ребята из ОВЕН это всё прочитали и поняли, что регистры надо делать ПОДРЯД, даже если их всего два или три):

Таблица регистров для управления датчиком WB-MSW v3 (сбор данных, управление)

Таблица регистров для управления датчиком WB-MSW v3 (сбор данных, управление)

Итак, давайте выпишем номера значимых для нас регистров: 3, 4, 5, …, 8, 9, 10, 11, …, 97, 98, …, 283 (Cyka Blat)! А если мы хотим получать ещё и статус самого датчика, то нам нужны регистры 121, …, 124 (хотя бы).

Знаете, ЧТО делает этот датчик на попытку прочитать несуществующие регистры (любому идиоту, сука, видно что удобно было бы прочитать регистры с 3 по 11 одним запросом)? Конечно строго следует стандарту Modbus и выдаёт ошибку ERROR_ILLEGAL_ADDRESS (типа, неверный диапазон адресов регистров для чтения).

Сколько у нас получилось регистров? 12 штук. Сколько запросов надо, чтобы их прочитать или при условии групповых запросов? Считаем:

  • Запрос 1 = Регистры 3, 4, 5
  • Запрос 2 = Регистры 8, 9, 10, 11
  • Запрос 3 = Регистры 97, 98
  • Запрос 4 = Регистр 283
  • Запрос 5 = Регистр 121
  • Запрос 6 = Регистр 124

И вот теперь, так как пост про Modbus я ещё не написал (пока можете почитать эту статью из интернета: https://ipc2u.ru/articles/prostye-resheniya/modbus-rtu/), просто подсчитаем (я уже начинал считать это ранее в посте):

  • Команда 0x03 (Read Holding Registers) имеет формат [1 Байт: Адрес, Кому], [1 Байт: Команда], [2 Байта: С какого регистра прочитать], [2 Байта: Сколько штук прочитать], [2 Байта: CRC]. ИТОГО = 8 Байт
  • Ответ от устройства на команду 0x03 (Read Holding Registers) имеет формат [1 Байт: Адрес, Кому], [1 Байт: Команда], [1 Байт: Сколько байт данных идёт в ответе], [По 2 Байта на один регистр], [2 Байта: CRC]. ИТОГО = 5 + 2 x [ЧислоРегистров] Байт
  • Согласно спецификации протокола при передаче данных может использоваться задержка ответа в диапазоне 5-10 мсек.
  • Согласно той же спецификации на малых скоростях (до 19 200 включительно) при передаче каждого байта делается задержка в 3,5 мсек (упрощённо).

Запрос на чтение регистров (одного, двух или хоть сотни) занимает 8 байт. Один байт — это восемь бит. То есть 8 байт займут 8 x 8 = 64 бита. Скорость передачи данных пусть будет 9 600 бит в секунду. Значит 64 бита мы передадим за 64 / 9600 = 0,0066 секунд, что примерно равно 66 миллисекунд (мсек). А теперь прибавляем накладные расходы:

  • +5 мсек задержки ответа = 66 + 5 = 71 мсек;
  • +3,5 мсек на каждый байт = 71 + (8 x 3,5) = 71 + 28 = 99 мсек.

И это — только на ЗАПРОС! Причём запрос что для чтения одного регистра, что для чтения сотни регистров не будет меняться!!

Разбираемся с ответом. Если мы будем запрашивать только один регистр, то такой ответ займёт 7 байт. Чтобы не париться с расчётами, будем считать что его передача на скорости 9600 занимает те же 99 мсек.

Таким, Cyka Blat, образом мы получаем что на опрос ОДНОГО регистра мы тратим 99 + 99 = 198 (200 мсек) при скорости 9 600 бит/сек.

Давайте сравним количество байт и время их передачи для 20 регистров:

  • Ответ с одним регистром = 7 байт, 99 мсек х 20 штук = 1980 мсек (1,98 секунды);
  • Ответ с 20 регистрами (если бы они шли подряд) = 45 байт = 0,0375 сек (37,5 мсек) + 5 + (20 x 3,5) = 112,5 мсек — в СЕМНАДЦАТЬ РАЗ МЕНЬШЕ!!!

Вот вам и РАЗНИЦА!! Вот о чём я говорю, когда топлю за последовательные таблицы регистров!! Протокол Modbus имеет высокие накладные расходы: там выгоднее передавать сразу кучу данных, а не пихать запросы по каждому регистру отдельно.

То есть, если мы берём самую медленную скорость и опрашиваем 20 регистров по отдельности (если карта регистров идёт не подряд), то получается что каждый датчик будет полностью опрошен за те самые 1,98 секунды. А если датчиков 8 штук (как у нас в проекте), то получаем 1,98 x 8 = 9,98 секунд на один датчик, так как протокол Modbus ещё и последовательный: он может общаться в один момент времени только с одним устройством. А если это устройство ещё и не ответит — то ВЕСЬ опрос всех других устройств остановится на таймаут, в течение которого ПЛК будет ждать ответа от дохлого устройства.

В свете такой нарко… ой, Dvar’ской карты регистров у меня встаёт интересный вопрос о том, как Wiren предполагает детектировать движение по такому датчику. Представим такой сценарий: опрос датчика только что закончился, датчик стал фиксировать движение (но его опросят через 9,98 секунд), датчик перестал фиксировать движение (оно было очень коротким), начался опрос датчика. Что увидит ПЛК? Правильно: отсутствие движения!

Я знаю, что вы все скажете: что я взял самую медленную скорость в 9 600 и подкручиваю цифрами, чтобы всех напугать. Но фигушки! Оказалось, что не все устройства имеют настройку скорости. Например, термостаты с AliExpress со старой прошивкой (вот пост про них) — НЕ имеют, и скорость 9 600 в них жёстко зашита.

Конечно, мы нашли другие термостаты и подняли скорость в линии до 19 200, что (с ухищрениями и групповыми запросами групп регистров, про которые я напишу ниже) снизило время опроса датчиков до 3,5-4 секунды. Это хоть как-то приемлемо!

Вот во что выливается непоследовательная карта регистров!! Казалось бы — ну разместили регистры с пропусками, и что тут такого?

Вот так выглядит опрос этого датчика через Modbus Poll: пришлось для отдельных групп регистров заводить отдельные окошки опроса (и не все).

Опрос данных с датчика WB-MSW v3: видно, как много регистров идёт не по порядку (с пропусками)

Опрос данных с датчика WB-MSW v3: видно, как много регистров идёт не по порядку (с пропусками)

Но погодите! Подложите ещё одно асбестовое одеяло под жопу (а лучше два)!! Мы же не дошли до обсуждения ИК-команд, которые датчик может записывать и воспроизводить!!

Знаете, что было в 2020 году на старой прошивке датчика? *торжествующе-громогласно-страшным голосом* А ВО-О-О-Т ЧТО:

Таблица регистров (Coils) для управления датчиком WB-MSW v3 (ИК-команды)

Таблица регистров (Coils) для управления датчиком WB-MSW v3 (ИК-команды)

Короче, в чОтком соответствии со спецификацией Modbus ребята из Wiren заложили:

  • 80 штук Coils для команд «Записать команду номер такой-то»
  • 80 штук Coils для команд «Воспроизвести команду номер такой-то»

То есть к нашим регистрам прибавилось ещё 80 + 80 = 160 штук Coils!!

В новой прошивке WirenBoard это исправили, использовав мою идею: завести один Modbus-регистр для задания номера банка команды и второй для операции, что с этим банком сделать: записать, воспроизвести, стереть.

По словам WirenBoard, они выпускают прошивки для всех датчиков на любом железе (и для моих старых STM32 прошивка тоже есть). Надо будет поизучать этот вопрос, а то мы с Майлихой хотели на их датчики повесить управление кондиционерами, и решение с кучей Coils на старой прошивке нам не подходит.

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

Добавление датчика WB-MSW v3 в ПЛК (CodeSys v3.5) для опроса его данных и управления им (14 каналов опроса, ужас!)

Добавление датчика WB-MSW v3 в ПЛК (CodeSys v3.5) для опроса его данных и управления им (14 каналов опроса, ужас!)

А ведь ПЛК тоже выдерживает паузу между запросами (на CodeSys v3.5 при использовании штатного драйвера — около 80 мсек)… Хех! Это привело к тому, что для исполнения ИК-команды в сети из трёх датчиков WirenBoard (собранной для теста) пришлось подавать эту команду на датчик в течение 10 секунд. Я сначала думал, что у меня датчик не работает — а оказалось, что опрос долго идёт.

И не надо напоминать мне про то, что всякие там температуры и концентрации CO2 можно опрашивать реже: раз в минуту, например. Всё равно в один из моментов времени получится так, что к датчику попадут сразу все запросы, и он будет тормозить. А если именно в этот момент времени мы как раз решили подать ему сигнал воспроизвести ИК-команду? Обратной связи-то нет, и мы не знаем, что делает датчик…

Как объясняет WirenBoard такую кривую карту регистров (по сведениям на 2020 год, когда мы с ними плотно общались по этому вопросу)?

  • »Она сложилась исторически, хочется иметь обратную совместимость»;
  • »С нашими контроллерами всё работает, так как у нас событийная модель: команда на запись регистра передаётся только запросу, когда в нём надо что-то изменить». Хах! А в ПЛК по умолчанию все команды подаются строго циклически, так как устройство обязано быть на связи: это промка, и если устройство на связи не будет, то это может кончиться взрывом котла с паром (лучше зимой в морозы) или химическоо реактора с кислотой, а не сбоем показаний CO2;
  • »Возможно мы вообще выкинем этот светодиод на датчике и других устройствах: он только мешается». Ну так раз вы так любите регистры, то сделайте регистр, который будет отключать этот светодиод: пусть каждый настраивает его поведение как ему нравится;
  • »Если мы сделаем чтение несуществующих регистров, то нам же надо как-то возвращать код ошибки, а все значения 0x0000 или 0xFFFF (все биты нули или все единицы) у нас уже заняты кодами ошибок отсутствия сенсоров, и мы не знаем что сделать: нам нужна обратная совместимость». Блин!!! Зато накладных расходов на опросы — дохера! Ну так сделайте ещё одну фишку, которую я предлагаю уже с год или полтора: заведите в карте ещё один служебный регистр. Если его значение будет равно нулю — то датчик будет вести себя как сейчас, отдавая ошибку ERROR_ILLEGALL_ADDRESS на несуществующие регистры, а если его значение отличается от нуля — то пусть несуществующие регистры отдают это значение. Тогда можно играть во всякие фразочки, записанные в 16-ричной системе типа 0xDEAD 0xBEEF, 0xC0FE, а кому надо — тем останется строгий стандарт и совместимость. Разве это так сложно?!

Эти ребята непрошибаемые! ОВЕН, берите на вооружение эти идеи с картой регистров и светодиодами! Вы молодцы — у вас эти идеи не пропадут!! А я пока буду ждать новую прошивку!

Как сейчас я обрабатываю такие датчики (скришоты даны для ПЛК на CodeSys v3.5, где поддерживаются команды работы с Coils)? Сейчас, создавая программу под Майлиху-1, я занялся мощным рефакторингом кода, создав функциональные блоки (FB), которые обрабатывают все данные с датчиков, формируя из них понятные мне значения в виде чисел или готовых строк, которые можно выводить сразу на экран.

Также внутри этих FB идёт вычисление минимума, максимума для каждого значения и защита от кратковременных отвалов связи: если при чтении даных с датчика в течение некоторого времени происходит мало сбоев, то FB считает что связь в порядке и данные верны. Если же число ошибок связи с датчиком увеличивается — то только тогда FB считает что датчик отвалился, а его значения не верны. Все пороги и значения настраиваются в константах проекта, а такой алгоритм позволяет защитить программу от помех или кратковременных сбоев связи: она не считает их ошибками и не останавливает процессы, завязанные на данные с датчиков.

Чтобы читать с датчика почти все данные (до ИК-команд я не дошёл, жду и надеюсь на какую-то смену прошивки для моих датчиков), я сгруппировал их в общие запросы так, как мне позволила карта регистров. Теперь я получил всего 6 каналов опроса против 14ти.

Обработка WB-MSW v3 на ПЛК: Внесены 6 каналов группового опроса (вместо 14ти)

Обработка WB-MSW v3 на ПЛК: Внесены 6 каналов группового опроса (вместо 14ти)

Мой FB-обёртка получает на входе сырые данные с этих групповых каналов опроса в виде массивов WORD (так их отдаёт CodeSys при групповых опросах), а так же переменные для управления светодиодами и статус ошибок связи датчика:

Обработка WB-MSW v3 на ПЛК: Входные переменные FB обработки данных с датчика

Обработка WB-MSW v3 на ПЛК: Входные переменные FB обработки данных с датчика

А на выходе там целый клондайк переменных: массивы данных для записи в датчик (для управления светодиодами и пищалкой), флаг о том, что значения с датчика верны (и их можно использовать для управления процессами) и сами значения с датчика в числовом формате (для программы управления) и в строковом формате (для вывода на экран). Получилось очень круто:

Обработка WB-MSW v3 на ПЛК: Выходные переменные FB с данными от датчика

Обработка WB-MSW v3 на ПЛК: Выходные переменные FB с данными от датчика

Потом мы создаём экземпляры таких FB для каждого датчика, привязываем к нему переменные из каналов опроса — и получаем все данные с проверкой на их достоверность!

Обработка WB-MSW v3 на ПЛК: Привязка переменных FB к каналам ModBus

Обработка WB-MSW v3 на ПЛК: Привязка переменных FB к каналам ModBus

Идея с FB обёрток данных с датчиков мне хорошо зашла, и я сделал такие же блоки для SENTERA и других устройств в проекте!

Ну а нам осталось побаловаться с датчиками. Скриншоты относятся к проекту щита на Шелепихе (как раз он тогда и притащил мне расхайпленный WB-MSW v3 на поиграться).

Вот здесь я проверил то, как работают бризеры Tion (даю ссылку на вторую часть поста про них, скоро выйдет третья):

Тесты датчика WB-MSW v3: Падение концентрации CO2 при включении бризеров TION

Тесты датчика WB-MSW v3: Падение концентрации CO2 при включении бризеров TION

Я специально вырубил на ночь бризер, поспал без него и надышал CO2 под 2000 ppm. Как только бризер заработал, концентрация CO2 начала падать.

Тут я решил ПОБАРАБАНИТЬ. ГРОМКО. Специально. Когда барабанишь, то поднимается не только уровень шума, а ещё и с уровень CO2, так как барабанщик много дышит (и потеет тоже):

Тесты датчика WB-MSW v3: Изменение шума и влажности, когда я побарабанил (жёстко и громко)

Тесты датчика WB-MSW v3: Изменение шума и влажности, когда я побарабанил (жёстко и громко)

Ну а другим вечером я решил поиздеваться над датчиком VOC, который мгновенно реагирует на зажигание свечей, вонилок и СПИРТ! Нафигачил себе сыра катышками и бокал вина…

Тесты датчика WB-MSW v3: Решил ночью выпить немного вина ;)

Тесты датчика WB-MSW v3: Решил ночью выпить немного вина ;)

…и концентрацию VOC на датчике почти зашкалило! Так ему и надо! =)

Тесты датчика WB-MSW v3: Резкий скачок концентрации CO2/VOC от вина и свечей!

Тесты датчика WB-MSW v3: Резкий скачок концентрации CO2/VOC от вина и свечей!

О будущих планах WirenBoard. Реакция на данный пост и новости от компании.

После выхода этого поста ребята из WirenBoard связались со мной и написали мне комментарии по данному посту, которые я будут приводить в виде тезисов. Актуальность комментариев — Август 2022 года.

  • Запас микроконтроллеров GigaDevice (аналоги STM32) есть на 2 года. Поэтому производство датчиков будет идти на них, чтобы не тратить время на переделку прошивок под другие микроконтроллеры;
  • (Не проверено мной) Прошивки выпускаются и для самых старых датчиков по принципу обратной совместимости. То есть, можно обновить датчик, в котором в качестве процессора стоит STM32, на новую прошивку;
  • В будущих прошивках ожидается регистр для управления индикаторным светодиодом: светодиод можно будет совсем отключить, чтобы он не мешал. Убирать индикацию IO в модулях IO никто не собирался: на выставке Электро-2022 мне сообщили ошибочные сведения;
  • В новой прошивке датчики понимают один или два стоп-бита корректно;
  • Заканчивается оформление документов (и сертификация) на внесение WB-MSW v3 (и других датчиков) в Реестр средств измерений;
  • В ближайших планах (возможно, октябрь 2022) доработать прошивку так, чтобы несуществующие регистры можно было читать. Они будут возвращать значение 0xFFFE, а через специальный регистр настройки эту функцию можно будет включить или отключить;
  • WirenBoard работают над тем, чтобы полностью переписать в прошивках ВСЕХ устройств (40+) ядро работы с Modbus (чтение регистров) так, чтобы там поддерживался ремаппинг: можно было создать свою последовательность регистров и читать их подряд, начиная с какого-то адреса. Это круто, хочу-хочу: тогда буду читать ещё и сведения о напряжении питания датчика;
  • По самим датчикам WB-MSW ведётся дополнительная работа. Думают над версией v4, в которой изменится корпус (внутри будет больше места, а защёлки крышки будут более удобные), а также над версией датчика для установки в подрозетник скрытым монтажом так, чтобы снаружи он выглядел как заглушка, а не торчал коробкой на стене;
  • В качестве первой меры, которая повышает удобство настроек, под некоторые устройства сделаны шаблоны для Modbus Poll (свежей версии, а не той старой, которая у меня), при помощи которых можно быстро почитать регистры и задать некоторые настройки через них;
  • В качестве будущего проекта WirenBoard собираются выпустить свой конфигуратор под свои устройства (как я и писал в посте), в котором будет поиск устройств с неизвестным адресом или параметрами связи, и также обновление прошивок. Короче, как у ОВЕНа сейчас в их конфигураторе;
  • Выпустили свой преобразователь USB<>RS-485 с выходом питания DC 12V, чтобы этот преобразователь сразу же питал устройства WirenBoard во время настройки. Идея клёвая!

Я буду ждать обновлений, обновлять прошивку своих датчиков и, если WirenBoard успеют до пусконаладки Mail.Ru-1, то тестировать новую прошивку с ремаппингом регистров. А если не успеют — то потом перепишу проект на новую прошивку и новую карту регистров!

Заключение. Упаковка датчиков для объектов.

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

  • Удобное подключение кабелей RS-485 и питания. Надо заранее и сразу понимать, что кабели для RS-485 — это не тонкая витая пара или лапша. Эти кабели имеют большой диаметр и гибкие жилы, и часто разводятся шлейфом. В промке вы можете поставить рядом с датчиком коммутационную коробку (ОВЕН такие выпускает), но в быту датчик должен подключаться эстетично и аккуратно: а значит внутри датчика должно быть предусмотрено место для разделки кабелей и соединения их экрана.
  • Светодиод(ы), которые показывают статус питания, работы и ошибок датчика — ОЧЕНЬ важны и нужны (плохой пример — SENTERA, где без светодиода ничего не понятно). Если вам кажется, что светодиод будет мешать пользователю — сделайте регистр конфигурации, который отвечает за статус светодиода: Выключен, Включается на хх минут после подачи питания на датчик, Всегда включен (если светодиод работает — то он светится при наличии питания и мигает при запросах Modbus).
  • Последовательная карта регистров для опреативных значений (данные, управление датчиком): на примере WirenBoard я хорошо показал то, как это важно. Если карту не получается сделать последовательной из-за совместимости со старыми продуктами, то или продублируйте регистры последовательно под другими номерами или же сделайте чтение несуществующих регистров.
    Напоминаю идею со специальным регистром, который будет отвечать за чтение несуществующих регистров: если этот регистр равен нулю, то несуществующие регистры не читаются и возвращается код ошибки. Если регистр не равен нулю — то несуществующие регистры возвращают значение, заданное в нём.
  • Для уличных или промышленных датчиков важна возможность очистить мембрану сенсора или заменить её, а так же расположение этой мембраны (чтобы в неё не попадал мусор и грязь).
  • Идея с настройкой параметров связи переключателями — очень крутая, особенно для уличных датчиков!
  • Пусть будет побольше расчётных параметров (точка росы, например). Собственные параметры (как у WirenBoard — измерение напряжения питания и температуры процессора, команды перекалибровки сенсоров) тоже полезны.
  • Если делать уличные датчики — то с измерением уровня освещённости как у SENTERA (или с возможность добавить туда этот сенсор как дополнительную опцию — по аналогии с платами RS-485 для реле ПР200 у ОВЕН).

Перед монтажом датчиков нужно заранее их настроить и проверить на работу. В своих проектах я печатаю наклейки, которые клею на коробку с датчиком, внутрь его корпуса (или на печатную плату) и на заднюю стенку корпуса. При монтаже это помогает не ошибиться и не перепутать датчики.

Упаковка заранее настроенных датчиков для проекта Mail.Ru-1

Упаковка заранее настроенных датчиков для проекта Mail.Ru-1

Ну а все датчики WirenBoard WB-MSW v3 и SENTERA ODTHM я собрал в одну большую гирлянду, чтобы подключить их к ПЛК для Майлихи-1, который я заканчиваю программировать (разработка затянулась из-за рефакторинга и отвлечения на другие щиты). Во как получилось:

Гирлянда из датчиков WB-MSW v3 и ODTHM для проверки работы ПЛК

Гирлянда из датчиков WB-MSW v3 и ODTHM для проверки работы ПЛК

Это оказалось хорошей практикой: сразу настраивать датчики и подключать их в тестовом режиме к ПЛК. Она позволила уточнить и общее время опроса датчиков, и проверить всю логику работы ПЛК, не получая сообщения об ошибках.

Датчики WB-MSW v3 и ODTHM в процессе работы ПЛК

Датчики WB-MSW v3 и ODTHM в процессе работы ПЛК

На этом я заканчиваю свой пост! Позже я буду дополнять его фотками установленных датчиков, когда закончу Майлиху!

3 Отзывов на “Датчики климата (температуры, влажности) ОВЕН ПВТ, WirenBoard WB-MSW, Sentera ODTHM”


  • 1 oddentity

    [CS: Комментарий перемещён из поста «Логические реле и ПЛК : Зачем это нужно и как работает?«]

    Добавлю немного про Wirenboard из собственного практического опыта.
    Контроллер специфический. Вообще, идеи заложены отличные, но из-за слабой документации и недоработок в софте, интеграция в полноценных проектах выливается в огромную головную боль. Особенно, если отступить чуть дальше примитивных сценариев.

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

    Надо отдать должное команде разработчиков — поддержка работает! Я создал 100500 тем на форуме по разным вопросам, как по документации, так и по железу — ни разу я не был послан или проигнорен, отвечают оперативно. Из реальных проблем (не относится к контроллеру) — у меня слетели калибровки многоканального счетчика, обнулились регистры. Написал на форуме поддержки (вечером), в течении буквально пары часов дали обратную связь, попросили SSH-доступ и восстановили все удаленно, в нерабочее время. За это — респект!

    Но есть весьма досадные недоработки. Например, в шаблонах устройств нет распространенных типов данных. Например, ампер, герц, вольт-ампер. Есть вольты, ватты, кВт-часы, а ампер нету… На работоспособность это не влияет, в виджетах напротив силы тока будет просто число без величины, но таких перфекционистов как я это напрягает. Причем, странно — ребята не первый год производят эти железки, пишут WebUI, есть поддержка куча девайсов измеряющих силу тока, но почему-то никто не додумался добавить амперы… Ну как так? Самостоятельно добавить у меня не получилось, надо копаться глубоко в исходниках, пока что забил…

    Ещё по WirenBoard непонятно, на чём его разрабатывать — ну программу писать. У меня один хороший заказчик уже как год его хочет, но ни хуя не ясно как прогать. Искал-искал… CodeSys там и не пахнет. Каким-то своим IDE — тоже не пахнет… вот пока забили.

    У них есть свой движок правил, который по сути является JavaScript с некоторыми собственными функциями. Более-менее документировано. Если есть навыки в прог-нии на JS — вообще не проблема. Движок может запускать любые команды из CLI, которые могут быть скриптами или программами написанными вообще на любых языках. Если даже некая железка официально не поддерживается — можно тупо брать с нее сырые данные по любому интерфейсу, парсить и выдавать движку в нужном виде.

    У меня есть такой скрипт, написанный на linux-shell, который опрашивает показания счетчиков воды через bluetooth, парсит RAW-данные и с помощью движка правил выводит показания в виде наглядных виджетов для отслеживания ресурса фильтров. Еще один скрипт периодически запрашивает баланс на сим-карте, которая вставлена во встроенный модем.

    Про WirenBoard… веб-интерфейс? Это чё?! А там нет что ли ну… этого… где код писать? Всякие функции, процедуры, вызовы, стэк, память, ресурсы, переменные?…
    Если у этой пизды настройки и опрос RS-485 только по веб-интерфейсу — это это не ПЛК, а проебундия сплошная!

    Для тру-кодеров можно все писать просто в текстовых файлах, а управлять в линукс-консоли. Любые настройки можно так же делать правкой текстовых конфигов, как и в любых линукс-девайсах. Веб-интерфейс там в основном для статистики и наглядности — можно посмотреть историю параметров в виде графиков, можно сделать всякие виджеты, чтобы скажем, вся температура со всех датчиков была на одной «панельке», или сгруппировать кнопки какие-либо. 2-я версия webUI существенно продвинулась в плане кастомизации и если нужно всего пару кнопок и пару виджетов, можно даже обойтись без интеграции с Apple HomeKit, а делать все это из родного веб-интерфейса.

    Ну и писать код тоже можно в веб-интерфейсе — это просто текстовый редактор, который правит те же текстовые файлы, но немного упрощающий кодинг (включение реал-тайм отладки, подсвечивание ошибок кода и тд).

    Из вариантов вижу такие:
    https://wirenboard.com/ru/ (всё здорово, кроме modbus на кнопки, что почти 100% приведёт к лагам системы, планируется более 30 кнопок, их опрос может занять более полусекунды — меня за такую херню из дома выгонят);

    Тут вы не совсем правы. До кнопок Modbus не нужен, там просто тянется сигнальный провод как с обычных реле. Если кнопки заводить на отдельные «железные» релейные модули — там все обрабатывается мгновенно и без участия контроллера. Можно даже примитивную логику сделать с помощью встроенной в реле маппинг-матрицы (ну, например, при нажатии кнопки 5 — включать каналы 1 и 2, поменять состояние канала 3, а каналы 4 и 5 не трогать вообще.

    А вот если вы хотите вывести все это в инет и связать с Apple HomeKit, или строить более сложную логику в зависимости от датчиков или состояния других устройств — тогда да, нужно заводить это на контроллер по ModbusRTU/RS-485 и дальше связывать с облаком. Но сам по себе ModbusRTU работает тоже почти мгновенно, лаг тут уже будет скорее из-за облака и интернет-соединения. Т.е. при включении света на телефоне у вас скорее всего будет некоторый лаг, но при этом физическая кнопка-выключатель будет работать мгновенно.

    Почему будет лагать по модбусу — тут зависит от архитектуры, если модули растащить по квартире, и будет их больше двух десятков — боюсь, не получится гонять это на 115200, а будет, например, 57600 и последовательный опрос, и задержки будут. Можно, конечно, все модули связать внутри щитка, а от кнопок/выключателей тащить провода, но то такое.

    Не понял, а зачем вам тащить Modbus по квартире? Это разве что для датчиков, и то можно беспроводные применять. В Wirenboard целая туча беспроводных интерфейсов — начиная от 433 МГц и заканчивая новомодными Z-wave и ZigBee.

    А для кнопок управления светом мое ИМХО, самый верный и надежный способ — сигнальные кабели в щит. Кабелей будет немного, т.к. тянется это все ШЛЕЙФОМ (см. соотв. статью в этом же блоге), даже той же витой парой можно, до 7 кнопок на одну витуху. Кабелей будет столько, сколько комнат. По мне, так гораздо удобнее расположить кнопки везде где они будут нужны, хоть 5 штук на комнату, чем перекрикиваться с ботами или искать смартфон для включения света ))

    Клеммы у него пиздец уебанские и полное дерьмище (кроме фотки с 6й версией).

    Вроде от этих зажимных клемм давно отказались. Сейчас везде винтовые. В силовых реле НШВИ до 2,5кв. лезет, а если обжато правильными клещами в ровный квадрат — то и 4-ка, либо 2х1,5.
    В сам контроллер клеммы максимум до 0,75 (идеально обжатая квадратом НШВИ-шка лезет и 1кв.мм), но там везде слаботочные цепи.

    [CS: Комментарий перемещён из поста «Программируемые реле ОВЕН ПР100, ПР102 и ПР200, часть 3«]

    Значит что касается WirenBoard. Я бы вебал бы их, проклял бы и отправил бы в ёбаный ад, где их будут вечно пытать анальным яблоком (или как его там звали) за их ёбаные пружинные клеммы!

    Ну сколько можно уже? Нет давно пружинных клемм у них, НЕТ!!! Ни на контроллере, ни на релейных модулях, ни на диммерах. Может еще остались на каких-то древних модулях со старых партий, но в целом, везде винтовые. Уже писал в другом комменте, на силовых реле в винтовые влеммы входит 2,5 НШВИ, при правильном обжиме квадратом — входит и 4-ка или двойная полторашка, т.е. нет проблем сделать шлейф из 1,5-шки, а на свет больше и не нужно.

    Также я недоумеваю, нахера там столько протоколов ебанули. Тот же 1-Wire для DS18B20 ПИЗДЕЦ глючная хуйня на длинных линиях.

    Просто смотри шире. WirenBoard — это не ПЛК. Точнее, можеть быть и ПЛК, а может чем угодно и даже wi-fi роутером или метостанцией. Это железка для интеграции вообще всего-всего и в т.ч. не относящегося к электрике. У меня, например, он показания счетчиков воды собирает по BLE и управляет сервоприводом для промывки обратного осмоса. ))

    1wire на длинных линиях и не тянут. Для длинных линий есть адаптеры ModbusRTU-1wire. Например, для теплого пола ставится такой адаптер в подрозетник (он мелкий), от него датчик 1wire вместо стандартного термодатчика, а дальше уже ModbusRTU идет в щит на контроллер и там рулит температурой.
    Зачем сделали 1wire прямо на контроллере — хз, ну сделали и сделали, кушать не просит. Эти выходы во-первых, могут переключаться на режим цифрового входа, во-вторых, если нужно воткнуть парочку 1wire датчиков где-то рядом в щите — вот и пригодится.

    Можно называть таких людей хипстерами или еще как-то, но современные тенденции таковы, что от «умного дома» уже недостаточно делать что-то по заданным сценариям. Нужна ОБРАТНАЯ СВЯЗЬ и как следствие, выход в инет или хотя бы СМС-оповещения. А у всех этих суровых промышленных ПЛК с этим по-прежнему все на зачаточном уровне.

  • 2 aMster

    касательно поверки овеновских датчиков.
    у ПВТ-10 и 100 — межповерочный интервал 1 год. а потом изволь снимать и на поверку.

  • 3 CS  [Москва]

    aMster …а так же и у датчиков ДТС, датчиков давления и прочих датчиков.
    Этот интервал выбран по одному из стандартов поверки, и он обязан быть таким по нашим законам.

Оставить отзыв

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