在电动汽车 (ev) 世界中,电动汽车驾驶员最神奇的体验之一就是在移动应用程序上点击“开始”并看到充电器开始工作。
但是这个魔法是如何发生的呢?
让我们深入了解电动汽车充电器和移动应用程序如何通信的幕后旅程。
这些玩家之间的通信遵循名为ocpp(开放充电点协议)的标准化协议。具体来说,大多数系统都使用 基于 websocket 的 ocpp,这可确保实时、可靠的通信。

当用户点击“开始”按钮时,该过程开始。后端服务器准备一个 remotestarttransaction 命令,其中包含以下详细信息:
{
"connectorid": 1,
"idtag": "remote-11902",
"chargingprofile": {
"transactionid": 11902,
"chargingprofileid": 1,
"stacklevel": 1,
"chargingprofilepurpose": "txprofile",
"chargingprofilekind": "relative",
"chargingschedule": {
"chargingrateunit": "a",
"chargingscheduleperiod": [ ... ]
}
}
}
此命令通过后端使用 rpc 调用发送到充电器:
await client.call( 'remotestarttransaction', remotestarttransactionbody );
充电器通过响应确认命令:
{"status": "accepted"}
这表明充电器已准备好开始交易。
当充电器完全准备好后,它会向后端发送starttransaction消息:
{
"connectorid": 1,
"idtag": "remote-11902",
"meterstart": 0,
"timestamp": "2025-01-15t02:09:54.000z"
}
在整个充电过程中,充电器会定期发送metervalues更新,其中包括电压、电流和传递的能量等指标。这些更新可以配置为每 30 秒或以不同的时间间隔进行:
{
"connectorid": 1,
"transactionid": 11902,
"metervalue": [
{
"timestamp": "2025-01-15t02:09:54.000z",
"sampledvalue": [
{ "value": "241.10", "measurand": "voltage", "unit": "v" },
{ "value": "0.00", "measurand": "current.import", "unit": "a" },
{ "value": "0", "measurand": "power.active.import", "unit": "w" },
{ "value": "32", "measurand": "current.offered", "unit": "a" }
]
}
]
}
当用户点击“停止”时,后端会向充电器发送remotestoptransaction命令:
await client.call(
'remotestoptransaction',
{ transactionid: 11902 }
);
充电器确认:
{"status": "accepted"}
完成关闭后,充电器会发送一条stoptransaction消息,其中包含传输的总能量等详细信息:
{
"idTag": "remote-11902",
"timestamp": "2025-01-15T02:40:49",
"meterStop": 6379,
"reason": "EVDisconnected",
"transactionId": 11902,
"transactionData": [
{
"timestamp": "2025-01-15T02:40:49",
"sampledValue": [
{ "value": "6379.259277", "measurand": "Energy.Active.Import.Register", "unit": "Wh" }
]
}
]
}
就像汽油泵可能有不同的柴油或汽油喷嘴一样,电动汽车充电器可以有多个连接器。常见类型包括:
每个连接器独立运行,允许一个充电器为多辆车提供服务。

ocpp(开放充电点协议)是一种开放式通信标准,专为电动汽车(ev)充电站(充电点)和中央管理系统(通常称为后端系统或充电点管理系统)之间的交互而设计。
它实现了不同制造商和软件提供商的充电基础设施之间的互操作性。
ocpp 定义了充电点和中央系统之间的消息结构和通信协议。例如:
ocpp 由开放收费联盟 (oca) 管理,该联盟持续开发和推广该协议。
每次您从应用程序开始或停止充电时,一系列精确的实时消息都会在您的应用程序、后端和充电器之间流动。
ocpp 协议使这一切成为可能,确保不同制造商的充电器和应用程序可以无缝协作。
所以,下次您插入电动汽车并点击“开始”时,您就会更多地了解幕后的魔力!
我一直在开发一个超级方便的工具,叫做 liveapi。
它旨在让开发人员轻松编写 api 文档。
使用liveapi,您可以快速生成交互式api文档,允许用户直接从浏览器执行api。

如果您厌倦了为 api 手动创建文档,这个工具可能会让您的生活变得更轻松。

以上就是开发人员如何使电动汽车充电器能够与移动应用程序通信的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号