基于嵌入式的移动公交一卡通POS机的设计与实现
2018-01-08周彦明
周彦明
(广西科技大学 鹿山学院 电子信息教研室,广西 柳州545005)
基于嵌入式的移动公交一卡通POS机的设计与实现
周彦明
(广西科技大学 鹿山学院 电子信息教研室,广西 柳州545005)
为了实现IC卡在不同领域的消费,促进电子支付行业的发展,本文对一卡通消费的POS机的实现机理进行研究,提出基于嵌入式的移动公交一卡通POS机的解决方案。对开发过程中的关键技术如无线射频识别技术、移动网络通讯技术进行了深入研究,在硬件上集成无线射频芯片、GPRS通信模块及热敏打印机,在移动POS机上实现公交一卡通消费、账户余额查询、交易数据上传以及交易凭证的打印。经过测试,功能上达到设计目标。
嵌入式;公交一卡通;POS机;移动支付
近年来,随着移动支付技术的高速发展及支付标准的革新,越来越多的商家开始接入移动支付平台,同时IC技术的发展也促进了移动支付平台的发展。传统的公交卡如今已扩展到一些小额支付,给用户带来使用上的便利,真正意义上的实现一卡多用。为了促进一卡通在各行各业中的应用,探究一卡通消费的核心技术,并以此为基础开发出高性能低成本的一卡通终端具有重要意义[1-4]。当今市场对无线IC卡手持POS机的要求比较高,不光要满足基本的功能,对运行的可靠性、安全性及运行速度要求也越来越高[5-8],文中以嵌入式系统为基础研究设计了移动公交一卡通POS机,在移动POS机上实现公交一卡通消费、账户余额查询、交易数据上传以及交易凭证的打印。经过测试,功能上达到设计目标。
1 系统硬件设计与实现
1.1 系统硬件总体设计
该系统硬件部分分为读写模块、显示模块、传输模块、数据交换通道、电源和存储设备。显示部分主要体现终端与消费者之间的人机交互,主要显示一些消费信息,如卡余额、交易成功与否的提示。读写模块完成IC卡内部数据的读取,需要配合天线完成不接触读取数据的功能。数据交换通道用于终端与系统之间的数据交换,利用该通道,终端可以读取用户信息并上传交易记录。在硬件设计方面,中央处理器同外围设备通过电路相连,作为一个整体,其中处理器为系统核心部件,直接决定终端性能,此次处理器选用STM32F103ZE新芯片,该芯片基于Cortex-M3结构,执行代码效率高。终端整体硬件结构如图1所示。
图1 系统结构图
1.2 无线射频模块及驱动程序设计
无线射频模块采用RC522射频卡,由于射频卡为无缘器件,所以需要通过外围震荡电路实现数据的接收和发送[9]。RC522射频芯片内部由指令控制器、寄存器、中断控制器、计数器等构成,内部电路协调工作,通过外部引脚提供可操作的接口,RC522的外围电路原理图如图2所示。
图2 无线射频芯片接线图
本系统采用SPI的通信模式,在程序中需要对个管脚做相应的配置操作。代码如下:
RC522的功能主要依赖于指令的解析,驱动程序通过向RC522发送不同的指令完成寻卡、验卡及校验。
1.3 无线网络通信模块及驱动程序设计
此次终端选用SIM900无线网络芯片作为无线通信的解决方案。该芯片内部集成多个功能模块,且支持AT命令集,对外提供UART接口方便与外界进行数据交换[10-12]。与处理器之间的通信通过串口通信实现,通信时相应的引脚连接关系如表1所示。
SIM900驱动程序的设计主要涉及对串口的读写和AT指令的发送,使用串口时要根据具体的项目需求,确定串口参数。当串口初始化完成时打开相应的中断响应函数。AT指令是以AT为首的一系列字符串指令,当接收方接收到AT指令后会将AT数据包返回给发送方,每个AT响应包中包含指令执行后的状态,常用的AT指令表如表2所示。
表1 SIM900硬件接口标识表
表2 SIM900指令列表
当使用GSM方式进行远程访问时,首先需要进行联网,在连接过程中包括对PIN码的设置、监测天线信号质量、查询模块是否有注册网络和查询模块是否接入GPRS网络。每个操作都是通过AT指令来完成的。
1.4 热敏打印机模块及驱动程序设计
热敏打印机模块选择FTP-628型号的打印机,该打印机实质上为一种嵌入式设备,包括核心控制器、通信模块、电源模块、热敏打印头及驱动模块[13]。热敏打印头负责对热敏纸进行加热、驱动模块负责带动电机的运转,监测模块监测是否有热敏纸。
对于热敏打印机的驱动程序设计流程为,电源供电之后,待打印的数据由中央处理器经过打印模块将数据传输到移位寄存器中,此后将加热使能引脚设置为高电平,根据移位寄存器中的数据选择加热的针头,加热到一定程度后在热敏纸上进行打印。代码如下:
2 终端程序设计及系统测试
2.1 POS机交易程序设计
使用IC卡在本次设计的移动POS机上消费时,终端设备首先对设备进行监测,判断是否合法,当读取卡内有黑名单标志位时,判定该卡为无效,如果卡片有效,则需要读取卡内余额判断是否足以支付此次消费,并给出相应的提示消息,当产生消费时,通过PSAM生成密钥对用户的信息进行安全保护,并生成MACI,具体的流程如图3所示。
2.2 POS机交易安全技术
此次开发的终端会将消费产生的消费记录上传至结算中心服务器,终端采用非接触的RFID卡片,本身具有一定的安全性,读卡器在对卡片进行读写之前首先会校验密码,密码正确时才能进行读写操作,密钥的算法是通过SAM进行相关指令操作完成。SAM安全存储模块具备密钥存储和密钥提取功能,密钥通常分为身份认证、充值、消费。根据公交车智能卡的规法[14-15],PASM在参与密钥运算之前,需要验证合法性,且验证的过程为双向的,校验的过程为:卡片随机生成一个8字节的数据发给读卡器,同时保留卡内,读卡器受到数据之后进行加密再将加密的数据传给卡片,卡片通过解密运算计算出收到的数据,然后对比自身存储的数据,如果一直则认为认证成功,反之则认证失败。PSAM随机生成一个8字节的数据发给读卡器,读卡器受到数据之后发送给射频卡,卡片通过解密运算计算出收到的数据,读卡器从卡中读取密文传送给PASM,PASM对其进行解密,传给卡片,读卡器将得到的密文与原始数据进行对比,如果一直则认为认证成功,反之则认证失败。流程图如图4所示。
图3 一卡通交易流程图
图4 终端双向验证图
2.3 POS机应用程序测试
为了进一步对应用程序展开测试,确保系统的可靠性,专门开发了运行在电脑上的测试
终端应用程序的工具软件,测试过程及步骤为:
将公交一卡通放置在设备感应区内,通过测试工具软件的串口向终端发送交易请求,通过测试流程表的测试内容,满足了设计的要求。
表3 测试流程表
3 结 论
文中以嵌入式为基础,采用模块化的思想将各个模块有机结合起来,实现了公交一卡通的消费,余额查询,卡历史交易查询,交易凭证打印等功能,同时采用终端双向验证对交易进行加密,提高消费的安全性,并通过测试软件验证,终端满足设计要求。
[1]阙凡博.基于stm32的程序远程升级设计[J].仪器仪表用户,2013(5):12-13.
[2]黄俊祥,陶维青.基于MFRC522的RFID读卡器模块设计[J].微型机与应用,2010(22):131-135.
[3]单莹,刘旭儒,史仪凯.非接触式13.56MHz读卡器的设计[J].工业仪表与自动化装置,2010(3):8-18.
[4]许文杰,丁志刚,张泉.基于ARM处理器的IAP设计及应用[J].计算机应用与软件,2009(3):927-936.
[5]徐飞,曹奇英.PBOC2.0新型金融IC卡读卡器的设计与开发[J].单片机与嵌入式系统应用,2012(1):69-73.
[6]林惠鹏.POS行业转型发展的探讨[J].信息与电脑,2012(3):157-160.
[7]郭明超,饶增仁.射频IC卡POS机软件设计[J].甘肃科技,2009(21):215-219.
[8]韦余红.无线POS机数据传输安全控制策略研究[J].通信技术,2009(2):155-159.
[9]徐艳东.无线POS机的设计与实现[D].成都:电子科技大学,2013.
[10]朱文瑞.基于工行POS机的宁波市自来水抄表系统的设计与实现[D].长春:吉林大学,2014.
[11]隆婷.基于ARM的嵌入式POS系统研究与实现[D].长沙:中南大学,2011.
[12]刘琛.基于GPRS的嵌入式POS系统研究与应用[D].长沙:中南大学,2013.
[13]马姗姗.移动支付读卡器的研究与设计[D].武汉:武汉理工大学,2012.
[14]文先仕.基于ARM Cortex-M3的智能监控器的设计[D].成都:西华大学,2010.
[15]张洋,刘军,严汗宇,编著.原子教你玩STM32[M].北京:北京航空航天大学出版社,2013.
Design and implementation of mobile public transport card POS machine based on embedded system
ZHOU Yan-ming
(Department of Electronic Information,Guangxi University of Science and Technology,Liuzhou 545005,China)
For the realization of the IC card in different areas of consumption,and promote the development of the electronic payment industry,this paper on consumer card POS machine realization mechanism research,puts forward the solution based on embedded mobile bus card POS machines.The development process in the key technologies such as radio frequency identification,mobile network communication technology were in-depth study,integrated radio frequency chip in the hardware,GPRS communication module and a thermal printer,in the mobile POS machine to achieve bus card consumption,check account balances,upload data and documents of the transaction of print.After testing,function to design goals.
embedded; public transportation card; POS;mobile payment
TN915
A
1674-6236(2017)16-0134-04
2016-06-01稿件编号:201606012
周彦明(1968—),男,广西恭城人,高级工程师。研究方向:单片机技术应用。