OCPP.Core

OCPP.Core

基于.NET的开源OCPP服务器实现

OCPP.Core是基于.NET 8开发的开源充电点协议(OCPP)服务器,支持OCPP 1.6J和2.0版本。它提供Web管理界面,用于充电点和RFID令牌管理。该项目支持多连接器、界面本地化和多种数据库选项。OCPP.Core跨平台兼容,可应用于各类充电设施,为电动汽车充电基础设施管理提供完整解决方案。

OCPP充电点协议电动车充电充电管理系统充电站模拟器Github开源项目

OCPP.Core

OCPP.Core是一个用.NET 8编写的OCPP(开放充电点协议)服务器。它包含一个管理Web界面,用于管理充电点和充电令牌(RFID令牌)。

状态

目前支持OCPP1.6J和2.0(JSON/REST)。

OCPP.Core目前正在与6个KEBA P30c/x充电点一起使用,这些充电点在负载管理和OCPP1.6J下运行。 这里是我的首次实际使用体验报告。

如果它能与您的充电站正常工作或遇到问题,请反馈

OCPP服务器目前处理以下消息:

OCPP V1.6:

  • 启动通知
  • 心跳
  • 授权
  • 开始交易
  • 结束交易
  • 电表值
  • 状态通知
  • 数据传输
  • 重置
  • 解锁连接器

OCPP V2.0:

  • 启动通知
  • 心跳
  • 授权
  • 交易事件
  • 电表值
  • 状态通知
  • 数据传输
  • 日志状态通知
  • 固件状态通知
  • 清除充电限制
  • 通知充电限制
  • 通知电动车充电计划
  • 重置
  • 解锁连接器

管理Web界面

Web界面支持英语和德语本地化。它有一个概览页面,显示所有充电站及其可用性。

每个充电点(或连接器!)都显示为一个带有状态信息的磁贴。如果有车辆正在充电,磁贴会变红并显示持续时间。如果充电站发送当前功率和充电状态(SoC)数据,这些信息会显示在磁贴的底部。例如,我们的KEBA设备只发送主电表值:-(

点击充电点/连接器磁贴,您可以看到最近交易的列表,并可以将其下载为CSV格式。

Web界面有两种不同的角色。普通用户可以查看充电点和交易(如上截图所示)。管理员还可以创建和编辑充电站、充电标签和连接器。

多连接器行为

起初,我没有太关注多连接器。带有多个连接器的充电点并不常见。但后来我们在家里安装了充电点,发现我们的设备(带负载管理)作为单个充电点运行,每个充电点有一个连接器(详见此处)。

我在V1.1版本中添加了多连接器支持。当服务器收到带有连接器编号的OCPP消息(状态和交易消息)时,OCPP服务器会在数据库(ConnectorStatus表)中动态构建连接器列表。管理员用户可以查看此列表,并可选择配置自定义名称。

这导致显示充电点的不同场景:

  • 没有已知连接器的充电点 => 使用其名称显示充电点
  • 有一个已知连接器但没有特定名称的充电点 => 使用充电点名称显示一个充电点
  • 有2个或更多连接器但没有特定名称的充电点 => 使用默认名称"充电点名称:连接器编号"显示每个连接器

如果连接器有指定名称,该名称将覆盖充电点名称或默认方案(如上所述)。这允许您为每个连接器定义自定义名称(如左/右)。

系统要求

OCPP.Core使用.NET 8编写,因此可在不同平台上运行。我还将其安装在Azure上进行测试。 存储基于EntityFramework-Core,支持不同的数据库。项目包含SQL-Server(SQL-Express)和SQLite的脚本。

引用的包:

  • Microsoft.EntityFrameworkCore
  • Microsoft.EntityFrameworkCore.Sqlite
  • Microsoft.EntityFrameworkCore.SqlServer
  • Newtonsoft.Json
  • Karambolo.Extensions.Logging.File

构建、配置和安装

构建、配置和安装OCPP.Core的步骤在此处有详细描述。

测试...

Web界面

在浏览器中打开配置的URL。项目中的调试URL是"http://localhost:8082/"。 您应该看到登录界面。输入配置的管理员账户。

打开"管理"菜单,创建一个ID为"station42"的充电点和一个充电标签。

管理菜单:

创建新充电点:

您可以选择为此充电点添加认证数据:基本认证的用户名/密码和/或客户端证书的指纹。 编辑充电点时,您可以在此处向充电点发送重启或解锁命令。

创建新充电标签:

Web界面支持英语和德语本地化

OCPP服务器

测试OCPP服务器的一个简单方法是使用模拟器:

  • OCPP1.6简单充电盒模拟器
  • OCPP-2.0-CP-模拟器

注意:两个模拟器在某些操作中都存在小问题和大问题。这就是为什么我修改了它们并在此项目中包含了副本。 还有一个带有两个连接器的1.6模拟器的扩展版本。

在浏览器中打开其中一个模拟器,输入"ws://localhost:8081/OCPP/station42"作为中央站URL。 "station42"是您在上一步中创建的充电点ID。

输入您之前输入的充电标签ID作为"Tag"。

点击"连接"

现在模拟器应该在底部显示成功消息。 当您开始一个交易并刷新Web界面时,您应该在充电点磁贴中看到相应的状态。

编辑推荐精选

扣子-AI办公

扣子-AI办公

职场AI,就用扣子

AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!

堆友

堆友

多风格AI绘画神器

堆友平台由阿里巴巴设计团队创建,作为一款AI驱动的设计工具,专为设计师提供一站式增长服务。功能覆盖海量3D素材、AI绘画、实时渲染以及专业抠图,显著提升设计品质和效率。平台不仅提供工具,还是一个促进创意交流和个人发展的空间,界面友好,适合所有级别的设计师和创意工作者。

图像生成AI工具AI反应堆AI工具箱AI绘画GOAI艺术字堆友相机AI图像热门
码上飞

码上飞

零代码AI应用开发平台

零代码AI应用开发平台,用户只需一句话简单描述需求,AI能自动生成小程序、APP或H5网页应用,无需编写代码。

Vora

Vora

免费创建高清无水印Sora视频

Vora是一个免费创建高清无水印Sora视频的AI工具

Refly.AI

Refly.AI

最适合小白的AI自动化工作流平台

无需编码,轻松生成可复用、可变现的AI自动化工作流

酷表ChatExcel

酷表ChatExcel

大模型驱动的Excel数据处理工具

基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。

AI工具酷表ChatExcelAI智能客服AI营销产品使用教程
TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
AIWritePaper论文写作

AIWritePaper论文写作

AI论文写作指导平台

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

AI辅助写作AI工具AI论文工具论文写作智能生成大纲数据安全AI助手热门
博思AIPPT

博思AIPPT

AI一键生成PPT,就用博思AIPPT!

博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。

AI办公办公工具AI工具博思AIPPTAI生成PPT智能排版海量精品模板AI创作热门
潮际好麦

潮际好麦

AI赋能电商视觉革命,一站式智能商拍平台

潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。

下拉加载更多