Интеграция Easee Home и Wallbox Pulsar с KNX через шлюз OCPP 1.6J
Подключение зарядных станций Easee Home и Wallbox Pulsar Plus к KNX через центральную систему OCPP 1.6J позволяет автоматизации здания управлять током зарядки, отслеживать энергию сессии, запускать RFID-авторизацию по сцене KNX и реализовать зарядку от солнечных панелей — всё через стандартные групповые адреса KNX.
Обзор OCPP 1.6J и настройка локального режима
OCPP (Open Charge Point Protocol) 1.6J — это протокол на базе WebSocket, который разделяет зарядную станцию (оборудование) и систему управления зарядными станциями (CPMS, также называемую центральной системой). Easee Home и Wallbox Pulsar Plus поддерживают OCPP 1.6J нативно, что позволяет любой совместимой центральной системе — облачной или локальной — управлять ими и получать данные.
Для интеграции с KNX наиболее надёжный подход — использовать локальную центральную систему OCPP вместо облака производителя, что устраняет зависимость от облака и обеспечивает задержку менее секунды для команд управления. Home Assistant с дополнением OCPP или IP-Symcon с модулем OCPP — два практичных варианта локальной центральной системы, которые также предоставляют мосты групповых адресов к KNX.
Easee Home — включение локального режима OCPP
1. Open Easee app → select charger → Settings → Advanced Scroll to OCPP — select "Custom OCPP server" 2. Enter local OCPP WebSocket URL: ws://<home-assistant-ip>:9000/Easee01 (port 9000 is HA OCPP add-on default; /Easee01 = charger ID) 3. OCPP version: OCPP 1.6J (select from dropdown) Authentication: leave blank for local unauthenticated setup or set a shared secret if HA OCPP requires it 4. Save — charger will attempt WebSocket connection within 30s HA OCPP add-on log: "New charge point connected: Easee01" Note: Easee also supports cloud OCPP via api.easee.cloud Use local mode for KNX integration — removes cloud dependency
Wallbox Pulsar Plus — включение локального режима OCPP
1. Open myWallbox app → charger settings → Smart charging
Select OCPP → Custom OCPP server
2. OCPP URL: ws://<home-assistant-ip>:9000/WallboxPulsar01
OCPP version: OCPP 1.6J
Charge point ID: WallboxPulsar01
3. Alternatively via Wallbox local REST API:
POST http://<wallbox-ip>/api/2/ocpp/setConfig
{"ocppServer": "ws://<ha-ip>:9000/WallboxPulsar01"}
4. Verify: HA OCPP logs confirm "WallboxPulsar01 connected"
Status should show: Available (no EV plugged in)Схема групповых адресов KNX для управления зарядной станцией
Структура групповых адресов KNX связывает параметры OCPP с типами данных KNX. Интеграция KNX в Home Assistant (библиотека XKNX) читает и записывает эти GA, преобразуя значения DPT KNX в сообщения протокола OCPP. Каждая зарядная станция в многозарядной установке получает свой набор GA в выделенной подгруппе.
| Групповой адрес | Описание | DPT | Направление |
|---|---|---|---|
| 10/0/0 | Уставка тока заряда 0–32 А | DPT 5.001 (1-байт %) | KNX → OCPP (запись) |
| 10/0/1 | Зарядное устройство активно / включено | DPT 1.001 (1-бит) | KNX → OCPP (запись) |
| 10/0/2 | Энергия сеанса зарядки, кВт·ч | DPT 13.013 (4-байта со знаком, кВт·ч) | OCPP → KNX (чтение) |
| 10/0/3 | Статус подключения вилки | DPT 1.001 (1-бит) | OCPP → KNX (чтение) |
| 10/0/4 | Статус зарядного устройства (0=доступно, 1=зарядка, 2=ошибка) | DPT 5.010 (1-байт, перечисление) | OCPP → KNX (чтение) |
| 10/0/5 | Триггер авторизации RFID | DPT 1.001 (1-бит, фронт) | KNX → OCPP (запись) |
DPT 5.001 для тока заряда: 1-байтный процентный DPT кодирует 0–100% как 0–255. Значение 50% (128) соответствует 16А на зарядном устройстве 32А. Для Easee Home (макс. 16А) сопоставьте 0–100% с 0–16А в автоматизации Home Assistant. Для Wallbox Pulsar Plus 3-фазного (макс. 32А) сопоставьте 0–100% с 0–32А. Альтернативно используйте DPT 5.010 беззнаковый байт и сопоставьте 0–32 напрямую с амперами.
Конфигурация моста Home Assistant OCPP в KNX
Home Assistant выступает в роли центральной системы OCPP и одновременно шлюза KNX IP. Дополнение интеграции OCPP в HA создаёт объекты для каждого зарядного устройства, а автоматизации HA преобразуют записи групповых адресов KNX в команды OCPP и обратно.
HA configuration.yaml — объекты KNX для зарядного устройства EV
# configuration.yaml
knx:
sensor:
- name: "EV Charger 1 Current Setpoint"
state_address: "10/0/0"
type: "percent" # DPT 5.001
binary_sensor:
- name: "EV Charger 1 Enable"
state_address: "10/0/1"
- name: "EV Charger 1 Plug Connected"
state_address: "10/0/3"
number:
- name: "EV Charger 1 Current Control"
address: "10/0/0"
min: 0
max: 100
type: "percent"
switch:
- name: "EV Charger 1 Active"
address: "10/0/1"
state_address: "10/0/1"
# automation.yaml — KNX GA write → OCPP SetChargingProfile
automation:
- alias: "EV Charger 1 — KNX current setpoint to OCPP"
trigger:
- platform: state
entity_id: sensor.ev_charger_1_current_setpoint
action:
- service: ocpp.set_max_charge_rate_amps
data:
charge_point_id: "Easee01"
charge_rate: >
{{ (trigger.to_state.state | float) * 0.16 | round(0) }}Автоматизация HA — избыток ФЭП → OCPP SetChargingProfile
# Triggered when KNX solar surplus GA (9/0/1) updates
automation:
- alias: "EV Solar Self-Consumption — Surplus to Charge Current"
trigger:
- platform: state
entity_id: sensor.knx_solar_surplus_w
condition:
- condition: state
entity_id: binary_sensor.ev_charger_1_plug_connected
state: "on"
action:
- choose:
- conditions:
- condition: numeric_state
entity_id: sensor.knx_solar_surplus_w
above: 2500
sequence:
- service: ocpp.set_max_charge_rate_amps
data:
charge_point_id: "Easee01"
charge_rate: >
{{ [[(states('sensor.knx_solar_surplus_w')|float / 230)|round(0), 6]|max, 16]|min }}
- conditions:
- condition: numeric_state
entity_id: sensor.knx_solar_surplus_w
below: 1400
sequence:
- service: ocpp.stop_transaction
data:
charge_point_id: "Easee01"Модуль OCPP для IP-Symcon как альтернативная центральная система
IP-Symcon (IPS) — платформа умного дома под Windows/Linux с нативной поддержкой KNX и модулем OCPP, доступным в маркетплейсе IPS. Для установок, где IPS уже используется для логики и визуализации KNX, модуль OCPP позволяет избежать внедрения отдельного сервера Home Assistant.
Конфигурация IP-Symcon OCPP + KNX
1. Install IPS OCPP module from marketplace
Create OCPP Central System instance:
Port: 9000 (WebSocket server, IPS listens)
Charge Point ID: Easee01
2. IPS OCPP variables auto-created per charger:
MaxChargingCurrent (0–32A integer)
ChargerStatus (string: Available/Charging/Faulted)
SessionEnergyWh (float)
PlugConnected (boolean)
3. Link IPS OCPP variables to KNX via IPS KNX module:
KNX device → Group Address 10/0/0 → link to MaxChargingCurrent
KNX device → GA 10/0/2 → link to SessionEnergyWh (send on change)
4. IPS script for solar surplus → charge current:
$surplus = GetValue(12345); // KNX GA 9/0/1 variable ID
$current = max(6, min(16, round($surplus / 230)));
if ($surplus > 2500) {
SetValue(OCPP_MaxCurrent_ID, $current);
} elseif ($surplus < 1400) {
OCPP_StopTransaction("Easee01");
}Последовательность зарядки с собственным потреблением от ФЭП
Последовательность зарядки с собственным потреблением описывает полный контур управления от обнаружения избытка солнечной энергии через KNX до регулировки тока OCPP — включая логику гистерезиса, предотвращающую частые переключения при колебаниях генерации около минимального порога.
Последовательность зарядки с собственным потреблением от ФЭП
1. KNX GA 9/0/1 (Grid Power, signed W) published by
Intesis IN701KNX gateway reading Fronius Modbus register 40225
Poll interval: 10 seconds
2. KNX logic (MDT Logic Module or HA automation) evaluates:
IF Grid Power < −2500W (exporting > 2.5 kW):
→ Calculate OCPP current: surplus_W ÷ 230V
→ Clamp: max(6, min(16, calculated_A)) for Easee Home
→ Write clamped value to GA 10/0/0 (charge current)
→ HA/IPS translates GA write → OCPP SetChargingProfile
3. OCPP SetChargingProfile message:
{
"connectorId": 1,
"csChargingProfiles": {
"chargingProfileKind": "TxProfile",
"chargingSchedule": {
"chargingRateUnit": "A",
"chargingSchedulePeriod": [{"startPeriod": 0, "limit": <amps>}]
}
}
}
4. Charger applies new limit within 5–10 seconds
KNX GA 10/0/2 (Session Energy kWh) updates every 60s
5. IF Grid Power > −1400W (surplus dropped below 1.4 kW):
→ Wait 120 seconds (hysteresis — solar cloud pass-through)
→ IF still < 1400W → OCPP StopTransaction
→ Charger status: Suspended / AvailableТриггер авторизации RFID от сцены KNX
Стандартная зарядка по протоколу OCPP требует от водителя предъявить RFID-карту или использовать приложение для авторизации сессии. В жилых KNX-инсталляциях, где владелец хочет запустить зарядку от настенной KNX-кнопки или по расписанию, авторизация RFID, инициированная KNX, может начать сессию без физического предъявления карты.
KNX сцена → RFID авторизация OCPP последовательность
KNX push button (Scene 5 = "EV Start Charging"):
→ GA 10/0/5 (RFID authorize trigger) → DPT 1.001 value 1
HA automation triggered by GA 10/0/5:
- service: ocpp.authorize
data:
charge_point_id: "Easee01"
id_tag: "HOME_RESIDENT_01" # pre-authorized RFID tag
OCPP Authorize.req sends idTag to Central System (HA OCPP)
HA OCPP returns: Authorize.conf { "idTagInfo": { "status": "Accepted" }}
Charger begins transaction: StartTransaction.req sent to HA
KNX scene "EV Stop Charging":
→ GA 10/0/1 (charger active) → DPT 1.001 value 0
→ HA automation: ocpp.stop_transaction charge_point_id=Easee01
Use case: time-of-use tariff schedule — IPS script runs at
23:00 → writes 1 to GA 10/0/5 → starts cheap overnight charge
07:00 → writes 0 to GA 10/0/1 → stops transaction before peakПримечание по безопасности: подход с предварительно авторизованным idTag обходит физическую RFID-аутентификацию. Используйте это только в жилых или частных помещениях, где владелец здания контролирует как KNX-систему, так и зарядное устройство. Для коммерческих многопользовательских установок сохраняйте физическое предъявление RFID-карты для каждой сессии, чтобы обеспечить аудиторский след и точность биллинга.
Пусконаладочный тест с ETS6 Group Monitor
Последовательность пусконаладки проверяет полный путь от подключения разъема EV через центральную систему OCPP до обновления KNX группового адреса, подтверждая, что логика самопотребления и управление током работают от начала до конца перед сдачей объекта.
Последовательность пусконаладочного теста
Step 1 — OCPP connectivity verification: Open HA OCPP add-on log Confirm: "Easee01 connected via OCPP 1.6J WebSocket" Charger LED: solid green (available, not charging) Step 2 — Plug connected status KNX update: Plug test EV cable into Easee Home socket ETS6 Group Monitor → watch GA 10/0/3 Expected: value changes to 1 (true) within 5 seconds Charger status GA 10/0/4 → should read 1 (charging prep) Step 3 — Manual current setpoint test: ETS6 Group Monitor → write value 50 to GA 10/0/0 (50% = 8A) Verify: HA log shows OCPP SetChargingProfile 8A sent Verify: Easee app shows "Charging at 8A" Write 100 to GA 10/0/0 → confirm Easee shows 16A Step 4 — PV surplus simulation: ETS6 Group Monitor → write −4000 to GA 9/0/1 (simulate 4kW export) Confirm: HA automation fires → OCPP current = 4000÷230 = 17A → clamped to 16A GA 10/0/0 should update to reflect new current Step 5 — Session energy readback: After 2 minutes of active charging GA 10/0/2 should show non-zero kWh value Compare with Easee app session energy reading Step 6 — RFID trigger from KNX: ETS6 → write 1 to GA 10/0/5 Confirm: HA log "Authorize.req idTag HOME_RESIDENT_01 → Accepted" Charger starts transaction
Поведение при переподключении WebSocket
Если сервер HA перезапускается, Easee автоматически переподключается к центральной системе OCPP в течение 30 секунд. В окно переподключения зарядное устройство продолжает зарядку на последнем установленном OCPP пределе тока — оно не снижается до минимума. Проверьте восстановление подключения, перезапустив HA и убедившись, что статус зарядного устройства обновляется в течение 60 секунд.
Отличия Wallbox Pulsar Plus
Wallbox Pulsar Plus использует те же команды OCPP 1.6J, но формат идентификатора зарядного устройства в URL WebSocket по умолчанию использует суффикс серийного номера. Подтвердите ID зарядного устройства в настройках приложения myWallbox перед настройкой HA OCPP. Минимальный принимаемый ток Wallbox OCPP составляет 6A для однофазных и 8A для трехфазных вариантов.
Нужен щит для зарядки EV с интеграцией KNX OCPP под ваш проект?
Мы проектируем слаботочные щиты с интеграцией Easee или Wallbox OCPP, настройкой шлюза HA KNX, логикой самопотребления от солнечных панелей и полной документацией по пусконаладке — поставляем проверенными и протестированными на вашем объекте.
Запросить расчёт →