OCPP (Open Charge Point Protocol) — открытый протокол обмена между зарядной станцией и платформой управления (CSMS). Разрабатывается Open Charge Alliance.

Смысл протокола — развязать оборудование и платформу. Станция, говорящая на OCPP, может работать с любой совместимой платформой, а оператор не оказывается запертым у одного производителя.

Версии

ВерсияТранспортСтатус
1.5SOAPУстарела
1.6SSOAPУстарела
1.6JJSON поверх WebSocketФактический стандарт отрасли
2.0JSON поверх WebSocketЗаменена на 2.0.1
2.0.1JSON поверх WebSocketАктуальная, распространение растёт
2.1JSON поверх WebSocketНовейшая

Буква в названии обозначает транспорт: J — JSON поверх WebSocket, S — SOAP. Сегодня осмысленно говорить только о 1.6J и 2.0.1; подробное сравнение — в статье OCPP 1.6 и 2.0.1: в чём разница.

Что умеет протокол

  • регистрация станции на платформе и обмен heartbeat;
  • авторизация пользователя перед сессией;
  • старт, ведение и завершение транзакции;
  • передача показаний счётчика;
  • сообщения о статусе и неисправностях;
  • удалённые команды: старт, стоп, разблокировка коннектора, перезагрузка;
  • обновление прошивки;
  • профили зарядки — ограничение мощности во времени;
  • в 2.0.1 — управление сертификатами, подписанные показания, мониторинг переменных.

Главная практическая оговорка

Поддержка OCPP не означает совместимость. Спецификация оставляет пространство для трактовок, а производители используют его по-разному: расходятся наборы реализованных сообщений, поведение при обрыве связи, вендорские расширения, формат кодов ошибок.

Отсюда правило: совместимость проверяется на стенде — конкретная модель с конкретной прошивкой против конкретной платформы. Заявления в спецификации на сайте производителя проверкой не являются. У Open Charge Alliance есть программа сертификации и инструмент тестирования соответствия — наличие сертификата снижает риск, но не отменяет проверку.

Смежные термины

  • CSMS — серверная сторона протокола
  • OCPI — протокол между платформами, а не станцией и платформой
  • Smart Charging — управление мощностью через профили зарядки