# 虚拟充电桩 **Repository Path**: dingwensuo/virtual-charging-pile ## Basic Information - **Project Name**: 虚拟充电桩 - **Description**: 测试用充电桩开发 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 3 - **Created**: 2023-06-14 - **Last Updated**: 2023-06-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 虚拟充电桩 #### 介绍 测试用充电桩开发 #### 软件架构 软件架构说明 1. 功能框架 硬件监测:硬件监测是整个充电桩系统与整车交互的基础,通过检测监测点1处的电压,充电桩能够判断充电枪是否已经连接,通过检测用户的刷卡信号,充电桩用来决定是否开始整个充电流程,通过对K1,K2继电端电压的检测,充电桩会判断系统是否存在漏电等绝缘故障 绝缘诊断:断开车端继电器后,充电桩会首先输出高压,来对系统绝缘性能进行检测 辅助电源控制:在用户刷卡之后,充电桩应当输出12V的辅助电源从而唤醒控制器,或者告知控制器进入充电流程 继电器控制:充电桩应根据充电流程,在执行绝缘检测和正常充电时,闭合快充继电器 流程管理:充电桩根据与控制器的交互,判断当前充电流程,并通过充电桩正常反馈当前桩的状态 功率管理:充电桩根据接收到的控制器的充电需求,输出对应的充电流程 故障诊断:当桩与控制器发生不可充电故障,或者出现交互故障时,应能及时停止充电,并输出对应信息 J1939应用层协议:桩与控制器的CAN通信的应用层协议 CAN通信:物理层通信 2. 硬件框架 附图是简易的一个实现框架,相关电路并不完善。 高压检测信号:检测电压范围在0-1000V,考虑到检测精度问题,需要使用电桥电路进行检测,ADC检测 主正继电器驱动:12V继电器驱动电路,后续需要增加驱动芯片 主副继电器驱动电路:12V继电器驱动电路,后续需要增加驱动芯片 A+驱动信号:12V驱动信号,直接输出 CC2模拟电阻检测:为上拉电源检测,ADC检测 CAN驱动:高速CAN,波特率为250kbps,需支持扩展帧 3. 软件框架 程序的主体是充电桩的应用层软件,当前应用层软件是由MBD自动代码生成的,需要对代码生成的硬件平台进行设置,生成的代码以函数为调用主体,输入输出均采用结构体变量指针的形式; J1939服务站点,当前J1939站点的代码主要来自Github,通过适配RTThread的CAN接受和发送函数,配置站点地址,应用接口。 程序接口函数的主体,则是采用C++对GB27930的文件进行解析,对每一帧报文生成对应的结构体,以及该结构体对应的物理值和原始值的转换函数; 由于疫情原因,没有闭环功能进行测试,所以实现的比较慢。当前已实现的功能,包括应用层的适配,J1939的调试,J1939和应用层的接口实现,继电器驱动和ADC检测尚未实现。