Зарядка EV · Easee · Wallbox · OCPP 1.6J · KNX · 10 мин чтения

Интеграция 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Триггер авторизации RFIDDPT 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, логикой самопотребления от солнечных панелей и полной документацией по пусконаладке — поставляем проверенными и протестированными на вашем объекте.

Запросить расчёт →
Загрузка ...
Наверх