基于STM32的LF RFID识别系统设计
扫描二维码
随时随地手机看文章
射频识别技术(Radio Frequency Identification,RFID)是从八十年代起走向成熟的一项自动识别技术。RFID利用射频方式进行非接触双向通信,以达到识别目的并交换数据,主要通过空间耦合(交变磁场或电磁场)实现无接触信息传递并通过所传递的信息达到识别目的。
RFID技术在近年取得了长足的发展,目前已广泛应用的频段分布在LF、HF、UHF和徽波频段,各频段的RFID系统均有各自的优点和相应的应用范围。对于LF频段的RFID系统而言,最明显的优点在于拥有很好的穿透性能,如可穿透液体物质,建筑物,人体等,且各种动物体细胞和各种气体分子对LF频段的能量吸收很小。
可见LF RFID系统可以在需要良好穿透性,需要不间断长时间工作,以及存在较高危险性场合(如含爆炸性气体矿井)下良好工作。本文正是由于它的这些重要优点提出了一种基于STM32的LF RFID系统,并对该系统进了设计制作并测试。测试结果表明该系统具有实现简单、可靠性高等特点。
根据RFID系统原理,LF系统一般由以下3部分构成:
1)电子标签:应放置在要识别的物体上,在本设计研究主要采用工业生产中的标准125 kHz电子标签EM4100。其内置小型的ROM和整流电路,能实现应答器和阅读器的无接触工作。
2)阅读器:可以是读或写/读装置,取决于所使用结构和技术,主要起到读标签的作用。
3)天线:天线应放置在应答器和阅读器之间,它主要起到桥梁的沟通作用,不管是能量提供还是信息传送都要通过耦合元件来实现。
1 系统总体设计
本次设计以STM32作为控制模块的核心,通过输出125 kHz的方波源为后面的功放电路提供驱动信号,功放电路为天线负载提供放大后的125 kHz方波,从而使天线负载能为标签提供足够的能量,同时获取标签信息。检波电路实现对标签信息的检波功能,检波后通过方波信号转换电路转换传送给STM32进行解码,同时将标签信息通过STM32串口传送到上位机进行后续处理。整个系统框图如图1所示。
本系统与现有系统的区别在于:
1)不需要专用的解码芯片进行解码直接利用STM32具有的捕获功能对检波转换后的电子标签信号进行解码。
2)利用了STM32能输出一对带死区互补方波的功能对一对开关管进行驱动,省去了复杂的模拟电子电路生成同样的驱动波形。
3)借鉴开关电源中半桥逆变电路的原理,使IC电路形成串联谐振,从而实现了功事放大。
2 硬件电路设计
2.1功率放大电路设计
功率放大电路采用两个开关管和一个LC振荡电路(天线)形成,经过分析功率放大电路设计如图2所示。
其中S1、S2是由STM32输出经驱动芯片IR2110后的两路带死区控制的PWM波,频率为125 kHz。这样就使天线L1与电容C1构成串联谐振电路,谐振频率为125 kHz,谐振电路的作用是使天线获得最大的电流,从而产生磁通量,获得更大的读卡距离。
天线本身是一个低电阻的器件将天线线圈连接到功放电路需要估算天线的等效电路和品质因子以得出匹配电路的电容推荐值。
一般来说,由于天线的磁场辐射,对Q值的要求大概在20到40比较合适。现在根据天线的Q值来确定天线的感量,现在的一些工业标准主要采用绕制50 Ω,Q值取30,工作频率是125 kHz则fR取125 kHz,由以上3,个数据可以得到RFID天线的感量为375 μH。
天线的绕制:首先大概的绕几圈,然后使用阻抗分析仪,在125 kHz工作频率下测量电感。本设计中,绕制10圈检测后得到感量为89.03 μH。电感的计算公式:
L=N2×L1(3)(L1表示单圈电感感量,N表示线圈匝数),由上述公式可以得到天线的单圈感量为0.89μH。即由以上电感的值可以求得天线的需要的匝数,大概需要21圈。
天线的设计完成之后,需要选择相应的阻抗匹配电路。现在本设计主要选择利用CBB电容来达到阻抗匹配的目的,电容的大小由系统的工作频率来确定。阻抗匹配主要目的是使天线工作在最佳状态,即天线和电容处于谐振状态。
由上面分析电容的大小计算公式:
此公式可以确定电容的大小在4.7 μF,CBB电容的耐压值还需要根据通过电容的振荡波形的峰值来确定。
2. 2 包络检波电路的设计
包络电路的设计很大程度决定了RFID阅读器的读取距离,它主要工作原理就是低通滤波器和二极臂串联工作,把高频125 kHz波滤除。电路设计主要采用串联型二极管包络检波,其工作原理如图3所示。
电路由二极管D和RLC低通滤波器相串接构成。输入Us时,通过D的电流i在RLC电路产生平均电压UAV,该电压又反作用于D上(称平均电压负反馈效应),影响通过二极管的电流。
若Us=Vcm(1+MacosΩt)cosωct,则vov=ηdVcm+ηdMaVcmcosΩ=VAV+Vov,其中vov∝vΩ,所以实现了线性检波。
3 软件设计
终端软件要解决的关键问题是如何正确接收数据并解码。本RFID系统选用的电子标签为曼切斯特解码,电子标签信号经曼切斯特编码器后的输出信号见图4所示。
利用STM32的捕获功能对整形后的波形进行捕获计时,每延时384μs之后,STM32检测是否为高电平。然后对前后电平进行比较,若是01则表示数据0,若10表示数据1。[!--empirenews.page--]
电子标签中的64bit数据以NRZ串行送入比较器,所谓NRZ就是基带传输,也就是在线路中直接传送数字信号的电脉冲,这是一种最筒单的传输方式,近距离的通信的局域网都采用基带传输。经反向比较器后输出曼切斯特码波形,然后直接输入STM32进行曼切斯特解码。其工作原理;在一个读取数据的周期内,若引脚为高电平,读取的数据为1;若引脚为低电平,读取的数据就为0。总的来说整个系统的工作过程就是曼切斯特解码过程。
4 程序流程图
4.1 STM32总程序流程图
STM32总程序流程图,如图5所示。
4.2 STM32解码过程程序框图
通过对曼切斯特解码原理的分析,单片机主要是处理包络电路给出的方波信号,得到相应的数据。可以得到如下的系统框图如图6所示。
5 测试结果
电子标签的读取距离为10 cm左右。图7为STM32输出125 kHz带死区互补方波的实测图,图8为检波、转换后的波形。由图7的波形可得STM32的输出波形频率为125 kHz,死区时间为0.9μs,符合设计要求。
6 结束语
目前存在的一些阅读器,需要专用的读卡芯片进行解码,电路复杂,文中主要介绍了一种采用STM32解码、互补输出、死区控制的LF RFID阅读器。以STM32作为其控制核心,可以对电子标签卡进行检测、识别,并对识别的信息进行相应的处理。电路结构简单,用于读取EM4100型ID卡具有一定的实用价值。