Перейти к содержимому

Содержание | Далее: ChangeLog →

ACRouter — Открытый контроллер солнечного роутера

Интеллектуальный AC-роутер мощности для управления солнечной энергией

OverviewHow It WorksВозможностиЖелезоРежимыБыстрый старт

Platform Framework Лицензия Status


Что такое ACRouter?

ACRouter is an open-source controller that automatically redirects excess solar energy to resistive loads (like water heaters) via smooth phase-angle dimming — instead of exporting it to the grid. It maximizes self-consumption of your solar power and reduces electricity costs.

Зачем ACRouter?

Проблема Решение
Excess solar exported to the grid at low rates Перенаправить на нагрев воды или другие нагрузки
Expensive battery storage Использовать тепловое накопление (водонагреватель)
Сложные коммерческие решения Простое, открытое, дружественное DIY-решение
Фиксированное включение/выключение тратит энергию впустую Плавное фазовое управление для точного регулирования

Типичное поведение сетевой PV-системы с нагрузкой в виде водонагревателя за сутки.

Параметр Без ACRouter С ACRouter
Дневной экспорт солнечной энергии Высокий Низкий
Коэффициент самопотребления ~40–50% ~70–85%
Источник нагрева воды Сеть (вечером/ночью) Солнечный избыток (днём)
Аккумуляторы необходимы Да (для хранения) Нет
Energy exported/wasted Значительные Минимальные
Общие затраты на электроэнергию Выше Lower (up to ~30% less)

Figures are typical estimates and vary with your installation (PV size, load, tariffs, and usage).


How It Works

A v2.0 system is an ESP32-family host plus smart I2C modules:

plaintext
rbAmp (I2C)  ──▶  sensor_hub  ──▶  RouterController  ──▶  DimmerLink (I2C)  ──▶  load
  measures grid    merges the       decides how much     phase-cut output       (heater)
  (+ solar/load)   sources          to divert (grid→0)    (dimmer id 4)

The rbAmp module measures grid power (and optionally solar/load), the RouterController runs a ~5 Hz balancing loop, and the DimmerLink module drives the load — raising or lowering it so the grid exchange trends to zero. All the surplus is consumed locally instead of exported.


Возможности

  • Smart measurement (rbAmp). Clamp-on CT current + line voltage over I2C; self-calibrating, no ADC tuning. Grid / solar / load channels.
  • Smart dimming (DimmerLink). Phase-angle 0–100% on a dedicated controller; zero-cross handled in the module.
  • Seven operating modes for grid-tied, export-protection, off-grid, and manual scenarios.
  • External web app — capability-aware UI (the device redirects to it).
  • REST API + WebSocket, MQTT + Home Assistant auto-discovery, OTA (ESP32 tier).
  • Two targets — ESP32 (full) and low-cost ESP32-C2, with capability-aware feature gating.
  • Configurable & persistent — settings in NVS; configure via web app, REST, MQTT, or serial.
  • Open source.

Железо

ACRouter v2.0 uses a modular architecture: an ESP32 or ESP32-C2 host plus rbAmp (measurement) and DimmerLink (dimmer) modules sharing one I2C bus.

Part Role
ESP32 / ESP32-C2 host Runs the firmware, control loop, connectivity
rbAmp Grid/solar/load current + line voltage sensing (clamp-on CT)
DimmerLink Phase-cut dimmer driving the resistive load

Minimum build: one host + one rbAmp (with a grid channel) + one DimmerLink. Wiring, addresses, CT models, and pull-ups are covered in the Hardware Guide.

ACRouter is designed to work with modules from rbdimmer.com and open-source DIY hardware.


Режимы работы

Режим Behavior Лучше всего подходит
OFF Dimmer at 0%, no regulation Обслуживание
AUTO Balances P_grid → 0 (consumes all surplus) ⭐ Стандартный солнечный роутер
ECO Avoids grid import; allows export Export OK, avoid paid import
OFFGRID Runs only on solar; ignores grid Автономные системы
MANUAL Fixed user level Testing / scheduling
BOOST 100% output Fast heating (cheap tariff)
GRID_LIMIT Caps grid draw by current (no export) Stay under a supply limit

See Router Modes .


Быстрый старт

  1. Flash the firmware for your target/profile (ESP32, C2-HTTP, or C2-MQTT) — see Compilation.
  2. Wire the rbAmp and DimmerLink modules to the host's I2C bus (with pull-ups) — see the Hardware Guide.
  3. Power on and connect WiFi, then set the external web-app URL and open the app.
  4. Commission (in the app or over REST): discover modules (rescan) → assign roles (rbAmp grid channel + CT model; DimmerLink role=dimmer → auto-binds to dimmer id 4).
  5. Reboot once — this starts the DimmerLink polling (and applies any I2C-pin change). Roles are saved live, but the first dimmer needs this one-time reboot before it drives the load.
  6. Выберите режим AUTO и начните экономить энергию!

The full walkthrough is in the Commissioning guide.


Документация

Документ Описание
📖 Overview Architecture & features
🔧 Hardware Guide Modules, wiring, I2C
⚙️ Compilation Targets, profiles, build & flash
🎮 Router Modes Mode details
🌐 Web API REST endpoints
🏠 Home Assistant MQTT integration

Safety

⚠️ This project involves mains voltage (110 V / 230 V AC).

  • Installation by a qualified electrician; de-energize before wiring.
  • Proper isolation, fusing, and RCD/GFCI protection; keep low-voltage I2C wiring away from mains.
  • Resistive loads only (heating elements) — not motors, transformers, LED drivers, or electronics.

Чем ACRouter не является

  • Not a battery inverter · not a smart plug/relay controller · not a certified grid-protection device · not for inductive or electronic loads.

Участие

Contributions welcome — report bugs, suggest features, improve docs, or submit code via pull request on GitHub.


Лицензия

ACRouter — программное обеспечение с открытым исходным кодом. Подробности см. в LICENSE .


Благодарности

  • rbAmp / DimmerLink — smart sensing & dimmer modules (rbdimmer.com)
  • ESP-IDF — Espressif IoT Development Framework
  • ArduinoJson — библиотека JSON для встроенных систем
  • Сообщество — участники и тестировщики

Создано с ⚡ для сообщества солнечной энергетики

⭐ Поставьте звезду проекту🐛 Сообщить об ошибке💬 Обсудить

Содержание | Далее: ChangeLog →