基于RFID的电动汽车充电桩结算系统设计

2018-04-02 05:09尹静文周子昂耿文波
周口师范学院学报 2018年2期
关键词:串口电能加密

尹静文,苑 璐,徐 坤,周子昂,耿文波

(1.新乡职业技术学院 河南 新乡 453000;2.周口市科学技术局,河南 周口 466001 3.周口师范学院,河南 周口 466001)

为缓解日益严重石油资源匮乏危机和环境污染,纯电动汽车以清洁、环保等优势,被普遍认为是未来汽车工业的发展方向[1-2]. 充电设施建设和运行是推动电动汽车产业发展的重要前提,针对市面上的交流充电桩和直流充电机[3-4]充电费用结算问题,国内外学者在接触式IC卡和非接触式IC卡使用方面展开研究,其中,基于射频识别(Radio Frequency Identification, RFID)技术的非接触式IC卡、数据加密及安全问题是近年来研究热点,取得了较好的成果. 文献[5]分析了RFID系统存在的安全隐患,设计了高效、低成本有源RFID双向认证加密方案;文献[6]设计了基于ARM的双面IC卡读写器,通过移植Crypto1加密算法兼容Mifare系列卡,实现金融交易圈存、消费及余额查询等功能,并使用三重数据加密标准(Triple Data Encryption Standard, 3DES)算法以保证用户数据安全;文献[7]以FPGA为硬件平台,验证了EPCBC密码算法在RFID通信数据加密的高效、可行;文献[8]通过实现MD5和DES加密算法,有效提高了RFID数据的安全性. 本文将RFID技术与电动汽车充电设备相结合,设计了以嵌入式微处理器STM32F103C8T6为控制核心,以MFRC531为读卡芯片,RFID卡读写系统,实现了用户身份识别、充电费用结算等功能,并采用3DES数据加密算法,增强了RFID卡防御攻击的能力,有效保护了用户数据安全. 设计目标模块化、成本低、小型化、采用标准串口通信、便于与电动汽车充电桩集成.

1 硬件系统组成

硬件系统主要由:微处理器电路、射频读卡电路及串口通信电路三部分构成. 系统总体框图如图l所示. 由MFRC531构成的读卡电路实现用户卡的识别和相关信息读取,通过8位的并行口传送给系统控制核心STM32F103C8T6,由主控制器完成用户信息验证,确定用户的合法性;并通过RS232接口电路将相应信息传送给充电桩中的上位机,以使充电桩为用户做好充电准备,再由RS232接口电路将上位机准备情况送至STM32F103C8T6,该控制器通过RS485总线接口电路读取智能电量计量模块的初始电量并记录,用户充电刷卡结束时,再次读取电量值,由该值减去初始电量既是用户充电电量,计算充电费用并扣除后,再将余额写入用户卡内,完成费用结算及充电服务.

图1 RFID充电结算系统框图

图1中,主控制器STM32F103C8T6是意法半导体推出的基于ARM 32位的CortexTM-M3系列微处理器中的一款产品[9]. 最高72 MHz工作频率,48引脚LQFP封装,37个GPIOs,64 KB Flash型程序存储器,20 KB SRAM,片内集成有模数转换器(Analog to Digital Converter, ADC),脉宽调制器(Pulse Width Modulation, PWM)及通用同步/异步收发器(Universal Synchronous Asynchronous Receiver and Transmitter, USART)接口等外设资源. 借助这些资源极大地简化了电路设计的复杂度. 与8位和16位单片机相比,可以实现较为复杂的算法和具有良好的系统扩展性,因而在工业控制众多领域中得到了广泛应用.

用户卡读写芯片MFRC531支持ISO/IEC14443 Type A和Type B的所有层和MIFARE经典协议. 该芯片利用先进的调制和解调技术,集成了在13.56 MHz下所有类型的被动非接触式通信方式和协议. 支持快速Crypto1加密算法,可根据不同需要选择8位并行和SPI模式与主机通信,具有应用灵活、安全性高、交易快速、兼容性好等特点[10].

2 硬件电路设计

2.1 射频卡读写电路

读写卡电路原理如图2所示,主要由MFRC531读写芯片、13.56 MHz晶振及天线匹配电路组成. 该芯片的模拟电路包含了一个低阻抗桥驱动器输出的发送部分,读写距离可达100 mm;接收器可以检测到并解码非常弱的应答信号;天线则主要由C5~C10、L1、L2构成的LC低通滤波器、LC谐振电路、天线线圈AN及电阻R1和R2构成的匹配电路组成;8位并行数据接口D0~D7引脚分别连接到STM32F103C8T6的GPIOs PB8~PB15引脚,实现高速非接触式通信的要求.

图2 射频卡读写电路图

为了实现芯片的最佳读写性能,MFRC531的模拟部分、驱动部分、数字部分分别使用单独电源和接地,减少相互间的干扰,提高读写的成功率. 图2中电源管脚及使用标号如表1所示.

表1  MFRC531电源管脚及电源标号分类

2.2 电量读取电路

处理器STM32F103C8T6通过RS485通信接口与电能计量模块间的信息交互,电能计量模块的通信接口电路如图3所示. 采用MAX485芯片完成处理器串口通信到RS485通信协议转换,实现电能消费数据的读取功能. 为了解决RS485总线传输电缆的阻抗不连续、产生突变值,影响正常通讯的问题,在MAX485芯片A、B端口两端并接电阻R10=120 Ω,实现电路阻抗匹配. 该电能计量模块遵循DL/T645-2007通讯规范,字节格式如图4所示,包括1位起始位、8位数据位、1位偶校验位及1位停止位共11位,先传最低有效位D0位,后传最高有效位D7序列顺序传输. 数据帧传输格式如表2所示.

图3 RS485总线接口电路

图4 字节传输格式

说明帧起始符地址域控制码数据域长度数据域校验码结束符代码68HA0A1A2A3A4A5CLDATACS16H

数据域DATA:数据域包括数据标识和数据、密码等,其结构随控制码的功能而改变. 数据传输时逐字节加33 H处理,接收时减33 H处理. 校验码CS:从帧起始符开始到校验码之前的所有各字节的模256的和,即各字节二进制算术和,不计超过256的溢出值. 所有数据项均按图4规定的字节格式传输. 处理器STM32F103C8T6对电能计量模块进行电量读取时,通过串口向计算机发送读取过程数据,波特率设置为1 200,借助计算机串口调试工具对该电路模块的测试结果如图5所示.

图5 处理器与电能计量模块信息交互测试结果

其中,第一行数据为处理器发送电能计量模块接收,作用为读电能计量模块地址;第二行数据为电能计量模块发送处理器接收,得到电能计量模块包含地址的数据,下划线部分所示,数据逐字节减33 H处理,再按高字节在右,低字节在左的记录习惯,可得到地址数据为:40 14 12 01 25 29;第三行数据为处理器发送电能计量模块接收,读取电能数据;第四行数据为电能计量模块发送处理器接收,下划线部分数据转化后,得到电能数据为:65 00 00 00,即实际电量0.65 KWh;其中FE为设备激活字符,数据发送方在发送数据帧之前,先发一个或几个字节的FE,用以唤醒数据接收方准备接收数据.

2.3 RS232通信接口电路

本系统可以成为独立应用的模块,通过RS232接口电路实现与充电桩中主控制器或上位机通信,该接口电路MAX232转换芯片构成,原理图如6所示. 这里用到STM32F103C8T6的串行通信口RXD2、TXD2,通过端口J2与上位机通信.

图6 RS232接口电路

3 数据加密算法

RFID卡信息的写入和读取是基于应用协议数据单元(Application Protocol Data Unit, APDU)命令. 为了保护用户数据安全,在处理器STM32F103C8T6中实现3DES加密算法,实现RFID卡中的数据逻辑加密,防止RFID卡被复制、破解及非法消费. 3DES算法是一种基于分组对称密码消息认证码的构造方式. 它是对每个明文数据块使用三次DES加密算法,每次加密可以使用三个不同的密钥:K1、K2、K3,与DES算法相比,3DES是通过增加密钥的长度来提高外来攻击的防御能力的. 本文设计了K1=K3的加密方法,密钥的长度为128 bits,该算法加密、解密原理如图7所示. 其中,DESK1(•)为加密算法,DESK1-1(•)为解密算法,K1为使用的64 bits密钥,P为输入的明文,C为加密后的密文.

图7 3DES算法加密和解密原理

通过对明文字符串str1=“11223344”、str2=“11223345”以及str3=“11223345”编、解码验证3DES算法的有效性,并将测试结果通过串口输出到上位机的串口调试工具中显示,如图8所示. 图8(a)为字符串str1经过3DES算法加密后,输出到串口调试工具的64 bits密文二进制串,由于串口调试工具没有实现3DES解密算法,因此,64 bits密文二进制显示为乱码;图8(b)是图8(a)的密文数据经过3DES算法解密后的结果,显示字符串为“11223344”. 图8(c)和图8(d)是对字符串str2所做的相应测试结果. 字符串str1和str2之间相差一个字符,它们分别对应的64 bits密文二进制序列之间的相关系数为0.093,当str3=“11223345”与str1相差两个字符时,其对应的64 bits密文二进制序列之间的相关系数又有所减小,仅为0.0635,均为微相关(0.00 - ±0.30)程度;加密后数据的相关性如表3所示. 测试结果表明,输入数据只要有一位不同,采用3DES算法加密后,数据间的相关性较小,从而提高了外来恶意攻击的难度,有效保护了用户数据的安全.

(a)       (b)

(c)       (d)

变量名称变量取值相关系数str111223344str2112233450.0938str111223344str3112233550.0635

4 系统测试

基于RFID的电动汽车充电桩结算系统作为充电桩的一个独立模块,该模块在电动汽车交流充电桩中进行测试,此交流充电桩采用飞思卡尔MC9S12XEQ512为主控制器,也是结算模块的上位机,充电对象为奇瑞汽车股份有限公司生产的纯电动乘用车,型号为SQR7000BEVJ00. 图9为测试系统程序流程,主要包括系统初始化、系统自检、用户信息识别、读取用户数据和3DES算法解密、充电过程实时监测及结算后写入3DES算法加密数据等部分组成. 图10为充电过程实时监测时的相关参数显示界面,以对突发状况及时处理,保护充电设备和受电设备安全.

从测试结果来看,本文设计的基于RFID的电动汽车充电桩结算系统硬件电路稳定、系统程序运行可靠,3DES解密加密和解密算法的应用有效提高了RFID智能卡防止恶意攻击的能力,保护了用户数据安全.

5 结束语

以嵌入式技术和RFID技术相结合,设计了电动汽车充电桩充电费用结算系统. 该系统以嵌入式微处理器STM32F103C8T6为控制核心,以射频通信收发芯片MFRC531实现非接触式智能卡读写功能. 处理器通过RS485通信接口与电能计量模块间的信息交互,实现电能消费数据的读取及费用核算. 并采用3DES算法对数据加密,对智能卡用户数据实施保护,有效地提高了RFID智能卡数据被复制、被篡改的防护能力,增强了安全性. 测试结果表明,系统具有较高可靠性、稳定性、灵活性及实用性. 该设计成果为电动汽车充电基础设施的产业化运行及服务结算方式提供了一定的借鉴和参考意义.

图9 系统程序流程

图10 系统充电监控界面

参考文献:

[1] 张建伟,杨芳,秦俭,等.电动汽车交流充电控制导引系统设计[J].电测与仪表, 2014,51(5):78-82.

[2] 戴鹏,顾丹珍,张志伟.适用于电动汽车优化充电的管理方法[J].电源技术,2015,39(2):277-279.

[3] 桑林,徐洪海,管翔.电动汽车交流充电接口控制导引电路试验设计[J].电测与仪表, 2013(2):112 -115.

[4] 张允,陆佳政,李波.利用有源滤波功能的新型电动汽车交流充电桩[J].高电压技术,2011,37(1):150-156.

[5] 叶翔,徐展,胡翔,等.低成本有源RFID双向认证加密方案[J].计算机应用,2014,34(2):456-460.

[6] 潘新娜,鲍可进,唐宏斌.基于ARM的双界面IC卡读写器的设计与实现[J].计算机工程与科学,2014,36(5):991-996.

[7] 李浪,邹祎,贺位位,等.EPCBC密码算法的FPGA优化实现研究[J].电子科技大学学报,2015,44(1):97-100.

[8] 胡冶,李翔.基于MD5和DES算法的RFID标签签发和验证机制[J].物联网技术,2015(3):70-71,76.

[9] 任世超,汪献忠,陈富强.基于ARM 的SF6在线仪表校验装置[J].仪表技术与传感器,2014(12):39-41.

[10] 李珍香,李国,李德兴.基于ARM的RFID智能安全管理系统设计与实现[J].计算机工程与设计,2010,31(12):2744-2748.

猜你喜欢
串口电能加密
一种新型离散忆阻混沌系统及其图像加密应用
基于NPORT的地面综合气象观测系统通信测试方法及故障处理
浅谈AB PLC串口跟RFID传感器的通讯应用
苹果皮可以产生电能
电能的生产和运输
一种基于熵的混沌加密小波变换水印算法
海风吹来的电能
澎湃电能 助力“四大攻坚”
加密与解密
船舶电子设备串口数据的软件共享方法