物联传媒 旗下网站
登录 注册
RFID世界网 >  技术文章  >  支付  >  正文

基于非接触IC卡自动计时停车收费系统设计开发

作者:李宏佳 魏权利 徐晓晓 郭思文
来源:中国一卡通网
日期:2008-01-28 15:32:05
摘要:根据停车场智能化管理的需要提出了系统设计思想。系统硬件设备由入口设备、出口设备和发卡设备组成,论述了它们的硬件电路设计和软件设计,并重点讨论了IC卡读写的硬、软件设计。

    随着国民经济飞速发展.城市汽车数量剧增,停车难问题愈来愈凸现,在增加停车场数量的同时,提高停车场的智能化管理是解决这个问题的关键。本设计开发的自动计时停车收费系统,以非接触IC卡技术为基础.实现了停车场收费管理现代化,它具有效率高、管理科学、安全可靠等特点。 

1 系统整体设计 

    整个系统硬件设备由停车场人口设备、停车场出口设备和发卡设备三部分组成。人口设备和出口设备位于停车场人口和出口单机工作,而发卡设备位于管理中心,由上位机控制。三部分设备的硬件设计和主要功能如表1所示。 

表1 设备硬件组成与功能

    硬件组成上,发卡设备直接由上位机控制,所以无需键盘、LCD模块等硬件,出口设备包含人口设备和发卡设备所有的硬件,它们的设计只需在出口设备硬件基础上去掉相应模块,所以在后面的硬件设计介绍中以出口设备为代表 三种设备的不同功能由软件编程实现,出口程序经过精简和简单的修改可得到人口设备程序,所以在软件设计中主要讨论了出口设备和发卡设备的程序流程。在整个系统中,非接触IC卡是三部分硬件设备相互联系的桥梁,非接触IC卡的读写程序设计是系统实现的关键,本文将重点讨论。

2 IC卡卡内存储空间的分配 

    本设计使用PHILIPS公司的MF1 IC卡,卡内集成1KB的E2PROM,并划分为16个可独立使用的扇区,每个扇区又分为4个16字节的存储块,每个扇区的第4个存储块保存该扇区的密码和访问控制,IC卡中的16个扇区可用于16个不同系统中。本设计使用扇区2,具体存储空间划分:块0的低4个字节存储用户序列号,块1存放存储用户余额,块2低7个字节存放停车起始时间 块3存放两套6字节密码和4宁节访问控制。

3 硬件设计 

3.1出口设备硬件结构 

    出口设备硬件结构如图1所示.AT89C55单片机作为控制器,它片内集成20KB的程序存储器,满足本设计对程序存储器容量的要求:ZLG7289芯片外接4x4的键盘;DS1302为停车计时提供准确时钟;LCD液晶显示各种信息,如按键信息、时间和停车费用等:AT24C256存储用户结算信息:通过RS-232 I亍上位机通信:通过ZLG500对IC卡进行读写操作:MCU通过P1.7端口向挡车闸电机控制器发送开关车闸信号。为充分利用单片机有限的端口,外围设备多采用了具有I2C接口f如AT2,4C256、DS1302)和SPI接1:3(如ZLG7289、ZLG500)的器件。

图1 出口设备硬件示意图

3.2非接触IC卡读写模块ZLG500

    ZLG500负责对非接触IC卡的读写操作。需外接PCB天线。ZLG500模块连接电路如图2所示.传输启动端SS接MCU的外部中断O,MCU和ZLG500之问发送数据,首先由发送方将SS拉低并且在发送结束后将SS拉高,本设计中MCU以下降沿中断触发的方式接收ZLG500发送的数据.并将外部中断O设置为最高优先级,保证第一时间接收到IC卡数据。SCLK为SPI接口的时钟线,总是由MCU产生。SDATA为双向数据线,在数据传输开始前,由数据发送方将SDATA拉低,数据接收方同意接收数据则将SDATA拉高,作为接收响应信号,之后SDATA作为数据传送线。模块自带看门狗,复位端RST可悬空或接低电平。CTRL和BZ接发光二极管和蜂呜。

图2 ZLG500模块电路连接图

3.3 AT24C256存储器存储空间划分 

    采用具有32KB存储容量AT24C256存储收费结算信息。存储空间划分:第1、2字节为出口设备号,第3、4个字节为已打卡数量,第5到第8个字节为收费总金额,后面为用户数据区,每位用户数据由13字节组成.包括4字节用户序列号和2字节消费金额(BCD码1.最多记录5460个用户数据。 


3.4 LCD显示 

    采用SMG12864液晶显示模块,可显示4行8列共32个16x16的汉字。它自带2个KS0108B和1个KS0107B显示驱动控制器.2个KS0108B分别控制左右两个半屏64x64)像素点的显示.KS0107B作为64行的行驱动控制。液晶模块采用直接控制方式.P2.2和P2.3分别接CS1和CS2用于左右半屏控制器的片选,RS(接P2.O)为内部功能寄存器选择,R/W(接P2.1)为读写控制信号.P2.7接LCD驱动器的使能端E。
 
3.5键盘设计 

    键盘接口电路采用ZLG7289芯片.其按键有效输出端,KEY)接MCU的INT1./KEY在有效按键时为低电平,平时为高电平。 EY的下降沿触发按键中断之后,MCU根据ZLG7289发送的键值进行相应处理。设计按键有:数字键0—9、“.”、“功能”、“退出”、“退格”、“确定”。

4 软件设计 

    软件设计采用了模块化设计方法.首先设计出设备外围各硬件的驱动程序,将各硬件的驱动函数声明在相应头文件(.h文件)中,然后在主程序中包含这些头文件,按系统功能需要调用各个模块的驱动函数。限于篇幅,本文只详细讨论了主程序流程和读写卡程序。 

4.1主程序 

    4.1.1出口设备主程序流程 

    (1)启动后对LCD、E2pROM、ZLG500和时钟等初始化;
    (2)读取当前时间、LCD显示待机界面;
    (3)等待射频IC卡的请求、按键请求或串13通信请求。有任一种请求则进入相应处理程序,并且处理程序返回之前。屏蔽其它两种请求。① IC卡请求,验证用户IC 合法性,若为非法卡.则放弃IC卡请求,若为合法卡,从DS1302和IC卡中获取当前时间和停车起始时间,计算出停车费用,从IC卡获取用户余额。若判断消费金额超过用户余额则蜂呜报警并在LCD 中提示。否则将扣除消费金额并将余额写入IC卡中,最后将用户序列号和消费金额存储到AT24C256中,上位机根据存储器中用户消费金额更新用户余额。② 按键请求.“功能”键被按下会中断触发按键处理程序,液晶显示“请输入密码”,正确输入密码后,在液晶中显示各种功能,如“设置时间”、“查询总金额”、“记录个数”等,按数字键选择相应功能,按“退出”键可以退到上一层操作界面,按“确定”键可确认输入,“退格”键取消前一步输入。③ 串口通信请求,出口设备与上位机连接时.根据上位机命令.可进行存储器数据上传、设置设备时间等操作。
(4)向挡车闸电机控制器发出开关信号。 

    4.1.2 发卡设备主程序流程 

    开机后对读写卡模块和串口进行初始化. 然后等待上位机命令: 

    (1)若为“发新卡命令”.接着接收上位机发来的新用户数据,当在有效范围内检测到合法卡时将数据写入IC卡内扇区2
中相应位置中:
    (2)若为“充值命令”,将有效范围内IC卡的用户信息传给上位机,然后等待上位机发来“写卡命令”:
    (3)收到“写卡命令”,紧接着接收上位机发送的数据,然后将接收到的数据写入IC卡中。 

4.2读写IC卡模块通信协议与程序设计 

    4.2 1 MCU与ZLG500之间的通信协议 

    MCU与ZLG500之间的通信接图3所示的数据格式进行。

图3 MCU与ZLG500之间通信的数据格式

    数据块各字段描述如下: 

    ① SeqNr:数据交换包的序号;
    ② Command:MCU向ZLG500发送命令的代码,例如Read命令为0x46。Write命令为0x47:
    ③ Status:ZLG500对MCU发出命令的响应;
    ④ Len:要发送数据的个数,以字节为单位;
    ⑤ Data[0⋯N1:要发送的Len个字节的数据;
    ⑥ BCC:BCC校验码,计算公式为:Byte[n]=NOT(Byte XOR Byte XOR....XOR Byte[n一11)。 

    MCU与ZLG500之间通信必须先由MCU发起,MCU按照数据格式向ZLG500发送命令和数据,ZLG500执行完命令后,将命令执行的状态和响应数据按照数据格式发回给MCU。

    4.2.2读写IC卡过程的代码实现 

    读写IC卡程序分为底层驱动函数和高层应用接口。底层驱动函数使用汇编语言设计, 主要包括SPI总线数据发送函数(_SPI_SEND)和接收函数(SPI_RCV1,目的是为了提高收发数据的准确性和访问速度。高层应用接口包括对IC卡的各种操作, 采用C51编程实现。

5 结论 

    现在我国私家车刚刚进入普及阶段,该系统的提出具有一定的前瞻性,系统是在实际考察和实验基础上开发的,对现有停车场只需进行简单的改造,就可实现智能化管理。目前该系统已成功应用于翔达运输公司的停车场管理中,进一步推广使用必将带来巨大的社会效益和经济效益。

    本文作者创新点:

    1)提出自动计时收费停车的实现方案: 
    2)采用SPI接El和FC总线接El的器件,充分的利用了单片机有限的端El;f3)读写卡采用了C语言和汇编语言混合编程,
优化了程序。 

    经济效益:24万元/年。在翔达运输公司的2个货运停车场中使用,在1个月的总收人为:2万元,昕以年收人为2万元x12个月=24万元/年。

作者简介:李宏佳(1981-),男(汉族),山东省青岛市人,青岛科技大学控制理论与控制工程专业,硕士,主要从事嵌入式系统研究:魏权利(1960一),男(汉族),山东省青岛市人,青岛科技大学信息科学学校,硕士,教授,硕士生导师,主要从事计算机网络、嵌入式系统、人工智能研究;徐晓晓(1983一),女(汉族),山东省青岛市人,青岛科技大学控制理论与控制_T:程专业,硕士,主要从事嵌入式系统研究。

(266042 山东青岛青岛科技大学信息科学技术学院)李宏佳 魏权利 徐晓晓 郭思文
通讯地址:(266042 山东青岛科技大学四方校区280信箱) 李宏佳