沈 伟,卫龙龙,杨胜浩
(中国空空导弹研究院 凯迈(洛阳)电子有限公司,洛阳471003)
近年来,全球电动汽车产业发展迅猛,直接带动了与之配套的充电机市场的火爆,当前我国新能源充电机保有量位居全球第一。 为了满足客户对充电机日益增长的新功能需求和解决已发现问题,经常要对现有充电机的主控器以及各个组件进行软件升级。 充电机出厂后遍布全国各地甚至远在欧洲偏远、高寒地区,人工升级维护的人力、物力、时间成本过高,远程升级成为最佳方式。
然而,目前充电机少电动汽车多,矛盾依然突出,尤其公交场站充电机大部分时间处于使用状态[1-3]。 由于升级系统及方法存在缺陷,对使用率高的充电机进行远程升级尚存在一定的风险和不便,主要缺陷表现在:①升级文件传输过程必须在充电机空闲时进行,否则影响正常充电业务;文件的传输及更新全过程必须有人值守,费时费力;②升级文件的传输出错或断电必须重新传输,大文件传输时间长,出错概率高;③不支持对充电机系统中各个模块和组件进行升级;④不支持同时批量升级充电机,升级效率低。 鉴于此,设计了直流充电机远程升级系统。 该系统支持断点续传,不影响充电业务,支持批量同时升级,从而弥补传统远程升级系统和方法的诸多不足。
直流充电机系统总体架构如图1所示。 图中,直流充电机系统由主控器、人机交互串口屏、刷卡模块、电源模块、辅助电源、M(M≥1)个功率模块、绝缘检测泄放模块、直流电能表、充电枪控制模块、充电枪头组成[4-8]。
图1 直流充电机系统的总体框架Fig.1 Overall architecture of DC charger system
交流输入给电源模块、辅助电源和M 个功率模块供电。 电源模块将电压转换为24 V 给主控器供电,主控器的微控制芯片为STM32F103ZET6[9]。
主控器通过串口URAT1 与人机交互串口屏进行通信,完成充电过程中人机交互和信息显示功能。 主控器通过串口URAT2 与刷卡模块进行通信,完成充电前的刷卡开始和充电结束后的刷卡结算功能。
主控器通过CAN1 与M 个功率模块进行通信,控制各个功率模块的开启和闭合,控制充电过程中各个功率模块输出电压和电流。 主控器通过CAN2与绝缘检测泄放模块进行通信,完成充电握手阶段对充电机进行绝缘检测功能,以及在绝缘检测结束和充电过程结束后泄放功能。 主控器通过CAN2 与直流电能表进行通信,完成充电机直流输出端的电能计量功能。 主控器通过CAN2 与充电枪控制模块进行通信; 充电枪控制模块,通过控制线1 管控DC+/DC-的接触器K1/K2 的开启与闭合,通过控制线3 管控辅助电源接触器K3/K4 的开启与闭合,通过控制线2 管控充电枪头的电子锁的开启与闭合,获取电子锁反馈信号,获取接触器K1/K2 状态反馈信号,获取接触器K3/K4 状态反馈信号、采集枪在位电压值、采集枪头温度。
GPRS 通信单元位于主控器上,负责充电机和后台服务器进行无线通信。 GPRS 通信单元选用Telit GL868 模块。如图2所示,IXP1 为GL868 模块与SIM 卡的接口,DTRA 为STM32 控制GL868 模块供电的使能信号。 ANT 为GL868 模块的天线。GL868 管脚7 数据通信TXD 和管脚8 RXD 的电压范围与STM32 的UART3 电压范围不一致,通过电平转换才能与STM32 UART3 的管脚RXD 和TXD相连接。 PWR 是GL868 模块的上电监控信号,其电压范围与STM32 芯片IO 输入管脚电压范围也不同,需电平转换。 信号PWR 连接1VT14 的基极,信号PWR_IN 一端接1VT14 的集电极并通过上拉电阻1R64 接3.3 V,另一端连接主控器控制芯片STM32 的输入管脚。 当GL868 有电时,PWR 为高电平1.8 V,则1VT14 导通,PWR_IN 为低电平0 V;当GL868 下电时,PWR 为低电平0 V,则1VT14 截止,PWR_IN 高电平3.3 V,这样控制芯片STM32 就能确定GL868 模块是否供电正常。
由于各个模块和组件都有通信线路连接,因此要升级各个模块和组件时,就可以通过通信线路发送升级命令并转发升级文件。
直流充电机系统软件的升级步骤如图3所示[10]。 后台服务器中的管理软件进行升级文件的装载,升级组件类型、更新方式和充电机地址的选择。当用户从后台启动升级后,后台软件对原始的升级文件进行压缩,并下发充电机启动升级命令。
图2 直流充电机系统GPRS 通信单元电路Fig.2 Circuit of GPRS communication unit of DC charger system
图3 直流充电机系统软件升级步骤Fig.3 Upgrade steps of DC charger system software
具体而言,对原始的升级文件进行压缩,文件就能在尽可能短的时间内传输完毕,且传输占用网络流量尽可能少。 尤其是充电机系统中,串口屏组件的单张图片为24 位真彩色,分辨率1024×768。如果对串口屏中的图片进行升级,单张图片的大小就有2.25 M。 如此大小的图片经过GPRS 通信单元进行传输显然既费时又耗流量。 因此,对升级文件进行压缩后再传输,是行之有效的解决方法。
后台服务器软件采用无损压缩算法对原始的升级文件进行压缩。 压缩方法是根据文件内容生成码表,用码表的索引替代文件中对应的二进制字符来达到压缩的目的。
充电机收到升级命令后,开始与后台服务器建立升级专用IP 地址和端口建立链接。在升级专用链接建立成功后,充电机向后台服务器发送升级登录帧,登录成功后,后台服务器开始发送升级文件的压缩包。
充电机发送登录帧中的描述表如图4所示,断点续传功能得以实现的关键在于,登录帧中记录有当前传输文件长度、类型、升级方式等内容的描述表。 登录帧中的描述表仅当后台软件下发启动升级命令或升级文件传输完成后才会被清空,否则该登录帧的描述表所记录的信息即使掉电也不会丢失。所以,即使网络断开或者充电机系统掉电,充电机重新登录到后台服务器,后台可以根据登录帧中的描述表对充电机进行升级文件续传。
图4 充电机发送登录帧中的描述表Fig.4 Description table in the login frame sent by charger
登录帧的描述表包括升级文件原始长度、升级文件原始校验和、升级文件压缩包长度、升级文件压缩包校验和、升级文件类型、更新文件方式、已经接收到压缩文件长度等信息。
升级文件传输过程中,数据帧接收处理流程如图5所示,充电机每收到一帧数据做以下动作:计算校验和,保存数据,更新登录帧描述表中已接收文件长度信息,向后台服务器升级管理软件发送确认帧。 后台确认充电机收到该帧后,再继续发送下一帧。 当升级文件压缩包接收完毕后,充电机计算压缩文件的校验和正确,就开始对压缩包进行解压缩工作。 充电机先接收完整的升级压缩包后再进行解压,而非接收一帧压缩数据解压一帧。 接收的升级文件压缩包和解压后原始的文件位于充电机Flash 不同的地址。
图5 升级文件传输过程中数据帧接收处理流程Fig.5 Flow chart of data frame receiving and processing in the process of upgrading file transmission
解压完毕后,判断原始文件的校验和是否正确,若正确则升级文件有效。 文件充电机根据升级文件的类型和更新文件方式进行相应操作。 如果更新文件方式为立即更新,则充电机立即更新程序;如果为空闲更新,则等待充电机充电业务完成后更新程序;如果为上电更新,则需要主动掉电再上电后完成程序的更新。
直流充电机通过远程通信单元与后台服务器进行通信,该远程通信单元允许直流充电机与后台服务器建立多个链接。 由于充电机与后台传输升级文件使用的链接和充电机与后台监控管理所使用的链接是各自独立的,因此不影响后台正常的监控与管理。
由于充电机接收升级文件压缩包和解压的过程与充电机正常的充电流程以及用户人机操作是并行处理的,并且可以选择空闲或上电更新程序的方式,因此升级不影响正常的充电业务。
充电机升级文件传输和升级状态机图,如图6所示,分为:初始态、登录态、接收升级包态、校验升级包态、解压升级包态、校验升级文件态和更新程序等7 种状态。
图6 充电机升级文件传输和升级状态机图Fig.6 State machine diagram of charger upgrade file transmission and upgrade
具体而言,当充电机没有升级任务时,处于初始态;当有升级任务时,充电机向后台服务器发送登录帧并进入登录态。 如果超时未登录成功,则返回到初始态; 如果登录成功并且开始接收数据,则进入接收升级包态。 如果升级包接收成功,则进入校验升级包态;如果接收过程中传输断开,则返回到初始态。 在校验升级包态时,根据登录帧中描述表的升级包校验和来判断升级包是否有效。 如果校验正确则进入解压升级包态;如果校验失败,升级包无效则返回到初始态。 压缩包解压完成得到升级的原始文件,则进入校验升级文件态。 根据登录帧中描述表的原始文件校验和来判断解压出来原始升级文件是否有效。 校验升级文件合法有效则进入更新程序态;若校验失败则返回解压升级包态重新解压升级包;若校验失败次数超限,则返回到初始态。 在更新程序态时,根据文件类型和更新方式对主控板或各个模块及组件进行升级,升级成功返回初始态。
充电机系统更新升级文件的流程如图7所示。更新升级文件为升级充电机的最后一个阶段。 在此之前,充电机已经完成软件升级包的传输和解压工作。
图7 更新升级文件的流程Fig.7 Flow chart for updating upgrade files
针对电动汽车传统升级系统及方法所存在的缺陷,设计了远程升级直流充电机系统,提出了安全稳定、批量化、通用的嵌入式系统远程升级的方法,解决了现有充电机升级文件传输影响充电业务、效率低、不智能等问题。 该设计已应用于凯迈(洛阳)公司的充电机嵌入式软件及后台管理系统中。 该系统在上海、东莞等公交场站充电机批量远程升级使用时安全、有效、便捷。 该系统及远程升级方法具有较高的推广价值。