Этот проект позволяет подключить многоканальный счётчик WB‑MAP12E к ESP32 через интерфейс RS‑485 и интегрировать его в Home Assistant.
Результат: вы получаете подробный учёт энергии по тарифам, мониторинг напряжений, токов, мощностей и возможность тонкой настройки трансформаторов тока (CT). Данные сохраняются на esp32 и их можно в любой момент получить, даже если сам Home Assistant ляжет. Принцип - как обычные тарифные счетчики, где тарифы зашиты внутри - только тут мы можем все настроить.
Код на гитхабе
https://github.com/smirnowegor/ESP-WB/blob/main/espWB_MAP12E.yaml
1. Аппаратная часть
Для работы системы потребуется:
- ESP32‑S3 DevKitC‑1 (или аналогичная плата).
АЛИ https://ali.click/md2mkf?erid=2SDnjd1EJmd
- RS‑485 переходник с автоматическим переключением направления передачи (TX/RX) — необходим для корректной работы по полудуплексному RS‑485.
Али https://aliclick.shop/s/lhie57?erid=2SDnje9ih72
- Счётчик WB‑MAP12E.
- Трансформаторы тока (CT) номинала, указанного на корпусе.
Подключение:
- ESP32 ↔ WB‑MAP12E через RS-485:
- TX = GPIO17
- RX = GPIO18
- Параметры: 9600 бод, 8 бит данных, 2 стоп‑бита, без чётности (9600 8N2).
2. Что делает прошивка
- При старте (on_boot) публикуются сохранённые значения тарифных счётчиков, чтобы они не обнулялись.
- Через modbus_controller ESP32 опрашивает WB‑MAP12E и получает данные: токи, мощности, напряжения, коэффициенты трансформаторов.
- Через template sensors создаются отдельные счётчики для каждого тарифа (T1–T4).
- В on_value для каждого канала вызывается обработчик, который распределяет энергию по тарифам в зависимости от времени.
3. Сущности в Home Assistant
⚡ Учёт энергии по тарифам
- Channel X T1 (День)
- Channel X T2 (Ночь)
- Channel X T3 (Пик)
- Channel X T4 (Полупик)
👉 Эти сенсоры показывают накопленное потребление энергии по каждому тарифу.
Пример: если у вас двухтарифный учёт, то днём будет расти Channel 1 T1 (День), а ночью — Channel 1 T2 (Ночь).
🔌 Электрические параметры
- Urms L1/L2/L3 — напряжение по фазам.
- Frequency — частота сети.
- Irms — ток по каждой фазе.
- Active Power — активная мощность (по фазам и суммарно).
- PF — коэффициент мощности.
Пример: включили обогреватель 2 кВт на фазе L1:
- Ch1 L1 Active Power ≈ 2000 Вт
- Ch1 L1 Irms ≈ 9 А (при 220 В).
🕒 Тарифы
- Количество тарифов — 1, 2, 3 или 4.
- Начало Дня (T1), Начало Ночи (T2), Начало Пик (T3), Начало Полупик (T4) — время переключения.
- Текущий тариф — автоматически вычисляется.
Пример:
- День (T1) → 07:00
- Ночь (T2) → 23:00 👉 В 22:30 энергия идёт в T1, а в 23:30 — уже в T2.
🔧 Настройки трансформаторов тока (CT)
CT Ratio (коэффициент трансформации)
Смотрим число на самом трансформаторе.
Phase Select (привязка к фазе)
- Указывает, к какой фазе подключён трансформатор.
- Значения:
- 1 → L1
- 2 → L2
- 3 → L3
Пример: CT на канале 2 подключён к фазе L3 → Ch2 CT1 Phase Select = 3.
Invert (инверсия)
- Если CT установлен «наоборот», мощность будет отрицательной.
- Включите ChX CT Lx Invert.
Пример: включили нагрузку, а Active Power показывает –1500 Вт.
Включаем Invert → теперь +1500 Вт.
Phase Delay (фазовая задержка)
- Используется для компенсации фазового сдвига CT (угол между током и напряжением).
- Обычно оставляют 0.
- В документации WB‑MAP12E указано: для активной нагрузки угол должен быть в пределах ±40°. Если угол >100° — CT подключён к другой фазе или установлен неправильно.
Пример: если при включении лампы 1 кВт угол показывает 120°, значит CT сидит на проводе другой фазы. Исправьте Phase Select или направление CT.
4. Пошаговая настройка
- Подключите CT к фазам.
- Введите в CT Ratio номинал с корпуса трансформатора.
- Пример: трансформатор 200/5А → вводим 200.
- В Phase Select укажите фазу, к которой подключён трансформатор.
- Пример: CT на фазе L3 → вводим 3.
- Включите нагрузку и проверьте Active Power.
- Пример: чайник 2 кВт → должно быть около 2000 Вт.
- Если отрицательное значение → включите Invert.
- Сравните ток (Irms) с токовыми клещами.
- Пример: клещи показывают 9.1 А, а сенсор — 9.0 А → всё верно.
- Настройте тарифы и убедитесь, что счётчики (Channel X Tn) увеличиваются в нужное время суток.
5. Проверка правильности
- Active Power должна быть положительной.
- PF близок к 1 для активных нагрузок.
- Угол между током и напряжением для активной нагрузки в пределах ±40°.
- Тарифные счётчики увеличиваются в правильные интервалы времени.
6. Шпаргалка по параметрам
- Channel X T1/T2/T3/T4 → накопленные значения энергии по тарифам.
- Количество тарифов → выберите 1, 2 или 3/4.
- Начало Дня/Ночи/Пика/Полупика → задайте время переключения зон.
- Текущий тариф → автоматически вычисляется.
- Urms L1/L2/L3 → напряжение по фазам.
- Frequency → частота сети.
- Irms L1/L2/L3 → ток по фазам.
- Active Power → активная мощность (должна быть положительной).
- PF → коэффициент мощности (диагностика).
- CT Ratio → номинал с корпуса трансформатора (100, 200, 400 и т.д.).
- CT Phase Select → укажите фазу (1=L1, 2=L2, 3=L3).
- CT Invert → включите, если мощность отрицательная.
- CT Phase Delay → фазовая коррекция (обычно 0).
- ChX Total AP Energy → суммарная энергия по каналу.
- WB-MAP12E FW MAJOR → версия прошивки счётчика.
- MAP12E Uptime → время работы устройства.
Заключение
Теперь у вас есть полный набор инструментов для настройки WB‑MAP12E через ESPHome.
Главное правило: всегда сверяйтесь с маркировкой CT и проверяйте показания на активной нагрузке. Если мощность отрицательная — используйте Invert, если угол слишком большой — проверьте Phase Select. После настройки система будет автоматически вести учёт энергии по каналам и тарифам, а данные будут доступны в Home Assistant для графиков, автоматизаций и отчётов.
Способ 1 Поддержать автора
Способ 2 https://donate.stream/yoomoney410013774736621
Способ 3 телеграм https://t.me/tribute/app?startapp=dvHM
или через криптокошелёк (Только USDT) TCHekdJZFndXpDrHZGuTmqFNcqhWBTTzPr
Связаться со мной. (Консультации, проектирование и обучение)
Новый подход к электрике и дизайну помещений. Некоторые провода уже не нужно тянуть, какие-то решения можно принять после ремонта. Перенести выключатель, запустить кондиционер с телефона - возможно автоматизировать любую рутину.
Мой телеграм канал, там все быстрее обновляется телеграм.
Сайт smart4home.ru и альтернативный Умный дом на любом этапе
Соц сети: RuTube канал Удобный дом / You Tube канал Удобный дом Яндекс Дзен: Удобный дом / InGram
Платформы специалистов: Авито / Профи.ру / Яндекс Услуги https://uslugi.yandex.ru/profile/EgorSmirnov-2294380?from=telek
Реклама. ООО "АЛИБАБА.КОМ (РУ)", ИНН 7703380158 / Реклама. ООО «ЯНДЕКС», ИНН 7736207543