
为什么 OCPP 1.6 标准协议没有纳入资费和计费模型
OCPP 1.6(开放充电点协议 1.6)已经成为电动汽车(EV)充电桩与中央管理系统之间通信的广泛采用的标准。然而,业界经常讨论的一个关键点是:OCPP 1.6 没有原生支持动态资费或全面的计费模型。本文将探讨这一设计选择背后的原因,以及它对电动汽车充电行业的影响。

▶ OCPP 1.6 的设计理念
OCPP 1.6 的设计初衷是作为一种通信协议,而非定价或交易结算系统。该协议的核心目的是确保充电桩与网络运营商之间的互操作性,让来自不同厂商的软硬件可以无缝协作。这意味着它主要定义了如何交换充电数据、会话控制命令、固件更新和状态信息等内容,而业务逻辑(如资费和计费结构)则被排除在核心规范之外。
▶ OCPP 1.6 的主要目标
- 互操作性:保证任何 OCPP 兼容硬件都能与任何中央系统连接。
- 灵活性:支持多种充电方式和网络管理模式。
- 可扩展性:允许通过自定义消息或厂商扩展来满足核心协议之外的需求。
▶ 为什么不包含资费和计费模型
1. 资费结构的复杂性和多样性
电动汽车充电的定价模式极其复杂,涉及多种因素:
- 时间(分时电价)
- 充电量(按 kWh 计费)
- 充电时长(按分钟或小时计费)
- 占位费(充满后未及时移走产生的滞留费)
- 用户身份验证(按会员或支付方式定价)等。
这些模型在不同国家、不同电力公司和运营商之间差异巨大。如果要将这些都纳入协议,OCPP 的适应性就会大大降低,难以覆盖全球各种市场和商业模式。
2. 职责分离
OCPP 的架构师选择了将通信与业务运营分离:
- 协议只负责如何交换数据(如电表数值、交易开始/结束、设备状态等)。
- 中央管理系统/后端负责如何解释数据并应用资费和计费逻辑。
这种设计允许运营商根据本地法规或市场需求灵活调整资费策略,而不用每次都修改协议本身。
3. 计费由后端驱动
资费计算、最终计费等工作由中央系统处理,后者掌握所有业务逻辑和上下文(比如用户合同、实时电价、促销活动)。中央系统可以在每次充电过程中,利用自定义或扩展消息把费用信息发送到充电桩上,实现动态展示或用户结算。
虽然 OCPP 1.6 允许充电桩显示某些静态费用(比如默认每度电价格),但更动态的费用信息必须通过 DataTransfer 扩展消息来实现,这种方式并不在 OCPP 的正式规范范围内。
4. 适应市场演进并保持兼容性
电动汽车充电市场发展极快,新的计费模式不断出现。如果把资费模型写死进协议标准,不仅会让协议快速过时,还会导致频繁修订。将资费逻辑排除在协议外,可确保 OCPP 1.6 长期适用并与以往版本兼容。
▶ OCPP 1.6 如何处理资费信息
虽然不是内置功能,但 OCPP 1.6 支持通过以下方式处理资费和计费信息:
- 自定义扩展:运营商可用 DataTransfer 扩展消息把资费信息发送到充电桩用于展示或计算。
- 配置项:对于静态默认价格,OCPP 1.6 支持用简单消息配置,但不支持按会话计算动态费用。
- 后端计算:中央管理系统根据实际情况,在充电过程中或结束后,将计算所得费用信息传递给充电桩展示或用于发票。
这种灵活性支持了高度定制的商业模型和本地合规需求,而协议级解决方案难以达到这样的效果。
▶ OCPP 1.6 与 OCPP 2.0.1 的区别
随着 OCPP 2.0.1 的发布,更先进的资费和费用报告机制得到了支持。但即便在新版协议中,OCPP 仍然主要是提供资费数据传递的机制,计价和业务逻辑依然由后台系统负责,而不是协议本身定义。
▶ 总结
OCPP 1.6 不将资费和计费模型纳入协议是一项有意为之的设计,体现了协议对互操作性、灵活性和可扩展性的重视。通过将业务逻辑留给后台系统,OCPP 1.6 能适应各种多变且快速发展的市场需求,让运营商可以灵活实现符合法规或商业需求的资费模型,无需频繁修改通信协议。