钱承山,丁金卉,李 俊,孙 鹏
(南京信息工程大学信息与控制学院,南京210044)
目前,在安排与会人员的席位时,通常使用的是普通硬纸板或透明塑料牌制成的三角牌。会议组织单位根据安排将与会人员的标签手写或者打印在纸片上,然后插在三角牌内,放置在各会议代表的座位前,以方便与会者入座。每次会议结束后这些纸片都要作废,造成浪费并且污染环境,并且每次开会前准备纸片这项工作十分繁琐,尤其是在会议出席人员临时变动时更显得不便;组织大型会议时,工作量大,需要工作人员准备相当长的时间才能够完成。
RFID通称电子标签技术,作为一种快速、实时、准确采集与处理信息的高新技术和信息标准化的基础,被列为21世纪十大重要技术之一。RFID技术通过对实体对象的唯一有效标识,被广泛应用于生产、零售、物流、交通等各个行业[1]。
本文提出了基于RFID的会议席位卡系统,席位卡系统包含席位卡终端和上位机软件,其具体要求与功能为:席位卡终端要求具有从射频卡中读出数据的能力,本席位卡终端系统同时具有配合上位机向射频卡写入数据的能力。写入射频卡中的数据就是要显示的席位信息在12864屏幕字库中的编码,每次会议开始前只要把对应编号的射频卡写入席位信息对应的字库编码,待将要正式开会的时候打开席位卡终端,将射频卡靠近席位卡终端的射频模块,按下按键,席位卡终端就能读出射频卡中的数据并且将对应的席位信息显示在液晶屏上。通过这种方法,就可以有效减少会议组织人员工作量,并且使用成本低、能够重复利用。
完整的基于RFID的席位卡系统包括:读写器、通讯总线、液晶屏、按键组、天线、标签等。系统总体结构如图1所示。由MCU(AT89S52)控制读写器模块完成对电子标签的读写操作,将获取的数据在液晶屏显示和存储器进行相关操作。MCU集中控制外设,负责和外设交换数据,与RF模块通信。RF(射频)接口负责调制解调信号,并从载波信号中提取数字信号[2]。席位卡系统组成如图1所示。
图1 席位卡系统组成框图
2.1.1 射频模块
射频模块对标签的读写是通过发射高频电磁波,电子标签内置的线圈在电磁感应原理下产生电流驱动内置的芯片,进行应答。读写器的射频模块接收到回波信号将其调制成基带信号,提取有用的信息并送到AT89S52进行处理,射频模块功能框图见图2。
图2 射频模块的功能框图
该模块以MFRC522为核心芯片,应用于13.56 MHz非接触式IC卡的读写。支持该频率下CLASS1非接触通讯协议,支持多种加密算法。不需要增加有源电路就可以驱动近距离天线,最远作用距离可达10 cm。采用正交解调电路解调RX引脚的负载波信号。天线部分原理图如图3所示,射频模块原理图如图4所示。
图3 天线原理图
图4 射频模块原理图
MFRC522是 Philips公司开发的一款13.56 MHz非接触式低功耗高集成读卡基站芯片。该读卡芯片系列利用了先进的调制和解调概念,完全集成了13.56 MHz下所有类型的被动非接触式通读方式和支持ISO14443A协议[3]。MFRC522传输速度最高达424 kbit/s,内部的发送器部分不需要增加有源电路就能够直接驱动近距离天线,接收部分提供了一个坚固而有效的解调和解码电路,用于接收ISO14443A兼容的应答信号。数字处理部分提供奇偶和CRC检测功能。MFRC522具有3种接口方式可方便地与任何MCU通讯:SPI模式、UART模式、I2C模式。甚至可通过RS232或RS485通讯方式直接与PC机相联,给终端设计提供了前所未有的灵活性[4-5]。MCU通过 SPI接口与 MFRC522通信。本设计采用的是SPI接口方式连接AT89S52和射频模块,具体连接如图5所示。
2.1.2 液晶显示模块
为了使得本系统拥有良好的人机交互界面,采用液晶屏进行显示每个席位的席位信息。本设计采用OCMJ4X8C液晶显示屏,是一种具有4 bit/8 bit并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64,内置8192个16×16点汉字,和128个16×8点ASCⅡ字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面[6]。主要技术参数和显示特性如下:
电源:低电源电压(VDD:+3.0 V~+5.5 V);
背光方式:侧部高亮白色LED,功耗仅为普通LED的1/5—1/10;
显示分辨率:128×64点;
字库:内置汉字字库,提供8192个16×16点阵汉字;
LCD类型:STN;
通讯方式:并行或串行两种控制方式,本文采用的是并行连接的方式。
2.1.3 电源模块
为了给系统提供稳定的电压,本文采用LM317三端稳压管,设计了一个电压稳压电路,提供+5 V电压。LM317是美国国家半导体公司的三端可调正稳压器集成电路。LM317的输出电压范围是1.2 V至37 V,负载电流最大为1.5 A[7]。它的使用非常简单,仅需两个外接电阻来设置输出电压。此外它的线性调整率和负载调整率也比标准的固定稳压器好。LM317内置有过载保护、安全区保护等多种保护电路。图6是电源模块电路原理图。
图5 MCU与RF模块的连接方式
2.2.1 系统工作流程
在本系统中AT89S52和射频模块之间的通讯采用的是SPI方式,当然也可选择I2C、或UART方式,可以根据不同情况进行选择。射频卡里存储的主要是要在LCD上显示的信息的字库编码,可以通过上位机通过串口向射频卡写入信息。MCU首先对MFRC522进行初始化配置,寄存器设置好后,MFRC522就可以接收MCU的命令执行操作,实现AT89S52与Mifare(感应式智能IC卡)卡片通信。Mifare卡可以根据接收到的指令进行相应操作。但是MCU并不是通过简单的指令就可以读写IC卡片,需要一系列的操作才能完成通信。主要包括:
图6 电源模块电路原理图
(1)请求唤醒;
(2)防重叠(防止多张卡片重叠造成的数据错误);
(3)选择卡片;
(4)密码认证;
(5)读写操作。
MCU对Mifare卡片的这一系列操作流程必须按固定的顺序进行。
图7 席位终端读卡程序流程图
2.2.2 席位卡终端软件部分介绍
席位卡终端从射频卡中读出数据的程序流程图如图7所示。当有Mifare卡进入到射频天线的有效范围,此时按下按键,射频模块接收到读卡命令,将数据从射频卡读出并通过SPI接口发送给AT89S52,AT89S52收到数据后将对应的席位信息显示在12864液晶屏上。
Qt是1991年奇趣科技开发的一个跨平台的C++图形用户界面应用程序框架。它提供给应用程序开发者建立艺术级的图形用户界面所需的所用功能[8]。本设计的上位机软件正是用QT开发,选用的集成开发环境是Qt Creator。
2.3.1 数据通信协议介绍
表1~表3是上位机和席位终端之间数据传输数据所遵循的协议介绍。下面分别对从射频卡中读出数据、往射频卡中写入数据、修改射频卡扇区密码等操作的协议进行简要的说明。
表1 上位机从射频卡中读数据
表2 上位机从射频卡中读数据
表3 上位机从射频卡中读数据
(1)上位机从射频卡中读出数据:表1是上位机从射频卡中读数据所遵循的协议,协议的开头部分是数据的总长度,A1是读标志,之后的12 byte的数据是射频卡扇区块的密码,最后2 byte的数据是用来指定读哪一个扇区块,射频卡一共有六个扇区,本设计所用的数据都是放在第一个扇区,也就是编号为0的扇区。
(2)往射频卡中写入数据:往射频卡中写入数据是通过遵循上位机和下位机之间约定的协议写入数据的,具体的协议如表2所示。
(3)修改射频卡密码:射频卡的每个扇区默认的密码是FFFFFFFFFFFF,表3是修改射频卡扇区块密码所遵循的协议。
本设计利用射频卡数据的可修改性,设计了一种基于RFID的席位卡系统。首先通过上位机往射频卡中写入数据,写入的数据就是要显示的汉字在液晶字库中的编码;席位卡终端可以实现读取射频卡中的数据并且根据读取的数据显示相应的席位信息到液晶显示屏。在本设计经过验证,能够有效减少会议组织人员工作量、使用成本低、更改方便,提高了会议的智能化管理。解决了现有技术所存在的组织人员工作量大、不能重复利用等技术问题。
[1]王竹林.基于RFID无线传感网的智能家庭安防巡逻定位系统的设计[J].电子器件,2009,32(4):809-811.
[2]赵洪新,颜力.一种用于RFID传感阅读器的载波抵消射频前端案[J].传感技术学报,2008,21(9):1546-1550.
[3]唐静,姬东耀.基于LPN问题的RFID安全协议设计与分析[J].电子与信息学报,2009,31(2):439-443.
[4]王保云.物联网技术研究综述[J].电子测量与仪器学报,2009,23(12):1-6.
[5]李波,谢胜利,苏翔.嵌入式RFID中间件系统的研究与实现[J].计算机工程,2008,24(15):92-94.
[6]郭天祥.新概念51单片机C语言教程[M].北京:电子工业出版社,2009:167-168.
[7]王翠珍,唐金元.可调直流稳压电源电路的设计[J].中国测试技术,2006,52(5):113-115.
[8]王存建,张建正.嵌入式Linux下Qt/Embeded的应用[J].计算机技术与发展,2006,16(11):179-181.