1、基于软件无线电的 RFID 阅读器设计 徐晨予 黄东东 秦兴 杭州电子科技大学电子信息学院 摘 要: 介绍了一个使用软件无线电 (SDR) 技术实现的无线射频识别 (RFID) 阅读器。使用开源 GNU Radio 开发工具来实现软件无线电。利用软件无线电将模块化、标准化和通用化的硬件单元连接起来构成通用平台, 把一部分数字基带的处理使用软件系统来完成, 该方式提高了阅读器的灵活性, 可以实现多波段、多体制、多制式无线通信的接收和发送。关键词: 软件无线电; RFID 阅读器; GNU Radio; 收稿日期:2017-8-18Design of RFID Reader Based on So
2、ftware Defined RadioAbstract: This paper describes a Radio Frequency Identification (RFID) reader, using the approach of software defined radio (SDR) , and uses the open source GNU Radio development toolkit to implement this SDR.Using software radio to connect modular, standardized, and generalised
3、hardware units to form a common platform, part of the digital baseband processing using the software system to complete.Keyword: software defined radio; RFID reader; GNU Radio; Received: 2017-8-181 基于软件无线电的 RFID 阅读器模型RFID 标签要反射回自身所携带的信息, 需要获得激励信号, 电压调节器将阅读器传来的射频信号转换为直流稳压电源, 所以需要软件无线电 (仿真阅读器) 发射激励波,
4、在一些较为安全的 RFID 应用协议中, 包括安全认证以及对标签进行操作的过程, 需要在激励波中增加一些操作指令代码, 以从标签中获取相应的信息。标签的反射信号携带了自身的信息, 在反射信号的接收过程中, 信道的衰落、多径效应, 加上接收器本身也会引进噪声。在信息解析之前需要滤掉这些影响。仿真阅读器采用与激励波频率相同的载波进行相干解调。整个 RFID仿真阅读器的框架如图 1 所示。图 1 软件无线电阅读器系统框架 下载原图2 软件无线电的实现与传统的硬件实现相比, 使用软件无线电的主要优点之一是可以通过调整软件参数来更改配置, 来实现在同一硬件中使用不同的无线电标准。除此之外, 随着处理能力
5、的提高, 在已实现的无线电中使用复杂的信号处理技术成为可能。一般来说实现一个软件无线电, 需要数字处理器运行软件, 再由软件驱动物理射频前端执行上转换或下转换的信号, 接受 ADC 和发射 DAC 分别使模拟信号和数字信号进行互相换。2.1 GNU RadioGNU Radio 是一个用于开发软件无线电的开源框架。GNU Radio 中的每个软件无线电程序由一组独立的相互连接的信号处理模块组成, 这些模块是内置的库或由用户创建的, 用户定义模块可以根据不同的需求进行编写。使用 GNU Radio 开发的软件无线电可以在一般的处理器中运行。使用个人计算机和适配的具有射频接口的硬件, 就可以传输或
6、接收真实的信号。目前 GNU Radio 主要支持的硬件平台有三种, 分别是 Hack RF、blade RF 和 USRP。2.2 信号处理模块设计本文设计的阅读器是基于 ISO/IEC 18000-6 Type C 协议设计的。编写信号处理模块时要根据协议规定进行设计。我们主要设计了三个模块用来实现阅读器的盘存过程, 分别命名为 Reader、Tag_decoder 和 Gate。信号首先通过射频段和高速处理段变成低频 I/Q 信号进入软件处理层。在软件处理层, 信号首先进入一个内置的抽取滤波器模块使信号的采样频率下降。经过抽取滤波器后信号进入 Gate 模块, 该模块根据读写器接收自身发
7、射信号来确定什么信号需要屏蔽什么信号需要接收, 经过 Gate 模块的信号过滤确保了信号里就只存在标签返回的信息。之后把信号传入 Tag_decoder 模块, 该模块对标签信息进行了解码。根据协议我们按照 FM0 编码方式进行解码, 根据阅读器工作状态又将解码分为 RN16 和 EPC 两种模式。经过 Tag_decoder 模块之后的信号变成了一个存储信息的信号数列。最后信号进入 Reader 模块, 该模块主要负责产生阅读器发射的指令。它根据接收的信号数列按照 PIE 编码方式来组成发射信号数列。根据阅读器状态 Reader 模块可以选择不同的工作状态, 按照协议在不同的工作状态下发送不
8、同的指令。最后将信号输入内置的乘法器模块和类型转换模块变成输出的要求的复数形式的 I/Q 信号, 这样整个软件无线电部分的信号处理过程就完成了。整个软件层的模块连接图如图 2 所示。图 2 软件层模块连接图 下载原图2.3 信号处理应用软件仅仅把信号处理模块完成并不能完全实现软件无线电, 因为此时模块之间并没有相互联系, 我们仅仅在模块上编写了输入接口用于连接其他模块的输出, 需要一种方式将模块与模块进行连接。信号处理应用软件帮助我们实现了这一要求。信号处理应用软件是由 Python 代码构建而成, Python 用于实现高级的组织、策略、图形界面和其他一些对运算性能要求不高的功能。从 Pyt
9、hon 的角度看, 我们要做的就是选择合适的信源、信宿和处理模块, 设置正确的参数, 然后将它们连接起来形成一个完整的信号处理应用软件。我们根据通信协议的要求和软件层模块连接图实现信号处理应用软件的编写。主要需要做的就是在 init 函数中进行初始化, 初始化内容包括定义常数、定义信源信宿、定义信号处理模块以及粘合模块。完成信号处理应用软件后只需要直接运行这个软件就可以启动整个信号处理系统。3 仿真测试结果本次设计的基于软件无线电的 RFID 阅读器通过模拟信号源进行可行性测试, 通过分析输出信号是否符合协议要求得出该阅读器设计是否可行。输入信号处理系统的仿真测试信号源如图 3 所示。图 3
10、仿真测试信号源 下载原图该信号源包含了阅读器自身发送的信号和标签返回的信号。从上图中可以看到四段信号, 从左到右依次是 Querry 信号、RN16 信号、ACK 信号和 EPC 信号。其中 Querry 信号和 ACK 信号是由阅读器自身发出又被自身接收到的, RN16 信号和 EPC 信号则是由标签返回的信号。该仿真信号进入信号处理系统后, 按照信号处理应用软件设计好的顺序依次经过各个信号处理模块, 从系统中输出的信号如图 4 所示。观察图 4 中的信号输出可以发现, 该输出是根据 PIE 编码进行发送的 Querry 指令。信号的起始部分是一个导引头, 导引头后面是 4 位命令码“100
11、0”, 再之后是 Query 命令各个域的信息。对比协议发现发送的 Querry 指令完全符合协议中对 Querry 指令的要求。4 结束语本文通过对软件无线电和 RFID 系统的学习研究, 采用 GNU Radio 开源框架设计了一个基于软件无线电的 RFID 阅读器。通过模拟信号源进行测试验证了该阅读器设计符合 ISO/IEC 18000-6 Type C 协议要求, 实现了软件定义通信协议。相比于传统的 RFID 阅读器通用性和灵活性得到了提高。图 4 信号处理系统输出 下载原图参考文献1Briand A, Albert B B, Gurjao E C.Complete software
12、 defined RFID system using GNU radioCIEEE International Conference on Rfid-Technologies and Applications.IEEE, 2012:287-291 2Baldini G, Sturman T, Biswas A R, et al.Security Aspects in Software Defined Radio and Cognitive Radio Networks:A Survey and A Way AheadJ.IEEE Communications Surveys&Tutorials
13、, 2010, 14 (2) :355-379 3Ru Z, Moseley N A, Klumperink E A M, et al.Digitally Enhanced Software-Defined Radio Receiver Robust to Out-ofBand InterferenceJ.IEEE Journal of Solid-State Circuits, 2009, 44 (12) :3359-3375 4Kimionis J, Bletsas A, Sahalos J N.Design and implementation of RFID systems with
14、software defined radioCEuropean Conference on Antennas and Propagation.IEEE, 2012:3464-3468 5孙建锋, 冯超, 张权, 等.基于软件无线电的 RFID 阅读器设计J.现代电子技术, 2013 (9) :155-157 6陶玉柱, 胡建旺, 崔佩璋.软件无线电技术综述J.通信技术, 2011, 44 (1) :37-39 7张松华.基于软件无线电的 RFID 解调方法研究J.机电工程技术, 2015 (2) :58-59 8马昊中.基于开放式软件无线电平台的 RFID 系统研究与仿真D.南京:南京邮电大学, 2013