射频识别(Radio Frequency Identification,以下简称RFID)技术是近几年发展起来的一项新技术,它是射频技术和IC卡技术有机结合的产物。较之普通的磁卡和IC卡,RFID技术具有使用方便、数据交换速度快、便于维护和使用寿命长等优点。特别是它解决了无源(卡中无电源)和免接触这两大难题。与磁卡、IC卡等接触式识别技术不同,RFID系统的应答器和读写器之间无须物理接触就可完成识别功能,因而可实现多目标识别、运动目标识别,因而可应用在更广泛的场合。文中介绍的射频识别系统和相应的数据校验算法是射频识别技术在汽车防盗器中应用的一次成功尝试。
典型的射频识别系统由应答器(Transponder)、阅读器(Reader)以及数据交换和管理系统等组成。该系统的基本工作原理为:阅读器读写终端不断地发出一组固定频率(一般为134.2kHz)的电磁波信号,这样,当非接触式卡(应答器)片内的一个LC串联谐振电路进入阅读器读写终端的工作区域内,且其工作频率与读写终端发送信号的频率相同时,在电磁波激励下,LC谐振电路产生共振。共振使卡内的电容有了电荷,此时在电容另一端接的一个单向导通电子泵就可以将电容内的电荷送到另一个电容内并存储。当所积累的电荷的电压值达到2V时,这个电压就可作为应答器的工作电源。此时,应答器响应阅读器的要求,并将信息调制,同时发出以供阅读器解调读取。应答器内的E2PROM用来存储其唯一电子标签的ID号(编码长度为64位)以及其它用户数据。
2、射频识别汽车防盗报警器设计
本文研制的射频识别系统是以美国德州仪器公司的TMS3705为射频信号读写芯片,并以该公司的RI-TRP-RR2B(只读型)作为应答器。该设计中的基站芯片与微处理器(MCU)的通信只需两根通用I/0口线即可,因而使用起来十分方便。调制解调电路如图1所示。
应答器发射的信号经阅读器天线接收、基站处理后即可送至微处理器的I/0口。送入阅读器的是FSK(Frequency Shift Keyed)信号,阅读器只负责信号的解调工作,而信号的解码由微处理器来完成。微处理器可根据输入信号的高、低电平持续时间进行解码操作。
2.1 RI-TRP-RR2B射频卡中的数据存储格式
RI-TRP-RR2B应答器内共有14字节的数据,其存放顺序如表1所列。用户数据区共有10个字节,其中第2~9字节为用户64位id区,第10、11字节为CRC校验码。
2.2 基于射频识别技术的汽车防盗器
该系统以ATMEL公司的AT89C51单片机为核心,其硬件组成如图2所示。该系统由射频识别装置、外部存储器、语音电路、时钟电路、电源管理电路、看门狗和检测控制电路组成。此系统的兼容性很高,可与其它防盗器配套使用,是一种性价比较高的汽车防盗装置。该防盗报警系统的主要功能特点如下:
(1) 普通汽车防盗器主要是采用键盘输入方式对司机身份进行识别的,这种方式给驾驶带来诸多不便,而且由于其密码组合有限,较容易被窃取和破译。而采用射频识别技术来识别身份,则可有效解决这一问题。车主只须携带应答器(32mm)靠近阅读器的感应线圈(进入7cm左右的感应范围),即可在瞬间完成身份识别,并且其密码不宜破译,因而大大提高了防盗效果。如果原有的应答器丢失,那么,使用者只须按下“学习”键,然后将备用的应答器靠近感应天线即可完成ID的学习,原有的ID会自动清除,同时使丢失的应答器失效,备用应答器生效。
(2) 它的外部存储器采用ATMEL的AT24C01串型E2PROM。AT24C01是具有I2C总线的1K位电可擦除存储器,可用来存储车主的ID和突然掉电前单片机的标志信息。由于它是非易失性存储器,所以,掉电后其存储的信息不会丢失。重新上电后,系统又会回到掉电前的状态,这样可以有效地防止人为对汽车电源的破坏,提高安全性。
(3) 语音电路以ISD1420集成语音芯片为核心,结合调理和功放电路便可实现多段语音的录放,而且其音质良好。利用该电路可以方便地实现防盗系统的安全提示和报警功能。
(4) 电源管理电路和看门狗电路采用MAX705来完成。该芯片兼有电源管理与看门狗的功能。其中电源管理与单片机软件结合主要可用来对突然掉电进行数据保护,使单片机将掉电前瞬间的状态信息保存到E2PROM中,以备重新上电时读取。而看门狗电路则可有效地进行单片机监控,防止汽车上的各种干扰使单片机陷入死循环,从而提高整机的稳定性和可靠性。
(5) 检测控制电路用来检测汽车的各种状态信息,以供单片机决策判断之用。其中包括对车门的检测、对电源的检测、对刹车信号的检测和对按键的检测。控制电路则包括方向灯的控制、电源的控制、中控锁的控制和轮毂锁的控制。
3、射频识别系统的软件设计
射频识别系统的软件设计核心是对射频卡发出的信号进行读取和校验。其中身份识别子程序流程图如图3所示。本系统中所用到的射频卡是只读卡,所以只需将其唯一的64位ID读出,然后经校验无误后与E2PROM中已存的ID进行对比,即可确定车主身份。
3.1 射频信号的读取
图4给出了信号每个字节的格式,它由10位组成。第一位是起始位,固定为1,最后一位是停止位,固定为0,第2~9位是实际发送的数据(最先收到的位为LSB),由于是负逻辑,故数据需反相处理。
图4 1个字节的传输格式
图5所示是阅读器读取数据的时序。射频卡发出的数据采用FSK调制。操作时可将TXCT置为0,延时50ms,然后再将TXCT恢复成1。此后约经过3ms,SCUO开始输出数据。该数据的第一个字节即为起始字节,总共输出14字节数据。
图5 射频信号读取控制
3.2 CRC数据校验算法
CRC校验是为了检查信息字段是否传送正确而设置的,它是信息字段的函数。本文采用16位循环冗余校验码(CRC-CCITT),其生成的多项式为:
图6 CRC校验实现原理
CRC校验码由于其实现简单、准确率高而在通讯中广泛采用。本文采用的CRC-CCITT能检测出所有的双错、奇数位错、突发长度不大于16的突发错、99.997%的突发长度为17的突发错和99.998%的突发长度大于或等于18的突发错。CRC校验码的运算可以用移位寄存器和半加器来实现。具体的校验原理如图6所示。发送端的校验过程如下:
(1) 先将CRC校验码(2个字节)的初始值设定为00H,00H(图6中0~15表示CRC的位0~15)。
(2) CRC校验码全部右移一位,并在A处与要进行CRC校验的数据的第1位作XOR运算。
(3) 经步骤2运算后,A处的结果如为1,则反相MSC(位15),然后检查MSB是否为1,如MSB为1则反相位13和位10,否则转到步骤4。而如果A处的结果为0,则检查MSB是否为1,若MSB为1则反相位3和位10,不是则转到步骤4。
(4) 检查A是否已运算64次,若不是,则重复步骤2到4。
(5) 重复2~4步,做CRC运算,所得最后数值就是CRC校验码。
接收端校验的过程实际是所有信息码加上CRC校验码,然后将其作为一个整体再求一次CRC校验的过程,如果最后结果是全零,则表示CRC校验正确,否则表示错误。
应答器信息的读取必须严格按照其时序进行,否则将得不到所需的正确信息。限于篇幅,本文未列出具体程序。
4、结束语
本文主要介绍了射频识别技术应用于汽车防盗系统的方法和实现。笔者运用射频识别技术研制的新型汽车防盗器,经过数次调试和试用,其性能不仅稳定,而且安全可靠。在实际应用中也取得了良好的效果。实践表明,该防盗器具有技术先进、实用、方便、兼容性好、体积小和功能全等优点,是一种比较理想的汽车防盗系统。