基于MF-RC500模组的Mifare射频卡识别系统的开发
扫描二维码
随时随地手机看文章
引言
近年来,自动识别方法在许多领域如货物销售、后勤分配、商业部门、生产企业和材料运输领域得到了快速的普及和推广。一种技术上最佳的解决方案是将数据存储在一块硅芯片里。在日常生活中,具有触电排的IC卡是电子数据载体的最普遍的结构。然而,对IC来说,在许多情况下,机械触点的接通是不可靠的。数据载体与一个所属的阅读器之间的数据进行非接触传输将灵活的多。电子数据载体工作时所需的能量通过阅读器非接触地传出来获取。根据使用能量和数据传输方法,我们把非接触的识别系统称作射频识别系统(RFID-Radio Frequency Identification)。本文介绍的是基于MF-RC500射频读写模组、8051单片机以及Mifare1卡的射频识别系统的设计。
系统组成
系统属于近耦合射频识别系统,主要由应答器、阅读器、通讯模块、人机接口等几部分组成。
应答器也称邻近卡PICC(Proximity Card),是射频识别系统真正的数据载体,即我们通常所说的卡片。应答器由耦合元件以及微电子芯片组成。在阅读器的响应范围之外,应答器处于无源状态。通常,应答器没有自己供电电源(电池)。只是在阅读器的响应范围之内,应答器才是有源的。应答器工作所需的能量,如同时钟脉冲和数据一样,是通过耦合单元 (非接触的)传输给应答器的。
阅读器也称邻近耦合设备PCD(Proximity Coupling Device),具有读/写功能。由三部分组成:控制单元、发送器和接收器组成的高频模块、天线。
PCD的高频模块担负以下任务:产生高频的发射功率,以启动PICC,并为其提供能量;对发射信号进行调制,用于将数据传送给PICC;接收并解调来自应答器的高频信号。
PCD的控制单元担负以下任务:与MCU8051通信,并执行MCU发出的命令;控制与PICC的通信过程(主从原则);信号的编码解码;执行反碰撞算法;对PICC与PCD之间传递的数据进行加密和解密。
通讯模块负责上位机(PC端)与下位机(阅读器)的通讯,本系统采用了两种方式:一种是RS232通讯,它应用于PC机对一台阅读器的操作;一种是RS485通讯,它应用于PC机对多台阅读器的操作。两种通讯方式都可将PC机的命令传达给阅读器。
人机接口使系统具有良好的人机交互界面。本系统具有液晶显示、键盘、语音输出等部件。应用者可通过液晶显示或通过语音输出判别卡片的号码、基本个人信息、以及卡片中的余额是否正确。
为了使系统正确稳定的工作,其他电路采用了x25045作为看门狗。如果系统在一定的时间内工作不正常,看门狗可以将CPU复位使其重新工作。另外,x25045还内置512 byte 的EEPROM,可将系统的各种参数(如机号、波特率等)存于其中。
工作原理
系统数据存储在PICC中。PCD的基本任务就是启动PICC,与这个数据载体建立通信并且在应用软件和一个非接触的数据载体之间传送数据。电感应答器 PICC由一个电子数据作载体,通常是由单个微型芯片以及用作天线的大面积的线圈等组成。电感耦合应答器几乎都是无源工作的。这意味着:微型芯片工作所需要的全部能量必须由阅读器PCD供应。高频的强电磁场由阅读器的天线线圈产生,这种磁场穿过线圈横截面和线圈周围的空间。因为频率范围为13.56MHz 的波长比阅读器天线和应答器之间的距离大好多倍,可以把应答器到天线的距离间的电磁场当作简单的交变磁场来对待。阅读器天线线圈发射磁场的一小部分磁力线穿过一定距离的应答器天线线圈。应答器的天线线圈和电容器Ci构成振荡回路,调谐到阅读器的发射频率。通过该回路的谐振,应答器线圈上的电压最大值。将其整流后作为数据载体(微型芯片)的电源。
这两个线圈的结构也可以解释作变压器(变压器的耦合),变压器的两个线圈之间只存在很弱的耦合。阅读器的天线线圈和应答器之间的功率传输效率与工作频率和应答器线圈的匝数、被应答器线圈包围的面积、两个线圈的相对角度以及它们之间的距离成比例。随着频率的增加,所需的应答器线圈的电感,表现为线圈匝数的减少(135kHz:典型为100~l0000匝,13.56MHz:典型为3~10匝)。因为应答器中的感应电压是与频率成比例的,在较高频率阶情况下,线圈匝数较少对功率传输效率几乎没有影响。因为电感耦合系统的效率不高,所以只适用于低电流电路。只有功耗极低的只读应答器(<135kHz)可用于lm 以上的距离。具有写入功能和复杂安全算法的应答器的功率消耗较大,因而一般的作用距离<15cm,尽管个别的可达到80cm。
系统物理基础
在电感耦合射频识别系统中,L1是PCD的发送天线,L2是PICC的天线。
我们引入了耦合系数k来对导体回路的耦合作定性说明,使其与几何尺寸无关。关系式如下:
K=M/sqrt{L1 L2}
(L1、L 2分别为两个线圈的自感系数;M为互感系数)
耦合系数总在两个极限情况0~1之间变化。K=0:由于距离太远或磁屏蔽导致完全去耦。K=1:全耦合。两个线圈紧密耦合,处于相同的磁通量中。只有很简单的天线配置才能进行分析计算。两个平行的、在x轴上同芯的导体回路的耦合系数可按照以下公式计算。式中r为天线半径,x表示进x轴上的两个导体回路之间的距离。
k(x)≈(r^{2}_{PICC} r^{2}_{PCD})/[sqrt{r_{PICC} r_{PCD}} (sqrt{x^{2}+r^{2}_{PCD}})^{3}]
当导体回路之间的距离为0而天线半径相等,耦合系数k=1。此时,导体回路互相重叠,并有相同的磁通量通过。实际上,电感耦合的PICC系统工作时的耦合系数可低至0.01以下。
系统选型与设计
1.Mifare系列射频卡PICC的选型
系统PICC选用Mifare 1 卡片,该卡片主要特点如下:
1)容量为8K位EEPROM
2)分为16个扇区,每个扇区为4块,每块16个字节,以块为存取单位
3)每个扇区有独立的一组密码及访问控制
4)每张卡有唯一序列号,为32位
5)具有防冲突机制,支持多卡操作
6)无电源,自带天线,内含加密控制逻辑和通讯逻辑电路
7)数据保存期为10年,可改写10万次,读无限次
8)工作温度:-20℃~50℃(湿度为90%)
9)工作频率:13.56MHz
10)通信速率:106 KBPS
11S)读写距离:10 cm以内(与读写器有关)
2.阅读模块PCD的选型与设计
系统选用Mf-RC500作为阅读模块,该模块是应用于13.56MHz非接触式通信中高集成读卡IC系列中的一员,它利用了先进的调制和解调概念完全集成了在13.56MHz 下所有类型的被动非接触式通信方式和协议;MF RC500支持ISO14443A 所有的层;内部的发送器部分不需要增加有源电路就能够直接驱动近操作距离的天线可达100mm;接收器部分提供一个坚固而有效的解调和解码电路用于 ISO14443A 兼容的应答器;信号数字部分处理ISO14443A 帧和错误检测奇偶CRC ;此外它还支持快速CRYPTO1加密算法用于验证MIFARE 系列产品;方便的并行接口可直接连接到任何8 位微处理器。这样给读卡器/终端的设计提供了极大的灵活性。MF-RC500的特性略。
3. PCD天线设计
电感耦合射频识别系统的PCD中的天线用于产生磁通量,而磁通量用于向PICC提供电源并在PCD与PICC之间传送信息。因此,对PCD天线的构造有以下几个基本要求:
1)使天线线圈的电流最大,用于产生最大的磁通量;
2)功率匹配,以最大程度地利用产生磁通量的可用能量;
3)足够的带宽,以无失真地传送用数据调制的载波信号。
一般说来,天线是有一定负载阻抗的谐振回路,阅读器又具有一定的源阻抗。为了获得最好的性能,必须通过无源的匹配回路将线圈阻抗转换为源阻抗。然后,通过同轴线缆即可无损失且无辐射地将功率从读写器末级传送到匹配电路。
在天线设计中,还有一个参数很重要,那就是品质因数Q。用于电感耦合式射频识别系统的PCD天线,其特征值就是它的谐振频率和品质因数的值。较高的品质因数的值会使天线线圈中的电流强度大些,由此改善对PICC的功率传送。与之相反,天线的传输带宽刚好与品质因数值成反比例变化,选择的品质因数过高会导致带宽缩小从而明显地减弱PICC接收到的调制边。
品质因数可以通过电感线圈的电抗与电阻的比值计算出来, 公式如下:
Q=(2 f_{0} Lcoil)/Rcoil
许多系统给出的最佳品质因数为10~30。Q值最高为50~60,如果太高,卡将无法准确地识别复位响应。
4.MCU8051与MF-RC500的接口设计
总结
以上分析了基于MF-RC500模组的Mifare射频卡识别系统的组成、工作原理及其设计方法。实验表明,由此方法设计的电路运行稳定,读写数据准确,典型的交易时间不超过100ms。