- Интеграция счетчика Меркурий 200 в Home Assistant (часть 1)
- Диспетчеризация электросчетчика МЕРКУРИЙ по ETHERNET и WiFi
- 1. Рассмотрим виды и способы подключения интерфейсов в электросчетчиках МЕРКУРИЙ.
- Меркурий-234 (содержит RS485 и питание интерфейса. Подключение основного RS485 на разъеме XT4, при наличии дополнительного RS485 на разъеме XS1
- Меркурий-206 Из производства на данный момент выходят счетчики только с RS485 и без внутреннего питания интерфейса, поэтому подключаемся так:
- Меркурий-236 Содержит один RS485 с питанием интерфейса
- Мерк урий-203 Содержит RS485 с питанием интерфейса
- Меркурий-200 Содержит CAN, можно достичь подключения, инвертируется RS485 и используя схему http:/ /incotex-counter.blogspot.ru/2011/03/can-rs485.html плюс внешнее питании интерфейса. Эта схемотехника обычно работает в единичных случаях с короткими линиями связи.
- Меркурий-230 может содержать RS485 (буква R), подключение ниже представлено. Если в обозначении присутствует буква S, то +5В подавать не нужно, оно есть уже внутри, а если нет этой буквы, то подавать питание обязательно.
- 2. Настройки сетевых адресов компьютера и Ethernet / WiFi / RS485 адаптера
- Настройка USR-TCP232-304 или USR-DR302
- Настройка USR-TCP232-410S
- 3. Конфиугартор счетчиков Меркурий (можно использоваль TaskGroup или АСКУЭ)
- 3. Нюансы
- Интеграция счетчика Меркурий 200 в Home Assistant (Часть 2)
Интеграция счетчика Меркурий 200 в Home Assistant (часть 1)
Ранее я уже писал о том, как интегрировал счетчик воды и газа в мой умный дом на базе Home Assistant. Постепенно дошла очередь и до счетчика электроэнергии.
У меня в подъезде установлен счетчик Меркурий 200.04. У него под крышкой есть импульсный выход и выход CAN для подключения телеметрии. Когда я заехал в свою квартиру , он не был опечатан (не знаю, норма ли это), но я все равно не рискнул вскрывать крышку и подключаться к интерфейсным разъемам.
Источник фото: https://market.yandex.ru/product—schetchik-elektroenergii-odnofaznyi-mnogotarifnyi-incotex-merkurii-200-02-2-tarifa-5-60-a/189294244
Вместо этого я нашел статью по интеграции любого счетчика в системы умного дома через протокол MQTT с помощью считывания миганий светодиода на корпусе счетчика. Этот вариант отлично подходил, и я заказал комплектующие для него, тем более это были уже знакомые по предыдущим счетчикам, а также системе защиты от протечек Аквасторож и термостата для газового котла wi-fi модули на базе чипа esp8266.
Протянув кабель от своего слаботочного щитка к счетчику, я приклеил на скотч датчик освещенности к светодиоду прибору учета, подключил датчик к модулю esp и прошил его прошивкой из статьи выше.
В Home assistant увидел импульсы, передаваемые счетчиком на мой фоторезистор.
Вот так выглядела карточка с данными, поступающими от счетчика.
Возможно, я плохо приклеил фоторезистор, или неправильно указал цену деления импульса, но данные счетчика не сходились с теми данными, которые поступали по MQTT и высчитывались Home assistant. Решил, что разберусь с этим позднее, когда появится время, и на некоторое время оставил эту затею.
Вернулся к ней спустя пару недель, когда в мою дверь позвонили. В подъезде стояли двое мужчин с какими-то бумагами.
Я объяснил что и для чего, что это обычный фоторезистор, показания, мол, так снимать планирую, в конструкцию счетчика не вмешиваюсь.
В чем проблема — мне объяснить так и не смогли, но из этих мужчин я смог вытащить интересующую меня информацию, а именно куда звонить, если хочу подключиться к CAN порту счетчика, который находится за крышкой.
Я все же снял датчик, понадеявшись, что смогу подключиться к счетчику напрямую, и тогда интегрировать его придется по-другому (тогда даже не знал как).
Обзвонив по цепочке человек 5, так и не нашел ответственного человека, который сможет согласовать мне подключение к счетчику. Даже в технической поддержке управляющей компании, куда я написал, мне ответили что “у нас нет таких специалистов” и закрыли заявку. Только открыв ее повторно с объяснением, что я сам все сделаю, вы только согласуйте, ко мне начали поступать звонки от исполнителей.
Позже со мной согласовали время, когда ко мне готовы прийти. Пришло два человека, один помоложе, второй явно прожженый опытом скептик.
Молодой с воодушевлением твердил “Да, это правильно, я считаю, самому надо следить, с телефона вообще удобно будет!”. Мужчина постарше начал свою речь с “И зачем тебе это надо? Смотреть, как утекают твои деньги?”.
В итоге я все же подключился к счетчику своим проводом, а сотрудники опечатали счетчик и составили акт.
Диспетчеризация электросчетчика МЕРКУРИЙ по ETHERNET и WiFi
Счетчики Меркурий бывают с проводными интерфейсами RS485 или CAN, у них может быть организовано питание внутри счетчика, а может и отсутствовать. Прекрасным решением для опроса электросчетчиков с точки зрения экономичности и надежности, стало применение преобразователей последовательных портов в WiFi и Ethernet нашего производства, это модели USR-TCP232-3 04, USR-TCP232-410S, USR-DR302, USR-W610, USR-DR404
1. Рассмотрим виды и способы подключения интерфейсов в электросчетчиках МЕРКУРИЙ.
Использование Ethernet-CAN преобразователя USR-CANET200 (разъемы CAN1, CAN2) не обеспечит должного обмена данными из-за отсутствия протокольной поддержки CAN (в счетчике используется только физический уровень, а протокол свой), поэтому рекомендуем использовать для подключений всегда RS485 (схему согласования RS485/CAN из одного или трех резисторов http://incotex-counter.blogspot.ru/2011/03/can-rs485.html можно пробовать использовать в единичных случаях, гарантий на данное решение не даем.
Дальше рассмотрим специфику подключения электросчетчиков «Меркурий» различных моделей, эта информация будет являться ключевой при организации сбора данных и подключения преобразователей USR .
Меркурий-234 (содержит RS485 и питание интерфейса. Подключение основного RS485 на разъеме XT4, при наличии дополнительного RS485 на разъеме XS1
Меркурий-233 (может содержит до двух RS485, питание интерфейса внутреннее. Подключение основного RS485: 19 — (A) 17 — (B)
при наличии дополнительного RS485
27 — (A) 25 — (B)
Меркурий-206 Из производства на данный момент выходят счетчики только с RS485 и без внутреннего питания интерфейса, поэтому подключаемся так:
7 — (+5V)
8 — (A)
9 — (B)
10- (GND)
Меркурий-236 Содержит один RS485 с питанием интерфейса
15 — (A)
16 — (B)
Мерк урий-203 Содержит RS485 с питанием интерфейса
Меркурий-200 Содержит CAN, можно достичь подключения, инвертируется RS485 и используя схему http:/ /incotex-counter.blogspot.ru/2011/03/can-rs485.html плюс внешнее питании интерфейса. Эта схемотехника обычно работает в единичных случаях с короткими линиями связи.
Меркурий-230 может содержать RS485 (буква R), подключение ниже представлено. Если в обозначении присутствует буква S, то +5В подавать не нужно, оно есть уже внутри, а если нет этой буквы, то подавать питание обязательно.
или CAN (можно достичь подключения, инвертируя контакты А и В RS485 и используя схему http://incotex-counter.blogspot.ru/2011/03/can-rs485.html плюс внешнее питании интерфейса.
Эта схемотехника обычно работает на единичных счетчиках с короткими линиями связи и не рекомендована при крупных проектах и масштабных реализациях.
2. Настройки сетевых адресов компьютера и Ethernet / WiFi / RS485 адаптера
Перед работой надо настроить персональный компьютер, чтобы он был в одном адресном пространстве с преобразователем интерфейса. Для Ethernet устройства подключенного напрямую к ПК это делается через меню (Параметры – Ethernet – Настройка параметров адаптера), выбираем свой Ethernet правой кнопкой мыши – Свойства – IP версия 4- Свойства и вносим адрес из адресного пространства вашего устройства (у меня был преобразователь с адресом 192.168.0.7, а компьютеру я присвоил 192.168.0.10)
Подключаем преобразователь USR патчкордом к ПК, и входим в браузере по адресу 192.168.0.7 в меню SerialPort. Скорость обмена у всех счетчиков Меркурий по умолчанию с завода идет 9600, так что вписываем в BaudRate = 9600, Data Size = 8, Parity = None, Stop Bits = 1. В дальнейшем у Меркурий-234 и у Меркурий-236 можно будет изменить конфигуратором скорость до 115200, но однофазные счетчики Меркурий-200,203,206 и трехфазные старые Меркурий-230 работают только на скоростях до 9600 бод. В соединении на этой вкладке надо еще указать Work Mode = TCP Server и Local Port Number = 26 (можно выбрать другое не занятое значение).
Настройка USR-TCP232-304 или USR-DR302
Настройка USR-TCP232-410S
Скриншоты для модулей CANET200 и USR-W610 приведены в конце статьи, т.к. они отличаются от настроек преобразователей Ethernet. Если используете локальную сеть предприятия, то сисадмину надо зарезервировать для вас свободный адрес в сети и вписать в этой вкладке выделенный IP адрес и шлюз. На нашем скриншоте выставляем IP type = Static IP, Static Ip = 192.168.0.7 (или другой выделенный вашему устройству), Gateway = адрес головного шлюза. Адрес DNS можно оставить 208.67.222.222 или использовать свободные DNS сервера Google или Yandex.
3. Конфиугартор счетчиков Меркурий (можно использоваль TaskGroup или АСКУЭ)
Первым делом скачиваем конфигуратор http://baza-kip.narod.ru/files/Pub/konfigurator.rar
Далее распаковываем в любое место винчестера. Программа написана на основе COM-объектов браузера IE и не все антивирусы это научились понимать, поэтому при необходимости размещаем ее в белом списке разрешенных программ для запуска.
Конфигуратор при запуске будет являться клиентом, а преобразователи Ethernet/Wifi/RS485 сквозными серверами перемычками между локальной сетью и интерфейсом RS485 и нам остается выбрать несколько параметров для нашего соединения.
1. Тип счетчика 2. Сетевой адрес (если вы работаете с единственным счетчиком на магистрале RS485, то можно поставить 0, но если счетчиков несколько, то надо ввести правильный сетевой адрес). Для трехфазных счетчиков – сетевой адрес равен трем последним цифрам серийного номера (а если число больше 240, то двум цифрам), у однофазных М203,206 сетевой адрес равен серийному номеру, а у однофазных М200 сетевой адрес равен 6 последним цифрам серийного номера. 3. Тип интерфейса – TCP/IP 4. Для трехфазных счетчиков уровень доступа (User – 111111, Admin – 222222, галочка Hex) 5. Скорость обмена – 9600, четности нет, время ожидания ответа 200, системный таймаут 25, множитель 4 6. Нажимаем соединить
3. Нюансы
Протокол счетчиков таймаутный, поэтому счетчик, если будут задержки или разрывы между байтами может откидывать пакты как сбойные, поэтому все что мы описали это для идеальных условий работы. По факту если канал связи мегабитный, то проблем не будет.
У модуля USR-W610 и USR-DR404 адрес по умолчанию 10.10.100.254, настройки аналогичные
ПО оставшимся вопросам обращайтесь к нам по электронной почте sale@usr24.ru Применяйте качественное и надежное оборудование USR в своих проектах!
Интеграция счетчика Меркурий 200 в Home Assistant (Часть 2)
В предыдущей статье уже писал о своем опыте интеграции счетчика электроэнергии Меркурий 200.04 в систему умного дома Home assistant. В тот раз я собирался считать импульсы светодиода с помощью фоторезистора и посылать их в MQTT с помощью wi-fi модуля на чипе esp8266. В итоге у меня получилось добиться согласования и подключиться к интерфейсному разъему на самом счетчике. В этой статье расскажу о том, как я получаю информацию со счетчика по wi-fi.
Сразу скажу, что мой путь был весьма тернист и можно было сделать гораздо проще, но об этом я расскажу в конце статьи.
Так как мой сервер умного дома был достаточно удален от счетчика электроэнергии, а тянуть к нему провод не было ни желания, ни возможности я решил поискать вариант общения со счетчиком по wi-fi. К счастью, такие варианты есть, в том числе и фабричного изготовления, но они стоят слишком дорого, поэтому я пошел по пути DYI.
Заказал к имеющемуся модулю esp wemos d1 mini плату конвертер rs485 to uart.
Тут надо обратить внимание на саму плату. Может мне попался брак, но я нашел две ошибки.
- Во-первых, контакты TXD и RXD подписаны неправильно, т.е. перепутаны. В итоге мне пришлось подключать к esp следующим TXD — TX и RXD — RX, хотя обычно RX надо соединять с TX.
- Во-вторых, на другом конце платы есть пин A+ B- и нечто на китайском. Как подсказывает переводчик — это земля (для питания модуля телеметрии в самом счетчике), но не в моем случае, поэтому землю я взял также с esp.
Еще необходимо понимать, что в счетчике на самом деле не RS485, как я думал изначально, а CAN. Это разные протоколы, даже разного уровня, и есть опять-таки дорогие готовые модули CAN to RS485. Но я нашел один лайфхак. Не ручаюсь, что он работает со всеми счетчиками, но на Меркурий 200 эта схема точно рабочая. Нужно лишь поменять местами провода A и B и повесить параллельно им резистор 120 Ом.
Вот так получилось подключить резистор.
Схема подключения. Два резистора по 680 Ом не понадобились, все заработало так. Источник изображения: http://incotex-counter.blogspot.com/2011/03/can-rs485.html
Теперь совместимость счетчика с этой платой была обеспечена.
Далее подключаем телеметрическому выход к плате согласно схеме
Источник фото: https://www.incotexcom.ru/files/em/docs/merkuriy-200-avlg-411152-020-re-izm-3-2019-12-30.pdf
Плату подключаем к модулю ESP на пины RX и TX. Модуль телеметрии и плату rs 485 to uart я запитал на 5V с esp.
Макет установил в очередную распаечную коробочку и положил в слаботочный щит.
Теперь когда все подключено необходимо было определиться с прошивкой esp. В интернете нашел замечательный вариант в виде плагина для прошивки ESPeasy , который позволил бы передавать показания в MQTT, но он был предназначен для счетчика Меркурий 230, а протоколы обмена данными этих счетчиков отличаются.
Выход был найден в прошивке платы на ESPeasy и конфигурации виртуального порта ser2net
Таким образом, по ip адресу и порту 23 можно подключиться к счетчику с штатного конфигуратора для счетчиков меркурий и успешно считать информацию. Это уже был результат, но мне этого было недостаточно, т.к. необходимо было получать эти данные в моем умном доме на базе системы управления Home Assistant.
Читайте продолжение в следующей части.
Подписывайтесь на мой канал и страницу в инстаграм @smart.home53 , чтобы не пропустить обновления.
# умный дом # smart home # технологии # интернет вещей # сделай сам # iot # home assistant # diy # счетчик электроэнергии # потребление