人们经常将 REST API、MQTT、仪表盘和 OCPP 相提并论,好像它们都做同样的工作。事实并非如此。这就是许多电动汽车充电桩控制混乱的起源。
简单的思维模型是这样的:
- OCPP = 充电桩到平台的基础
- 仪表盘/应用/Web 门户 = 面向人的控制层
- REST API = 软件和集成层
- MQTT = 针对更具体高级用例的事件驱动消息层
一旦你将这些层分开,决策就变得容易多了。
从 OCPP 作为基础开始
如果你的充电桩支持 OCPP,那通常应该是你的起点。OCPP 是保持充电桩层开放和可互操作的部分。它是将充电桩连接到中央系统的部分,不一定是你的安装商或软件团队日常使用的东西。
这也是为什么 OCPP 与仪表盘、REST API 或 MQTT 不在同一个类别中。它位于它们的下面。
如果灵活性很重要,从一个基于 OCPP 的设置开始,让你能够管理任何 OCPP 充电桩,而无需每次硬件更换都重新构建一切。如果你团队中有人仍然混淆协议和后台,这篇关于 OCPP 后台的说明涵盖了基础知识。
什么时候仪表盘就够了
许多电动汽车充电桩控制仍然是人工操作,这完全没问题。
如果工作流程是"有人登录,检查充电桩,更改设置,也许导出数据",仪表盘通常就是正确答案。一个好的 Web 门户不是真实系统的玩具版本。对于许多安装商、运营商和支持团队来说,它就是真实系统。
这对以下情况尤其如此:
- 想要启动/停止控制、计划、光伏均衡和会话历史的房主
- 需要可见性、日志和快速干预的安装商
- 处理固件、设置和远程状态的支持团队
- 想要充电桩远程控制和电动汽车充电桩监控而无需构建内部工具的小型运营商
对于日常使用,电动汽车充电应用或门户通常是最明智的选择。如果你的团队工作在运维、故障代码和支持任务中,关于安装商工作流程和诊断的材料展示了为什么仪表盘优先通常恰好是正确的。
什么时候 REST API 是正确的下一步
当另一个系统需要读取充电桩数据或触发操作时,你就进入了电动汽车充电 API 的领域。
这可能意味着:
- 一个根据太阳能产出做出反应的智能家居流程
- 一个需要充电桩状态和控制的 EMS 或 BEMS
- 一个想要会话数据的 ERP 或租户平台
- 你自己的应用、白标产品或内部运维工具
- 跨站点、用户或充电策略的自动化
这是 REST API 通常比直接跳到 MQTT 更好的地方。对于大多数团队来说,REST 更容易理解、更容易文档化、更容易设置权限、更容易测试、更容易交付。
如果真正的需求是"读取数据并偶尔发送命令",REST 通常是更干净的答案。
这就是 Plugchoice Developers 变得相关的地方。目标不是替代 OCPP。目标是通过实用的软件层控制 OCPP 连接的充电桩。如果你想在做出承诺之前看到实现方面,开发者文档是正确的起点。
什么时候 MQTT 真正有意义
MQTT 不是虚假价值。它只是不是每个电动汽车充电项目的默认答案。
当你真正需要事件驱动架构时它才有意义:轻量级发布/订阅、遥测扇出、解耦消费者,或多个系统需要近实时响应充电桩事件的物联网密集型模式。在这些情况下,MQTT 可以很好地适合高级集成。
但许多团队要求 MQTT 是因为它听起来很技术化,而不是因为他们的用例真的需要它。然后他们继承了消息代理设置、主题设计、订阅者生命周期、调试复杂性和事件排序问题,只是为了解决一个 REST API 本可以更简单处理的问题。
一个有用的经验法则:
- 如果主要是人在操作充电桩,使用仪表盘
- 如果主要是软件在操作充电桩,从 REST API 开始
- 如果多个系统真正需要发布/订阅事件流,MQTT 可能值得考虑
常见错误:架构表演
这种情况经常发生。
一个房主认为他们需要 MQTT,而实际上他们需要一个好用的应用。一个安装商要求 API 访问,而门户就能解决大部分工作。一个正在扩展的运营商关注花哨的集成模式,而没有先锁定底层的 OCPP 互操作性。
这是本末倒置的。
大多数团队应该简化,而不是进行架构表演。选择与工作匹配的层:
- 人工工作流程 -> 仪表盘
- 软件工作流程 -> REST API
- 事件驱动的多消费者工作流程 -> MQTT
在所有这些下面,保持 OCPP 作为基础。
保持灵活性的实用设置
对于许多真实世界的站点,合理的技术栈是这样的:
- 底层是 OCPP,用于充电桩到平台的互操作性
- 门户用于人工控制、设置和可见性
- 顶层是 REST API,当软件需要集成或自动化时
- MQTT 仅在事件驱动架构确实有回报时使用
这就是为什么 Plugchoice 在这里是一个实用的路线。你可以从开放的电动汽车充电桩控制开始而不是被锁定,在人工操作时使用门户,在你的设置确实需要时添加软件控制。如果这听起来像你的方向,探索开放的电动汽车充电桩集成或直接前往 API 文档。
总结
不要把 OCPP、仪表盘、REST API 和 MQTT 当作四个竞争产品来选择。
为正确的工作选择正确的层。
从 OCPP 作为基础开始。当主要是人操作充电桩时使用仪表盘。当软件需要控制或集成充电桩时通过 Plugchoice 使用 REST API。仅当发布/订阅和事件驱动架构确实有回报时使用 MQTT。
这通常是最简单的答案。也通常是最具未来适应性的答案。
