快捷搜索:

ZigBee模块在RFID射频识别阅读器中有着怎样的作用

小序

射频识别(RFID)技巧是一种自动识别技巧,被广泛利用于动物识别、铁路车皮识别、自动高速公路收费、航空行李处置惩罚、资产跟踪、公共交通等。该系统主要包括电子标签和涉猎器两部分,两者之间经由过程电磁波进行通信。经由过程这种要领涉猎器可以远间隔、非打仗地读出电子编码中的所有信息,并经由过程串口将数据传输到治理主机中,供事情职员记录读取。

实际利用中,涉猎器和主机之间是经由过程串口或网口进行通信的,这种通信要领会造成射频识别系统布线繁琐、资源高、工程量大年夜。一旦系统安装完成后,就不能随意更改位置,低落了系统的重复使用率。

为了使射频识别系统能够冲破位置限定、节省空间、低落资源及减小工程量,对传统的涉猎器进行了从新设计,实现了涉猎器和主机之间无线要领的信息交互传输。

1 整体设计规划

无线传输射频识别涉猎器的系统布局如图1所示,主要包括ZigBee模块、主控模块、RFID射频读写模块、天线模块、USB转通同信模块和电源模块

应用了一对ZigBee模块,一个设计在涉猎器内,另一个自力设计成带USB接口的信息收发器,安装在上位机上。主控模块因此STM32F107VCT6 为核心的微节制系统模块,RFID射频读写模块认真数据的传输和旌旗灯号的处置惩罚事情,以及对电子标签进行读写操作。核心芯片是EM4094(USB转通同信模块),主要作为备用上位机读写通道设计,当无线通信间隔越过有效范围或者无线通信发生故障时,可以应用串口通信连接上位机及涉猎器。天线模块采纳传统设计,这里不做重点先容。

此外,还设计了音频报警和旌旗灯号唆使,分手用来提醒操作职员读卡是否成功唆使涉猎器通信或电源的状态。

2 硬件电路设计

2.1 ZigBee模块

EMZ3118模块是基于STM32W108的一款完备的嵌入式ZigBee利用模块,带外部射频功率放大年夜器(PA),发射功率最大年夜为+20 dBm(100 mW)。模块供给了ZigBee/IEEES02.15.4兼容的无线办理规划,可满意低资源、远间隔的无线传感网利用需求。

EMZ3118采纳先辈的系统级芯片STM32W108,拥有稳定靠得住的Ember ZigBee Pro协议栈、开拓简单便捷、便于集成ZigBee办理规划、通信范围广、收集靠得住性高。最大年夜传输间隔为1.6 km,具有24个GPIO端口、4其中断端口、支持两个串行接口、6路12位A/D端口。支持点到点、点到多点、P2Pmesh的收集协议,还供给16个直序扩频信道。EMZ3118引脚基础上都对应到STM32W108的引脚上。

设计中使能EMZ3118的外部射频功率放大年夜器(PA),必须进行一些简单的设置设置设备摆设摆设。该模块应用4个CPU引脚来节制外部功放,根据他们的功能定义做出响应的设置设置设备摆设摆设,如下所示。

PA3:输出节制引脚,用于节制外部功放的供电。设置为0,外部功放电源打开;设置为1,外部功放电源关闭。

PA6:输出节制引脚,外部功放的使能节制。设置为0,外部功放不事情;设置为1,外部功下班作。

PA7:输出节制引脚,用于选择射频旌旗灯号的输出天线。设置为0,射频旌旗灯号从UFL天线接口输出;设置为1,射频旌旗灯号从MMCX天线接口输出。

PC5:外部功放收发切换节制引脚,这个引脚必要设置为特殊功能输出模式。

本设计中EMZ3118直接应用外置天线,无需设计。

2. 2 主控芯片

STM32F107VCT6是意法半导体推出的全新STM32互连型(Connectivity)系列微节制器中一款机能较强的产品。该芯片基于ARM Cortex—M3内核,具有256 KBFlash和64 KB SRAM,事情频率可达72 MHz。其集成了多种高机能工业标准接口:一个全速USB(OTG)接口、两个CAN2.0B节制器、一个硬件支持IEEE1588正确光阴协议 (PTP)的以太网接口(由硬件实现该协议可低落CPU开销,前进实时利用和联网设备同步通信的相应速率)。此外,该微节制器还支持以太网、USB OTG和CAN2.0B外设接口同时事情,是以只需一块芯片就能设计整合所有这些外设接口的网关设备。

设计中应用100引脚的STM32F107VCT6,EMZ3118与主控芯片的电路连接道理如图2所示。

图2中,EMZ3118和主控芯片之间进行SPI通信,EMZ3118为主控芯片的从设备。PA6为主控芯片在主动模式下的数据输入端(SDO);PA7 为主控芯片在主动模式下的数据输出端(SDI);PA5为串口时钟(SCK);PA4为从设备选择端(NSS),用来使能ZigBee模块;PA3用来节制EMZ3118的外部Rx/Tx切换逻辑节制端。

2.3 RFID射频读写模块

RFID射频读写模块中的核心器件是EM4094芯片,是一款集成收发器芯片,可用于构成RFID涉猎器的模拟前端读写基站模块。EM4094支持所有EM公司频率为13.56 MHz的收发器芯片,支持ISO15693协议、ISO14443协讲和Sony Felicia协议。

EM4094三个不合的电源引脚分手是VDDA1、VDDA2和VDD。此中,VDDA1和VDDA2为内部天线驱动器ANT1、ANT2供电,每个驱动器必要自力供电。因为两个驱动器可能孕育发生较大年夜的电流,为了给天线供给足够电能,必要在VDDA1及VDDA2引脚间接入一个3.3 μF电容,再分手并联一个1 nF和100 nF的电容,对电源进行滤波和去耦。VDD用于给其他的内部逻辑电路供电。在这个电源线上同样并联一个1 nF和100nF的电容对电源进行滤波和去耦。这3个电源施加相同的电压(5 V或3.3 V),所有电源线都该当与模拟地相连。

在OSCOUT和OSCIN两端外接13.56 MHz的晶振,用来供给脉冲旌旗灯号,该旌旗灯号被送至天线驱动器输出端。为了包管晶振的起振以及稳定性,在晶振两端跨接两个NPO电容。NPO电容的大年夜小由EM4094芯片的可选跨导和晶振参数抉择。

为了确保涉猎器内部芯片的稳定性及靠得住性,分手用100 nF和1 nF的电容对带隙参考输出(AGD)电压进行去耦。

引脚ANT1和ANT2是两个天线驱动器的输出端,它们可同相或反相驱动,假如将涉猎器天线与EM4094芯片集成到同一块PCB板上,便可选用直接天线连接的措施。这种环境下,天线线圈和串联的电容形成LC振荡回路,回路的谐振频率设计为涉猎器的频率。串联一个电阻可以抑制品德因数,且将天线电流设计在 EM4094额定电流值以下。当事情于其谐振频率时,天线即可得到较高的输出功率。

引脚RFIN1、RFIN2是该芯片接管链上的输入引脚,用来解调芯片收发器发送过来的数据。该引脚上的电压应设计在VDD和GND之间,这两个输入设计必须具有相同机能及相同灵敏度。别的,外接一个阻抗匹配电路,这两个输入端就可用于解调输入相位或幅度来调制旌旗灯号。没有应用的输入引脚要经由过程一个10 nF电容接到模拟地,高灵敏度的输入引脚使得读卡器纵然在电子标签最小的电源级别上,还能具有较远的读写间隔。

引脚EN用于关闭或使能涉猎器电子电路,该引脚可由一个外部单片机进行节制。

在SPI串行通信模式下,引脚DIN用于数据输入,引脚DOUT用于数据输出,引脚DCLK用于SPI总线的时钟旌旗灯号。SPI接口可用来对读写器芯片内部的位寄存器进行设置,并介入不合模块参数的设定。在正常模式下,可经由过程在DIN引脚上施加逻辑电平来关闭或打开天线驱动器。在DOUT引脚上可直接读取引脚DIN上的应答信息。

RFID射频读写模块电路事情道理图如图3所示。

2.4 天线模块

天线认真发送涉猎器对电子标签的读写指令,同时接管标签返回的数据。在射频识别系统中,天线线圈可看作两个互相耦合电感。两个电感谐振频率必须设计在涉猎器事情频率(即13.56 MHz)相近,才能使得电感的耦合程度最高,是以必须先知道天线线圈的电感值,再搭配适当的电容值,根据不合的利用谋略出天线的品德因数和电感的电阻值。

本设计中,参考demo板的参数设计,在PCB板上印刷天线线圈、矩形外形。圈数为4圈,线圈外圈长6.8cm、宽5.5 cm、线宽1 mm、线间距0.2 mm、并联一个3.3kΩ的电阻,容性的阻抗匹配收集(8.2 pF+120 pF并联)电容值串联56 pF+680 pF并联后的电容值。

USB转串口通信模块采纳常用电路,电源模块相关电路除了给芯片EM4094两个自力供电电源应用了磁珠隔离,其他的也采纳了常用电路。

3 软件设计

3.1 上位机软件设计

上位机软件主要实现对远端涉猎器的读写操作。上位机软件经由过程RS485口向EMZ3118发送带有涉猎器地址的读写指令,EMZ3118将指令无线传输给远端EMZ3118接管并解析。相符接管涉猎器地址的指令会发送给主控芯片,主控芯片进一步解析指令后对涉猎器进行相关读写操作,并监测涉猎器对指令履行的结果是否精确,同时将相关的结果数据原路径传输给上位机,涉猎器的事情状态实时显示在事情状态灯上。本设计中的上位机采纳C#开拓。

3.2 下位机软件设计

下位机软件包括ZigBee模块本身的收发设置设置设备摆设摆设、涉猎器驱动及事情法度榜样设计、主控芯片的初始化及收集通信法度榜样设计,以及系统节制、串行 Flash存储、硬件外围模块驱动、EMZ3118为ZigBee模块的Host驱动、其他接口驱动等。本文重点先容EMZ3118的Host驱动,软件架构如图4所示。

EMZ3118为ZigBee模块的Host驱动,完成STM32F107与EMZ3118模块的SPI通信并供给通用SPI读写能力。代码框架如下所示:

Assemble Command and put it into cmdbuf.

While(get_EMZ3118_int_status());

Spi_send_data(cmdbuf,cmdlen);

Recvlen=spi_rec_data(resbuf);

Handle response buffer.

此中,函数get_EMZ3118_int_status()用于获取模块/INT状态。

结语

颠末实际测试,本系统能够经由过程无线传感收集远程对RFID射频识别涉猎器进行读写操作,同时节制RFID射频识别涉猎器对电子标签进行读写操作。系统事情稳定靠得住、传输数据精确、反映光阴短,具有较高实际利用代价。

责任编辑:ct

您可能还会对下面的文章感兴趣: