EV充電の課題
電気自動車(EV)の普及が進む中で、EV充電インフラの整備は社会的にも急務となっています。
しかし、充電器や充電管理システムがメーカーごとに仕様が異なる状況では、ユーザーにとっての利便性は損なわれ、インフラの拡張やサービスの相互運用性にも大きな障害が生じます。

通信仕様標準化のためのプロトコル:OCPP
このような課題を解決するために生まれたのがOCPP(Open Charge Point Protocol)です。
OCPPとは、充電器と充電管理システム(CMS)との間の通信仕様を標準化するプロトコルです。
OCPPは異なるメーカー間でも機器の互換性やシステム連携を可能にする業界標準として、世界中で広く採用が進んでいます。
OCPPに準拠することは、将来の拡張性・相互接続性・保守運用コスト削減といった観点からも、今後のEV充電インフラにおいて必須要件となりつつあります。

OCPPのメリット
汎用的な通信機器やネットワークで運用可能
専用の通信機器が不要のため、機器の選定や設置が容易になり、導入コストを削減。
充電器の遠隔制御が可能
充電の開始・停止、エラー復旧、ファームウェアの更新などを遠隔で実施可能。
現地対応の手間を削減し、保守運用の効率が向上します。
一元的な充電ステーション管理が実現
複数メーカーの充電器でも一つの管理システム(CMS)で統合管理が可能。
設置場所ごとの稼働状況や利用履歴、障害情報などを一元管理できます。
開発実績:MicroOcpp Protocol on RA6

オープンソースプロジェクトMicroOcppを使用して、ルネサスエレクトロニクス製RA6M5上で OCPP(v2.0.1)プロトコルの動作を実現しました。
これにより、充電スタンド(Charge Point)として、充電サービスプロバイダ(Central System)とコミュニケーションを行えます。
LinuxベースのオープンソースOCPPサーバであるCitrineOSをCentral Systemとして用いて、充電処理などの基礎的な動作が可能です。
- CitrineOS 等の Central System による Charge Point (MicroOcpp) の接続と認識 (OCPP 2.0.1 over TLS)
- Charge Point をトリガとする 一連の 充電トランザクション処理


通信速度
| BootNotification.res -> StatusNotification.req | 46ms |
リソース
| ROM | RAM | |
|---|---|---|
| MicroOcpp | 365KiB | 5KiB |
| Mbed TLS | 198KiB | 9KiB |
| wslay | 5KiB | 0KiB |
| Renesas関連 (FreeRTOS等・ヒープ等含む) | 209KiB | 151KiB |
| 計 | 約777KiB | 約165KiB |
ビルド環境
| e² studio (2023-10 (23.10.0)) + fsp(5.1.0) |
| Install Package (setup_fsp_v5_1_0_e2s_v2023-10.exe) |
ビルド条件
| ビルドモード | リリースモード |
| コンパイラ最適化 | -O2 |
| ToolChain | Arm GNU Toolchain 12.2.MPACBTI-Rel1 (Build arm-12-mpacbti.34) |
使用ハードウェア
| RA6M5 MCUグループ評価キット |
使用ミドルウェア
| MicroOcpp v1.2.0 (MIT License) |
| wslay v1.1.1 (MIT License) |
| ArduinoJson v7.1.1 (MIT License) |
| Mbedtls v3.6.2 (Dual license) |
| FreeRTOS plus TCP 4.0.0 + fsp.5.1.0 |
| FreeRTOS 10.6.1 + fsp.5.1.0 |
