一种面向互联网的交流充电桩的设计
北京智芯微电子科技有限公司的研究人员唐玉建、陈河等,在2018年第8期《电气技术》杂志上撰文,介绍了一种以CORTEX-M3芯片为核心结合Keil RTX实时操作系统完成的交流充电桩的设计。分析了交流充电桩嵌入式软件在Keil RTX实时操作系统下多任务编程的实现流程,介绍了充电桩嵌入式软件通过多任务编程完成充电任务并检测输入信号异常及相应异常处理的方法。
实验表明CORTEX-M3芯片为核心结合Keil RTX实时操作系统完成交流充电桩的设计具有良好的稳定性和故障检测处理能力。
电动汽车的动力来源为电力,具有环保高效、节约能源的优点[1-3]。然而充电难的问题已经成为电动汽车进一步拓展市场的绊脚石。据悉,在我国各地,还广泛存在着充电桩配备不足,利用率不高等现象,这样以来,纵然购置了电动汽车,也长期饱受充电难的困扰,将势必影响车主的使用体验,也必将影响电动汽车的整体评价,进而也会影响到电动汽车在我国的进一步推广。
充电桩是电动汽车发展中必不可少的基础设施,其重要性日益凸显[4-5],但是当前社会上的充电桩大都不能联网,在充电过程中用户也不能随时查看充电桩的充电信息,充电桩运营公司不能实时监控充电桩的运行状态,当充电桩需要进行功能更新时,必须要工作人员去现场才能更新,用户查找空闲充电桩也不方便,直接降低了充电桩的使用效率。
建设一个电动汽车智能服务平台[6-7],为电动汽车用户提供一个互联网访问渠道,实现电动汽车用户的核心业务查询功能,以及充电预约、路线规划、政策法规展示、网上客服等辅助功能,并提供用户手机客户端访问,是解决这些问题的有效办法[8-10],电动汽车通过合理安排充电时段,能响应可再生能源的不稳定性负荷,减少可再生能源的浪费[11-12]。
通常交流充电桩占用的土地面积较小,且管理成本也比较低,一般在城市的停车场、住宅小区等车流量和车辆停放密度比较大的区域进行建设,以满足电动汽车的充电需求。同时,交流充电桩一般采用的是慢充模式,电流比较小,安全性能较高,在一定程度上能够延长电动汽车电池的寿命[13]。
因此本文在面向互联网的电动汽车智能充电系统[14]的基础上提出了一种面向互联网的交流充电桩的设计。
1 充电桩系统构成
智能充电桩是基于智能云平台通过手机APP端进行控制和监控的新型交流充电桩,人机交互操作界面由传统的充电桩体屏幕显示,变为客户手机终端显示形式,使客户信息更加安全,远程控制更加方便快捷,解决了常规充电桩手动开启、手动付费、手动结算的过程,充电桩具备完善测控保护功能,可以实时与客户手机客户端通信,保证信息的准确性、实时性。具备运行状态监测、故障状态监测、充电分时计量、历史数据记录和存储等功能[14]。充电桩系统交互如图1所示。
图1 充电桩系统交互示意图
2 充电桩硬件设计
MCU采用低功耗,高性价比的CORTEX-M3系列芯片,通过RS 485接口与电能表通信,实现电流、功率、电能信号的采集。并采用低功耗的WiFi模块,实现与服务器数据通信。系统硬件框架如图2所示。
1)MCU单元。为充电装置的控制核心,完成逻辑判断与信息分发,采用低功耗,高性价比的ARM CORTEX-M3系列芯片,型号为STM32107。片上集成了丰富的外围功能模块,便于设计高性能低成本的嵌入式应用系统,芯片通过串口与WiFi通信模块通信,通过RS 485总线与电能表通信。MCU通过驱动电路与接触器相连实现充电电能输出的通断控制与反馈检测,通过驱动电路与车载充电机相连实现与车载充电机的信息输出与反馈检测。通过片上的Flash,实现用电信息的存储、保存采集的用电历史数据以及重启事件、故障或告警事件等[14]。
2)电能表。电能表是一种可以监测电流、电压、功率、电量等电参数的专用装置,电能表串接在交流供电线路上,数字电表与MCU之间通过RS 485通信方式完成数据交互。
3)WiFi通信模块。采用低功耗的WiFi模块,实现与无线网关的数据通信进而实现充电装置开关状态远程控制、电流、功率、电能信息的上报。
4)保护单元。包括防雷器和漏电保护器,防雷器用于防止雷电或其他内部过电压侵入设备造成损坏,漏电保护器用于在设备发生漏电故障以及有致命危险的人身触电保护。
5)电源转换模块。用于将交流电能转换为直流电能,提供不同电压等级的直流电,为充电装置中的其他电路提供电源[14]。
6)接触器。作为实现充电装置的输出电能通断的执行部件,由MCU经驱动电路进行控制。
7)急停开关。作为充电装置的紧急制动装置,具备最高优先级,当充电桩工作发生异常时强行终止工作。
图2 系统硬件框架图
3 充电桩嵌入式系统软件设计
系统软件分为应用区软件和BOOT区两部分,采用模块化设计思想,如图3所示。应用区软件完成充电桩相关的各种功能,包括数据通信功能、接触器通断电功能、电能量数据采集等功能,采用多任务模块化的软件设计方法,使设计过程变得更加简单,方便后续功能扩展,软件的实时性、稳定性和可靠性都有很高的保障,开发周期也会相应地缩短。BOOT软件主要完成充电桩应用区软件的在远程级功能,方便后期应用区软件的维护。
图3 充电桩软件架构示意图
3.1 BOOT区程序
该程序模块完成对应用区程序远程升级和从BOOT区程序跳转到应用区程序的功能。模块处理流程如图4所示。
图4 BOOT区程序流程图
3.2 应用区程序
应用区程序完成充电相关的各种功能,包括告警信息、按键信息采集、LED灯控制、与服务器通信(协议接收解析和打包发送)、用电参数采集等信息,以及相关的驱动。
根据充电桩应用的实时性和多任务需求,方便后期维护和结构创建,软件编程选用Keil RTX实时操作系统,Keil RTX是免版税的确定性实时操作系统,适用于ARM和Cortex-M设备。使用该系统可以创建同时执行多个功能的程序,并有助于创建结构更好且维护更加轻松的应用程序[15]。
1)充电桩应用区软件架构
根据充电桩的需求,应用区软件使用Keil RTX实时操作系统,节拍定时器设为10ms,共包含三个任务:告警判定任务、充电控制任务和用电参数采集任务。告警判定任务设为三个任务中最高级任务优先级,充电控制任务次之,用电参数采集任务再次之。
告警判定任务完成所有告警信息的采集判定,任务每10ms遍历一次所有的告警信息,在充电过程中发生意外时可以在第一时间切断电源输出保证充电过程的安全性,且保证时间判定符合GB/T 18487.1的要求。充电控制任务完成与服务器通信数据的接收和发送,并根据服务器命令和充电流程控制接触器和指示灯状态。用电参数采集任务通过与电能表通信完成充电参数(电压、电流、电能等)的采集。
图5所示为充电桩应用区软件架构图,应用区软件使用Keil RTX操作系统编程,首先初始化并建立各个任务然后启动操作系统进行任务调度,令告警判定任务、充电控制任务和用电参数采集任务同时进行。
图5 充电桩应用区软件架构图
2)充电桩应用区软件数据流图
如图6所示,告警判定任务实时采集CP、CC状态信息、接触器状态信息、枪锁状态信息、电压、电流、电能信息等。告警判定任务根据采集的信息判断告警并输出给充电控制任务。用电参数采集任务采集电能表信息对另外两个任务输出电压、电流、电能信息。充电控制任务接收服务器信息、告警判定任务输出的告警信息和用电参数采集任务采集的电压、电流、电能信息并输出接触器控制信息、指示灯控制信息和上报服务器的信息。
图6 充电桩数据流图
3)充电桩软件告警判定任务流程
如图7所示,告警判定任务首先初始化外部电路I/O口等,每隔10ms循环一次采集CP、CC状态信息、接触器状态信息、枪锁状态信息、电压、电流、电能信息等根据GB/T 18487.1的要求判断是否产生告警信息,产生告警时如果正在充电则立即停止充电并且记录告警信息然后将告警信息发送给充电控制任务。
图7 告警判定任务流程图
4)充电桩软件充电控制任务流程
如图8所示,充电控制任务首先初始化外部电路等,首先判断服务器是否已经连接,如果服务器没有连接则需要重新连接服务器,启动任务后第一次连接上服务器需要检查有无保存的充电桩上次充电没有上报的充电结果,如果有需要上报上次充电的结果,然后更新与服务器连接状态。
正常与服务器连接时,需要定时发送心跳报文(检测充电桩与服务器的连接状态)、校时报文(保证充电桩与服务器的时间一致)和状态字变化报文(保证服务器记录的状态和充电桩的状态一致)。此种状态视为充电桩待机状态,可以随时接受服务器指令进行充电。
每隔10ms循环一次采集CP、CC状态信息、接触器状态信息、枪锁状态信息、电压、电流、电能信息等根据GB/T 18487.1的要求判断是否产生告警信息,产生告警时如果正在充电则立即停止充电并且记录告警信息然后将告警信息发送给充电控制任务。
图8 充电控制任务流程图
5)充电桩软件用电参数采集任务流程
如图9所示,告警判定任务实时采集CP、CC状态信息、接触器状态信息、枪锁状态信息、电压、电流、电能信息等,告警判定任务根据采集的信息判断告警输出给充电控制任务。用电参数采集任务采集电能表信息对另外两个任务输出电压、电流、电能信息,充电控制任务接收服务器信息、告警判定任务输出的告警信息和用电参数采集任务采集的电压、电流、电能信息输出接触器控制信息、指示灯控制信息和上报服务器的信息。
图9 用电参数采集任务流程图
充电桩软件与服务器通信流程如图10所示,充电桩上电、重新启动或离线时发送登录报文,成功登陆后充电桩将自身状态置为在线状态。如果充电桩在运行过程中连续一定时间没有接收到服务器端的心跳确认信息则充电桩将自身状态置为离线状态并重新开始登录。
登陆分为冷启动登陆和因心跳超时而离线后充电桩发起的登录,登陆是服务器与充电桩之间进行数据交互的基础。登录后方可进行其他的命令交互。
心跳:心跳为桩主动发起的,每间隔一定时间主动向服务发送一个简短的报文,表明充电桩在线,服务器接受到这个报文后对充电桩应答。心跳正常表明充电桩在线,如果心跳超时则说明充电桩离线,需要重新登录。
4 实验过程及结果分析
按照图11搭建实验电路,在正常工作的充电桩充电接口上接入测试工装,利用测试工装仿真电动汽车。
4.1 功能实验
1)在搭建好实验电路的充电桩充电接口上接入测试工装,通过手机客户端控制充电桩开始充电。在开始充电到结束充电过程中,用示波器检充电桩及工装上各个点的状态跳转和间隔时间,结果如图12所示。图12中信号源1为图11中①处的电压,信号源2为图11中①处的电流,信号源3为图11中检测点1处的电压。
开始充电时检测点1处的电压先由12V变为9V而后变为6V,充电桩在检测点1电压变为6V后2.4s开始正式对外供电;充电过程中通过手机APP查看充电桩供电的电压、电流和电量等信息,与实际测量值对比基本一致;结束充电时检测点1处的电压由6V变为9V后,充电桩立刻切断对外供电,说明充电桩远程充电功能正常。
2)通过服务器端对正常运行的且处在空闲状态的实验充电桩进行在线升级,升级后通过服务器查看实验充电桩的版本号,可以看到其版本号已经更新,说明充电桩在线升级功能正常。
4.2 故障实验
1)按照图11实验电路,在正常工作的充电桩充电接口上接入测试工装,通过手机客户端控制充电桩开始充电。在充电过程中,断开图11中⑦处,如图13充电桩在49.25ms后断开K1和K2,符合GB/T 18487.1的要求。图13中信号源3为图11中①处的电压,信号源1为图11中①处的电流,信号源4为“检测点2”处的电压,实验证明了当充电枪与充电桩链接断开时,充电桩可以及时停止断开交流电压输出。
图10 充电桩与服务器通信流程图
图11 实验电路图
2)按照图11实验电路,在正常工作的充电桩充电接口上接入测试工装,通过手机客户端控制充电桩开始充电。在充电过程中,断开图11中⑥处,充电桩在37ms后断开K1和K2,符合GB/T 18487.1的要求。
图12 充电过程实验示波器截图
图13 插枪链接断开实验示波器截图
3)按照图11实验电路,在正常工作的充电桩充电接口上接入测试工装,通过手机客户端控制充电桩开始充电。在充电过程中,断开S2(检测点1的电压值为9V)时,充电桩在57ms后断开K1和K2,符合GB/T 18487.1的要求。
本文分析了一种面向互联网的交流充电桩的硬件设计与软件设计。该系统以CORTEX-M3为控制核心,实现了充电桩程序远程升级、远程控制、电能计量、运行状态远程监测、充电保护和充电信息上传等功能。
面向互联网的交流充电桩是基于云平台互联网充电桩系统的一部分,该充电桩在实际运行了一年多的时间里运行良好,能满足大部分电动汽车的慢速充电要求。本文对面向互联网的交流充电桩的设计分析,对于充电桩的设计借鉴和推进电动汽车的普及具有一些作用。