(南京林业大学 机械电子工程学院,江苏 南京 210037)
目前,电动车是人们出行的主要交通工具之一,但大多数的电动车充电桩都是传统的投币式充电桩,主机体积大、用户体验差。而且由于缺乏维护管理,传统充电桩废弃率很高,使用效率低,甚至会损坏电池,造成火灾[1]。
物联网技术的兴起给人们的生活带来了便利。本文介绍了一种基于物联网技术[2]的智能充电桩,采用分布式控制[3]方案,成本低廉、体积小,适合安装在各种公共场所。而且智能充电节点和中控网关[4]间的LoRa通信[5]能穿透地下室,由安装在地面的中控网关与服务器交互,解决了地下室网络信号不稳定的问题。
系统总体框图如图1所示,主要包括移动终端、服务器、中控网关和智能充电节点。使用手机软件,扫描充电站点的二维码,然后选择空闲的充电节点,就能进行手机支付并开始充电。能在手机上远程监控充电电量、时间等信息,也可以随时结束充电。
智能充电节点应部署在能和中控网关通信的区域,其主要功能是提供充电接口,并完成充电电量、电压、有功功率的采集,充电电能的计量。可实现充满自动断电、突发异常情况自动断电等功能。充电节点通过LoRa无线模块和中控网关通信。
图1 系统总体框图
中控网关用4G[6]模块与服务器建立tcp连接,进行双向通信。中控网关收集智能充电节点的数据,然后利用4G模块上传到服务器,并负责解析服务器下发命令,实现对充电节点的控制。
硬件系统主要包括智能充电节点和中控网关。如图2所示,智能充电节点主要设计了RN8209电能检测和LoRa无线传输电路,负责控制、监测充电,并与中控网关进行通信。如图3所示,中控网关设计了4G联网通信、LoRa无线传输、人机交互等电路,负责管理一个站点所有的智能充电节点,并与服务器进行数据交互。
图2 智能充电节点结构图
图3 中控网关结构图
许多充电桩使用电流互感器采集电流信号,经过放大电路做AD转换来采集电流,但缺少电压、功率的检测,还是有安全隐患。本文采用RN8209D单相电能计量芯片[7-8],采用完全差分输入方式测量电流和一路电压,可同时采集电流、电压、功率,有效值误差小,满足充电节点的监测需求。
充电控制模块只有在充电时打开继电器,向插座接口输电,因此不用同时采集火线和零线电流来防止窃电[9]。在绝大多数情况下,低压供电系统零线直接接地,负载可能会通过大地回到零线上,使电表计量不准,所以选择采集火线电流。
如图4所示,管脚4、管脚5为电流通道A,使用5 mΩ的锰铜作为采样电阻,锰铜的温漂系数小,电流检测可靠性高。管脚8、管脚9为电压通道,跨接在零线和火线之间。L_IN为火线,N_IN为零线,把火线作为参考地,接火线的采样就可以减少限流电阻,简化电路。电压采集接零线的一端需要串联1~2 MΩ限流电阻,选为4个300 kΩ电阻,某一个电阻短路只会造成电表不准,并不会损坏设备。采集时为了抗混叠,并联1 kΩ电阻和33 nF电容。管脚12IS接上拉,选择使用SPI接口(管脚13~管脚16)与STM32通信。
图4 电能检测电路
AS32采用 LoRa扩频传输[10],工作频率在410~441 MHz,共计32个信道,每个信道间隔1 M,发射功率最大达到20 dBm,空中速率最大19.2 kbit/s,采用循环交织纠错编码算法,纠错能力及抗干扰能力强,且自带看门狗,无需外部复位。通信时,AS32的通信信道和传输速率必须设置一致,否则将无法通信。
如图5所示,管脚4、管脚5(MD0、MD1)接地选择一般透明传输模式,即一个模块发送数据,其他都能收到。管脚6为天线引脚,预留一个π型阻抗匹配电路,ANT为天线接口。利用LoRa模块做了相当于无线中继的功能,在使用9.6 kbit/s速率时就能穿透地下室,与地面的中控网关稳定通信,解决了在地下室等地方网络信号差甚至无信号的问题,同时也解决了有线连接布线复杂的问题。
图5 LoRa无线传输电路
使用4G模块代替传统2G、3G模块可以提高数据传输速率,提高用户体验,适合做更复杂的业务逻辑。4G模块[11]选为L710-CN-30,DC:3.3~4.4 V供电,支持AT指令操作。L710在使用时,可能会由于网络异常出现socket通道用不了的情况,因此必须设计硬件复位。使用TPS54202电源芯片提供3.6 V电压给L710供电,并由STM32控制TPS54202的使能端。当L710出现异常时,可以通过重新上电的方式进行复位。
如图6所示,VBAT引脚处需要加各种滤波电容,其中100 μF用于减少电源波动,1 μF、100 nF滤除数字信号噪声,33 pF滤除低频段射频干扰,其余可以滤除中、高频段射频干扰。USIM接口支持1.8 V/3 V SIM卡,模块开机时,USM_VDD先输出1.8 V进行SIM卡握手,如果不成功,则会输出2.85 V进行SIM卡握手,自动检测SIM卡,并能支持SIM卡热拔插。USB支持软件下载、 socket抓包等调试功能。UART用于与CPU通信,STM32高电平为3.3 V,而L710串口高电平为1.8 V,1.8V可由L710输出,为此设计了由Q1、Q2三极管组成的电平匹配电路。
L710模块使用双天线设计,其中MAIN_ANT用于发射接收RF信号,必须接天线,DIV_ANT只用于接收,能提高接收灵敏度,并提高下载速率,可不接。模块和天线之间预留π型电路供阻抗匹配调试,阻抗控制在50 Ω左右。
图6 4G模块电路
中控网关相对于充电节点是主机,所有通信必须由主机主动发起,从机被动响应,不然从机都在发数据会造成干扰,导致通信失败。中控网关和充电节点之间的通信协议格式如表1所示。
表1 中控网关和充电节点之间的通信协议格式
起始:固定为0xFF,0xCC,表示一帧数据的开始。
地址:前两字节代表中控地址,低位在前,第3个字节代表充电节点号。
命令:查询0x01,查询应答0x11,打开0x02,打开应答0x12,关闭0x03,关闭应答0x13。
长度:表示内容的字节数。
内容:查询应答有5字节,1字节充电状态,2字节当前有功功率,2字节消费金额;打开命令有2字节充电时间;其他都为无。
校验:采用CRC16校验法,低位在前。
结束:固定为0x55,0x19,表示一帧数据的结束。
中控网关使用tcp方式与服务器通信,数据中大多为数字,直接传16进制相比传字符串能减少通信字节数,而且处理效率高,通信格式如表2所示。
表2 中控网关和服务器之间的通信协议格式
起始:固定为0xAA,0x55,表示一帧数据的开始。
地址:中控网关地址,低位在前。
命令:心跳上传0x01、x00,打开0x02、x00,关闭0x03、x00,中控网关应答0x96、0x01,服务器应答0xB1、0x02。
长度:表示内容的字节数,低位在前。
内容:心跳包含所有充电节点的查询应答数据,每个节点包含1字节节点号, 1字节充电状态,2字节当前有功功率,2字节消费金额;打开命令有3字节,1字节节点号,2字节充电时间;关闭命令有1字节节点号,其他都为无。
校验:采用CRC16校验法,低位在前。
结束:固定为0x0D,0x0A,表示一帧数据的结束。
如图7所示,充电节点实时处理中控网关的命令,收到开始充电命令则打开继电器给充电接口提供电源,进行计时,充电时间到则停止充电。实时采集充电接口的电压、电流和有功功率用于诊断充电状态,若充电时出现电流过高、电压过高、功率跃变、功率低于2 W连续3 min(充电器没插上)、功率低于10 W连续3 min(已充满),则切断电源并进行声光报警。功率跃变诊断可防止他人恶意更换用电器,判断标准为在正常充电时,出现功率低于2 W,随后又恢复正常,低于2 W前后的两次正常功率相差超过10 W。充电节点严格按充电规范执行,大大提高了安全性。
图7 智能充电节点软件流程图
为了避免意外断电导致正在执行的充电过程结束,使用STM32自带的PVD中断。设置在电压降到2.9 V时进入中断,把充电数据存入Flash。当再次上电时,从Flash里读出充电数据就能维持断电前的充电状态。
如图8所示,中控网关初始化完成后读取Flash里存储的地址,与服务器通信和智能充电节点通信时用此地址来区分充电站点。使用4G模块与服务器建立tcp长连接后就能接收服务器下发的命令。每隔300 ms轮询智能充电节点的充电数据,并每分钟上传心跳,以更新服务器上记录的实时充电状态。中控监测tcp连接状态,发现异常则重启4G模块并重新建立连接。
图8 中控网关软件流程图
4G模块和服务器通信的数据量大,对4G模块数据的处理效率会直接影响到整个系统的运行速度和可靠性。设计了“DMA接收+串口IDLE中断+定时器中断”的软件方案。使用DMA硬件接收串口数据,不占用CPU时间。由于一帧的数据不一定连续传给STM32,中间也会触发空闲中断,因此在串口空闲中断中开启10 ms的定时器,10 ms内没触发空闲中断才进入定时器中断,确保了一帧数据的完整性。
移动端软件设计成微信小程序,集成地图、微信支付、扫码充电等功能,而且不必安装,用户体验感强。小程序使用Https和WebSocket协议与服务器进行交互。Https主要用于发起请求后服务器立即回复的情景,如刷新界面信息。WebSocket使服务器可以随时推动信息给小程序,弥补了Https的缺陷。如图9所示,用户选择智能充电节点和时间并点击开始充电,小程序发送命令到服务器,通过服务器和中控的转发,即可打开智能充电节点,服务器通过WebSocket给用户推送打开成功或打开失败的提示。
图9 移动端软件充电流程图
充电桩调试时, LoRa无线传输成功穿透地下室,且通信距离超过300 m。移动端界面如图10所示,用户选择智能充电节点和充电时间后,点击开始充电。如图11所示,地址为512、1的中控网关每分钟上传心跳正常,表明没有出现丢包现象,通信链路可靠,充电功率为60 W,正常打开消费1分钱,之后按0.3元/小时计费。
图10 移动端界面
图11 服务器打印数据
本文设计了一种基于物联网的电动车充电系统,能够用移动端APP对充电桩进行操作,并实时监测充电状态。且此系统适应能力强,可安装在地下室等无信号场合,有很高的应用价值。