RFID系统数据编码方式仿真实现

2024-02-19 00:40

本文主要是介绍RFID系统数据编码方式仿真实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

RFID 技术简介

  射频识别技术(RFID,即,Radio Frequency Identification)是一种非接触自动识别技术,它利用无线通信的方式自动的从目标中读取信息。
  典型的RFID射频识别系统包括标签和读写器两部分。
标签是一块集成了几个主要模块的芯片,通过这几个模块来与读写器通信,完成数据信息的交换。芯片中的存储模块是用来储存标签识别号码或其他数据,容量不大,通常为几十Kbits,芯片还有通信模块,在外部连接发射接收天线。根据不同行业的应用需要,可以把标签中的芯片设计成不同的形式以便使用。与之前的数据传输方式相比,RFID系统的优点是标签的数据被读取时设备不用接触,识别距离仅受到设备功率和噪声的限制,所以识别距离更长;可以识别正在运动的目标。在大多数的RFID系统中,读写器功能是通过发射的信号在一个范围内形成电磁场来实现的。所以读写器的工作频率的快慢,天线大小和发射信号的功率大小都可以影响读写器工作区域的大小。当标签检测到该区域的读写器信号时,就开始发送储存的信息和数据。读写器发送的信号通常为标签提供时钟信号及标签工作所需的足够能量,其中的时钟信号使数据进行同步,从而简化了系统的设计。读写器接收到标签上返回的数据后,进行解码并进行错误校验来决定数据的有效性,然后通过 RS232、RS485或无线方式将数据传送到计算机网络。简单的RFID产品就是一种非接触式的IC卡,复杂的RFID产品能和外部传感器连接,来测量和记录不同的参数,有的甚至可以和GPS系统连接来跟踪物体。
  条形码、磁卡、IC卡和标签等识别技术都有各自的优缺点和适用的应用场景。
  条形码成本最低,适用于大量需求且数据不必更改的场合,例如:商品的外包装等,但是条形码容易磨损,且数据量小。磁卡的价格也很便宜,但是也很容易磨损,数据量也小。IC卡的数据存储量很大,数据安全性好,但价格稍高。由于IC卡的触点暴露在外面,有可能因静电或人为原因损坏。射频标签最大的优点在于非接触,完成识别工作时不需要人工干预,实现自动化且不易损坏。RFID系统可识别高速运动物体并可同时识别多个标签,操作快捷方便。标签可用于油渍和灰尘污染等恶劣环境下。短距离的标签可以在恶劣环境中替代条形码,如:工厂流水线上跟踪物体。远距离产品多用于交通,可达几十米,如:铁路车号的自动识别,汽车自动收费(ETC)或车辆身份识别等。
  RFID技术的分类方式一般是以下四种:
(1) 根据读写方式不同分类:可读写式、只读式。
(2) 根据供电方式不同分类:有源、无源。
(3) 根据工作模式不同分类:被动式和主动式。
(4) 根据工作频率不同分类:低频、中频、高频和微波。

RFID系统结构示意图
RFID系统结构示意图

常见编码方式

  一般的数字调制基带编码中,所谓基带传输是在信号传输的过程中直接传送数字信号的电脉冲,这是最简单不易出错的传输方式,一般在近距离的局域网通信中都会采用基带传输的方式,常用的基带传输编码方式及规则如下:
(1)不归零码(NRZ)编码:当有电脉冲时表示二进制数‘1’,没有电脉冲表示二进制数‘0’。
(2)曼切斯特(Manchester)码:又称裂相码、同步码、相位编码在半个周期的电信号为低电平变为高电平,也就是上升沿时表示二进制数‘1’,在半个周期时电信号为下降沿表示二进制数‘0’。由于曼彻斯特码在每个时钟位都必须有一次变化,因此,其编码的效率仅可达到50%左右,传输流的速率是原始数据流的两倍,要占用较宽的频带。曼彻斯特编码中,每一位的中间有一跳变,该跳变既可作为时钟信号,又可作为数据信号。因此,曼切斯特编码优点:发送曼彻斯特编码信号时无须另发同步信号。信号的恢复很简单,只要对信号的边缘进行异步提取即可。
(3)单极性归零码(Single Polarity RZ):在前半个周期的高电平表示二进制数‘1’,整个周期持续低电平表示二进制数‘0’。单极性归零码的主要优点是可以直接提取同步信号,因此单极性归零码常常用作其他码型提取同步信号时的过渡码型,也就是说其他适合信道传输但不能直接提取同步信号的码型,可先变换为单极性归零码,然后再提取同步信号。
(4)差动双相(DBP)编码:在半周期有任意上升沿或者下降沿表示二进制数‘0’,在周期内没有任意上升沿或下降沿表示二进制数‘1’。另外在每一个周期开始时,电平都要反向,这样更有利于接收方辨别时钟周期。还有在每个周期开始时,电平都需要反相。因此,对接收方来说,时钟信号比较好找到。
(5)米勒(Miller)编码:在半个周期有任意上升沿或者下降沿表示二进制数‘1’,在周期有任意上升沿或者下降沿表示二进制数‘0’,。如果有两个及以上的‘0’出现,那么在第二个‘0’的周期开始处产生电平反向,这样更易于接收方确定时钟周期。密勒编码在周期开始时产生电平突变,对接收器来说,重建位节拍容易。密勒编码在半个位周期内的任意边沿表示二进制‘1’,而经过下一个位周期中不变的电平表示二进制‘0’。

常见信道编码波形图
常见信道编码波形图

MATLAB 仿真及部分结果

其MATLAB源代码见RFID编码方式的仿真实现

RFID 各编码正确性验证

如 Manchester编码
① 双击“Manchesterdetection.slx“仿真文件;
② 设置仿真时长,并双击“scope“;
③ 在scope窗口,点击运行。
Manchester编码正确性验证

Manchester编码仿真波形图
在这里插入图片描述第一行波形为输入 原始bit信号,第二行为经编码后的信号。
根据编码规则 可验证其正确性。

RFID 各编码传输错误率统计

如 Manchester编码
① 双击打开“Manchesterdetection.slx “仿真文件
设置仿真时长,例:200,时长设置的越大,样本更多,错误率统计更准确。
② 打开“Manchesterdetectionm.m “脚本文件。点击运行
③ matlab的commond窗口会打印出错误传输的bit数,以及错误率。
运行结果图

这篇关于RFID系统数据编码方式仿真实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/722977

相关文章

Java实现字节字符转bcd编码

《Java实现字节字符转bcd编码》BCD是一种将十进制数字编码为二进制的表示方式,常用于数字显示和存储,本文将介绍如何在Java中实现字节字符转BCD码的过程,需要的小伙伴可以了解下... 目录前言BCD码是什么Java实现字节转bcd编码方法补充总结前言BCD码(Binary-Coded Decima

SpringBoot全局域名替换的实现

《SpringBoot全局域名替换的实现》本文主要介绍了SpringBoot全局域名替换的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录 项目结构⚙️ 配置文件application.yml️ 配置类AppProperties.Ja

Python实现批量CSV转Excel的高性能处理方案

《Python实现批量CSV转Excel的高性能处理方案》在日常办公中,我们经常需要将CSV格式的数据转换为Excel文件,本文将介绍一个基于Python的高性能解决方案,感兴趣的小伙伴可以跟随小编一... 目录一、场景需求二、技术方案三、核心代码四、批量处理方案五、性能优化六、使用示例完整代码七、小结一、

Java实现将HTML文件与字符串转换为图片

《Java实现将HTML文件与字符串转换为图片》在Java开发中,我们经常会遇到将HTML内容转换为图片的需求,本文小编就来和大家详细讲讲如何使用FreeSpire.DocforJava库来实现这一功... 目录前言核心实现:html 转图片完整代码场景 1:转换本地 HTML 文件为图片场景 2:转换 H

C#使用Spire.Doc for .NET实现HTML转Word的高效方案

《C#使用Spire.Docfor.NET实现HTML转Word的高效方案》在Web开发中,HTML内容的生成与处理是高频需求,然而,当用户需要将HTML页面或动态生成的HTML字符串转换为Wor... 目录引言一、html转Word的典型场景与挑战二、用 Spire.Doc 实现 HTML 转 Word1

C#实现一键批量合并PDF文档

《C#实现一键批量合并PDF文档》这篇文章主要为大家详细介绍了如何使用C#实现一键批量合并PDF文档功能,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言效果展示功能实现1、添加文件2、文件分组(书签)3、定义页码范围4、自定义显示5、定义页面尺寸6、PDF批量合并7、其他方法

SpringBoot实现不同接口指定上传文件大小的具体步骤

《SpringBoot实现不同接口指定上传文件大小的具体步骤》:本文主要介绍在SpringBoot中通过自定义注解、AOP拦截和配置文件实现不同接口上传文件大小限制的方法,强调需设置全局阈值远大于... 目录一  springboot实现不同接口指定文件大小1.1 思路说明1.2 工程启动说明二 具体实施2

Python实现精确小数计算的完全指南

《Python实现精确小数计算的完全指南》在金融计算、科学实验和工程领域,浮点数精度问题一直是开发者面临的重大挑战,本文将深入解析Python精确小数计算技术体系,感兴趣的小伙伴可以了解一下... 目录引言:小数精度问题的核心挑战一、浮点数精度问题分析1.1 浮点数精度陷阱1.2 浮点数误差来源二、基础解决

Java实现在Word文档中添加文本水印和图片水印的操作指南

《Java实现在Word文档中添加文本水印和图片水印的操作指南》在当今数字时代,文档的自动化处理与安全防护变得尤为重要,无论是为了保护版权、推广品牌,还是为了在文档中加入特定的标识,为Word文档添加... 目录引言Spire.Doc for Java:高效Word文档处理的利器代码实战:使用Java为Wo

Java实现远程执行Shell指令

《Java实现远程执行Shell指令》文章介绍使用JSch在SpringBoot项目中实现远程Shell操作,涵盖环境配置、依赖引入及工具类编写,详解分号和双与号执行多指令的区别... 目录软硬件环境说明编写执行Shell指令的工具类总结jsch(Java Secure Channel)是SSH2的一个纯J