超高频RFID R200系列远距离一体化读写器开发测试_ypd-r200 rfid-程序员宅基地

技术标签: RFID  物联网  嵌入式硬件  单片机  

超高频UHF RFID R200系列远距离一体化读写器开发测试 

目录

超高频UHF RFID R200系列远距离一体化读写器开发测试

概述

一、使用模块

二、RBD-21N读写一体机

 三、RFID电子标签

四、标签存储器分区

五、R200系列模块串口指令控制收发数据调试

1.Read读卡内容(0x03-User区)

(1)设置被动读写器模式:

(2)选择命令:

(3)单次读取卡内容

2.Write写卡内容(0x03-User区)

(1)选择命令:

(2)向User区写入内容

3.标签卡号读取

(1)单卡读取

(2)群卡读取

(3)停止(暂停)读卡

4.Read读卡内容(0x02-TID区)

5. 设置发射功率

6. 读标签结果


概述

        R200系列远距离一体化读写器为一体化设计的UHF 频段读写器,其具有多协议兼容、读取速率快、多标签识读、防水型外观设计等优点,可广泛的应用于各种RFID 系统中。

        广泛应用于仓储管理、供应链管理、车辆管理、生产线管理、溯源管理、资产管理、人员管理、考勤管理、产品防伪管理等多种场合。

        UHF-R200 是一款超高频读写模块,体积小,功耗低,最大功率为28dbm,并且功率可调;主要用于典型读距离在 0-30m 以内的应用。该芯片具有低功耗,小尺寸、远距 离的特征,是低成本 RFID 系统的优良解决方案。

一、使用模块

        RBD-21N读写一体机

        标签以及各种输出接口

二、RBD-21N读写一体机

        

 

 三、RFID电子标签

        支持各种超高频标签。本文RFID标签都是UHF超高频电子标签,频率840MHz~960MHz。

     

四、标签存储器分区

         Tag memory(标签内存)分为Reserved(保留),EPC(电子产品代码),TID(标签识别号)和User(用户)四个独立的存储区块(Bank)。

        Reserved区:存储Kill Password(灭活口令)和Access Password(访问口令)。 
        EPC区:存储EPC号码等。 
        TID区:存储标签识别号码,每个TID号码应该是唯一的。 
        User区:存储用户定义的数据。 
        此外还有各区块的Lock(锁定)状态位等用到的也是存储性质的单元。

        例如卡片的储存器结构图如图:

五、R200系列模块串口指令控制收发数据调试

         此读写一体机默认为主动读卡模式,可以用USB接配置软件设置为被动读卡模式,才能用读写demo软件或者串口调试助手;

        主动读卡模式:只要有超高频标签在距离范围内,就会主动读卡,并按照前缀+卡号+后缀的格式输出;

        被动读卡模式:读卡器由读写AT指令协议操作控制,收到指令后才会进行对应操作;

1.Read读卡内容(0x03-User区)

        在这里以被动读卡模式来操作调试,TX——发送,RX——接收。

指令帧说明:

(1)设置被动读写器模式:

        TX: BB 01 C1 00 01 00 C3 7E

        RX: BB 01 C1 00 01 00 C3 7E

(2)选择命令:

        TX: BB 00 0C 00 07 23 00 00 00 00 60 00 96 7E

        RX: BB 01 0C 00 01 00 0E 7E     表示成功

(3)单次读取卡内容

        TX: BB 00 39 00 09 00 00 00 00 03 00 00 00 04 49 7E

        RX: BB 01 39 00 17 0E 30 00 E2 00 00 1D 73 15 01 65 21 40 8F C6 00 00 00 00 00 00 00 00 32 7E

发送说明:

        帧头:0xBB
        帧类型Type:0x00(命令帧)
        指令代码Command:0x39
        指令参数长度PL:0x0009
        Access Password:0x00000000
        标签数据存储区MemBank:0x03(User 区)
        读标签数据区地址偏移SA:0x0000
        读标签数据区地址长度DL:0x0004
        校验位Checksum:0x49
        帧尾:0x7E

响应说明:

        帧头:0xBB
        帧类型Type:0x01(响应帧)
        指令代码Command:0x39
        指令参数长度PL:0x0017
        PC+卡号的长度:0x0E
        PC:0x3000
        标签卡号:0xE2 00 00 1D 73 15 01 65 21 40 8F C6
        读标签数据区:0x00 00 00 00 00 00 00 00
        校验位Checksum:0x32
        帧尾:0x7E

        其中校验位Checksum,计算公式为Checksum字节前面的所有字节,除了第一个字节BB外,每个字节的累加,结果只取低8位;
比如:01 39 00 17 0E 30 00 E2 00 00 1D 73 15 01 65 21 40 8F C6 00 00 00 00 00 00 00 00 累加的结果是:0x32,所以 Checksum就是0x32;

读取失败会收到:
        BB 01 0C 00 01 00 0E 7E
        BB 01 FF 00 10 09 0E 34 00 E2 00 00 1D 73 15 01 65 21 40 8F C6 FE 7E
读取失败接收到其实是2个包,第一个包是Select Set 的响应包(即选择命令的返回包);第二个包是读取失败的响应包:
        BB 01 FF:是包识别符,表示出错,长度3个字节;
        00 10:是包长度,16进制,0x10表示 16个字节,长度2个字节;
        09:错误码: 0x09表示没找到卡;
        0x16:表示 访问密码错误;
        0xA3:表示超出读写范围;

2.Write写卡内容(0x03-User区)

(1)选择命令:

        TX: BB 00 0C 00 07 23 00 00 00 00 60 00 96 7E(选择命令)

        RX: BB 01 0C 00 01 00 0E 7E     表示成功

(2)向User区写入内容

        TX: BB 00 49 00 11 00 00 00 00 03 00 00 00 04 01 02 03 04 05 06 07 08 85 7E (写卡命令)
        RX: BB 01 49 00 10 0E 30 00 E2 00 00 1D 73 15 01 65 21 40 8F C6 00 3B 7E

发送说明:

        帧头:0xBB
        帧类型Type:0x00(命令帧)
        指令代码Command:0x49
        指令参数长度PL:0x0011
        Access Password:0x00000000(默认)
        标签数据存储区MemBank:0x03(User 区)
        读标签数据区地址偏移SA:0x0000
        读标签数据区地址长度DL:0x0004
        写入的数据:0x01 02 03 04 05 06 07 08
        校验位Checksum:0x85
        帧尾:0x7E

响应说明:

        帧头:0xBB
        帧类型Type:0x01(响应帧)
        指令代码Command:0x49
        指令参数长度PL: 0x0010
        PC+卡号的长度:0x0E
        PC:0x3000
        标签卡号:0xE2 00 00 1D 73 15 01 65 21 40 8F C6
        写入成功:0x00
        校验位Checksum:0x3B
        帧尾:0x7E

写入失败会接收到:
        BB 01 0C 00 01 00 0E 7E
        BB 01 FF 00 10 10 0E 34 00 E2 00 00 1D 73 15 01 65 21 40 8F C6 FE 7E 
        写入失败接收到其实是2个包,第一个包是Select Set 的响应包(即选择命令的返回包);第二个包是读取失败的响应包:
        BB 01 FF:是包识别符,表示出错,长度3个字节;
        00 10:是包长度,16进制,0x10表示 16个字节,长度2个字节;
        10:错误码: 0x10表示没找到卡;
        0x16:表示 访问密码错误;
        0xB3:表示超出读写范围;
再次读取User区的内容(参考单次读取)

3.标签卡号读取

(1)单卡读取

        TX: BB 00 22 00 00 22 7E 

        RX: BB 02 22 00 11 D1 30 00 E2 00 00 1D 73 15 01 65 21 40 8F C6 B8 3E CF 7E 

发送说明:

        帧头:0xBB
        帧类型Type:0x00(命令帧)
        指令代码Command:0x22
        指令参数长度PL:0x0000
        校验位Checksum:0x22
        帧尾:0x7E

响应说明:

        帧头:0xBB
        帧类型Type:0x02(通知帧)
        指令代码Command:0x22
        指令参数长度PL: 0x0011
        PC+卡号的长度:0xD1
        PC:0x3000
        标签卡号:0xE2 00 00 1D 73 15 01 65 21 40 8F C6
        卡号的CRC:0xB8 3E
        校验位Checksum:0x3B
        帧尾:0x7E


(2)群卡读取

        TX: BB 00 27 00 03 22 FF FF 4A 7E 

        RX: BB 01 FF 00 01 15 16 7E (读取不到卡时,不断返回)

发出连读读取帧后,会联续的接收到收到两种类型的包。
其中一种为 BB 01 FF 00 01 15 16 7E   表示读取失败;
另外一种为 BB 02 22 00 11 C5 30 00 E2 00 00 1D 73 15 01 65 21 40 8F C6 B8 3E C3 7E  表示读到卡号,具体格式与单次读取卡号的回复包相同;

E2 00 00 1D 73 15 01 65 21 40 8F C6 为标签卡号

0xB8 3E 为 卡号的CRC

(3)停止(暂停)读卡

        TX: BB 00 28 00 00 28 7E  停止(暂停)读卡指令

        RX: BB 01 28 00 01 00 2A 7E  停止(暂停)读卡响应

4.Read读卡内容(0x02-TID区)

        选择命令:BB 00 0C 00 07 23 00 00 00 00 60 00 96 7E
        发回:BB 01 0C 00 01 00 0E 7E     表示成功
    
        再次发送命令读取02-TID区的内容 

        TX: BB 00 39 00 09 00 00 00 00 02 00 00 00 04 48 7E

        RX: BB 01 39 00 17 0E 30 00 E2 00 00 1D 73 15 01 65 21 40 8F C6 E2 00 34 12 01 3A 1B 00 B0 7E 

发送说明:

        帧头:0xBB
        帧类型Type:0x00(命令帧)
        指令代码Command:0x39
        指令参数长度PL:0x0009
        Access Password:0x00000000
        标签数据存储区MemBank:0x02(TID 区)
        读标签数据区地址偏移SA:0x0000
        读标签数据区地址长度DL:0x0004
        校验位Checksum:0x48
        帧尾:0x7E

响应说明:

        帧头:0xBB
        帧类型Type:0x01(响应帧)
        指令代码Command:0x39
        指令参数长度PL:0x0017
        PC+卡号的长度:0x0E
        PC:0x3000
        标签卡号:0xE2 00 00 1D 73 15 01 65 21 40 8F C6
        读标签数据区:0xE2 00 34 12 01 3A 1B 00(出厂写入的信息),
        校验位Checksum:0xB0
        帧尾:0x7E

向02TID区Write写入内容:(超高频标签的TID区是不能写的,只能读)
    可以测试能不能写入
    TX: BB 00 49 00 11 00 00 00 00 02 00 00 00 04 01 02 03 04 05 06 07 08 84 7E
    RX: BB 01 FF 00 10 B4 0E 30 00 E2 00 00 1D 73 15 01 65 21 40 8F C6 A5 7E 
    
    再次读取02TID区的内容(见Read读卡内容(0x02-TID区))
    TX: BB 00 39 00 09 00 00 00 00 02 00 00 00 04 48 7E
    RX: BB 01 39 00 17 0E 30 00 E2 00 00 1D 73 15 01 65 21 40 8F C6 E2 00 34 12 01 3A 1B 00 B0 7E  (E2 00 34 12 01 3A 1B 00 八个字节依旧没改变,说明不会被写入)

5. 设置发射功率


        TX: BB 00 B6 00 02 04 E2 9E 7E ;设置发射功率为18.5/12.5dBm(R200功率/R200 Lite功率); (0.6m)
        BB 00 B6 00 02 05 78 35 7E ;设置发射功率为20/14dBm; (0.8m)
        BB 00 B6 00 02 06 0E CC 7E ;设置发射功率为21.5/15.5dBm; (0.9m)
        BB 00 B6 00 02 06 A4 62 7E ;设置发射功率为23/17dBm; (1m)
        BB 00 B6 00 02 07 3A F9 7E ;设置发射功率为24.5/18.5dBm; (1.15m)
        BB 00 B6 00 02 07 D0 8F 7E ;设置发射功率为26/20dBm;(最大发射功率,也是默认设置) (2m)
以上的数据包,选择发送一条;
        Rx:BB 01 B6 00 01 00 B8 7E  发送设置任何发射功率,设置成功后,均回复该数据包。

6. 读标签结果

平板一体化读卡器资料下载
资料提取码:

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Youning_Yim/article/details/120954609

智能推荐

分布式光纤传感器的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告_预计2026年中国分布式传感器市场规模有多大-程序员宅基地

文章浏览阅读3.2k次。本文研究全球与中国市场分布式光纤传感器的发展现状及未来发展趋势,分别从生产和消费的角度分析分布式光纤传感器的主要生产地区、主要消费地区以及主要的生产商。重点分析全球与中国市场的主要厂商产品特点、产品规格、不同规格产品的价格、产量、产值及全球和中国市场主要生产商的市场份额。主要生产商包括:FISO TechnologiesBrugg KabelSensor HighwayOmnisensAFL GlobalQinetiQ GroupLockheed MartinOSENSA Innovati_预计2026年中国分布式传感器市场规模有多大

07_08 常用组合逻辑电路结构——为IC设计的延时估计铺垫_基4布斯算法代码-程序员宅基地

文章浏览阅读1.1k次,点赞2次,收藏12次。常用组合逻辑电路结构——为IC设计的延时估计铺垫学习目的:估计模块间的delay,确保写的代码的timing 综合能给到多少HZ,以满足需求!_基4布斯算法代码

OpenAI Manager助手(基于SpringBoot和Vue)_chatgpt网页版-程序员宅基地

文章浏览阅读3.3k次,点赞3次,收藏5次。OpenAI Manager助手(基于SpringBoot和Vue)_chatgpt网页版

关于美国计算机奥赛USACO,你想知道的都在这_usaco可以多次提交吗-程序员宅基地

文章浏览阅读2.2k次。USACO自1992年举办,到目前为止已经举办了27届,目的是为了帮助美国信息学国家队选拔IOI的队员,目前逐渐发展为全球热门的线上赛事,成为美国大学申请条件下,含金量相当高的官方竞赛。USACO的比赛成绩可以助力计算机专业留学,越来越多的学生进入了康奈尔,麻省理工,普林斯顿,哈佛和耶鲁等大学,这些同学的共同点是他们都参加了美国计算机科学竞赛(USACO),并且取得过非常好的成绩。适合参赛人群USACO适合国内在读学生有意向申请美国大学的或者想锻炼自己编程能力的同学,高三学生也可以参加12月的第_usaco可以多次提交吗

MySQL存储过程和自定义函数_mysql自定义函数和存储过程-程序员宅基地

文章浏览阅读394次。1.1 存储程序1.2 创建存储过程1.3 创建自定义函数1.3.1 示例1.4 自定义函数和存储过程的区别1.5 变量的使用1.6 定义条件和处理程序1.6.1 定义条件1.6.1.1 示例1.6.2 定义处理程序1.6.2.1 示例1.7 光标的使用1.7.1 声明光标1.7.2 打开光标1.7.3 使用光标1.7.4 关闭光标1.8 流程控制的使用1.8.1 IF语句1.8.2 CASE语句1.8.3 LOOP语句1.8.4 LEAVE语句1.8.5 ITERATE语句1.8.6 REPEAT语句。_mysql自定义函数和存储过程

半导体基础知识与PN结_本征半导体电流为0-程序员宅基地

文章浏览阅读188次。半导体二极管——集成电路最小组成单元。_本征半导体电流为0

随便推点

【Unity3d Shader】水面和岩浆效果_unity 岩浆shader-程序员宅基地

文章浏览阅读2.8k次,点赞3次,收藏18次。游戏水面特效实现方式太多。咱们这边介绍的是一最简单的UV动画(无顶点位移),整个mesh由4个顶点构成。实现了水面效果(左图),不动代码稍微修改下参数和贴图可以实现岩浆效果(右图)。有要思路是1,uv按时间去做正弦波移动2,在1的基础上加个凹凸图混合uv3,在1、2的基础上加个水流方向4,加上对雾效的支持,如没必要请自行删除雾效代码(把包含fog的几行代码删除)S..._unity 岩浆shader

广义线性模型——Logistic回归模型(1)_广义线性回归模型-程序员宅基地

文章浏览阅读5k次。广义线性模型是线性模型的扩展,它通过连接函数建立响应变量的数学期望值与线性组合的预测变量之间的关系。广义线性模型拟合的形式为:其中g(μY)是条件均值的函数(称为连接函数)。另外,你可放松Y为正态分布的假设,改为Y 服从指数分布族中的一种分布即可。设定好连接函数和概率分布后,便可以通过最大似然估计的多次迭代推导出各参数值。在大部分情况下,线性模型就可以通过一系列连续型或类别型预测变量来预测正态分布的响应变量的工作。但是,有时候我们要进行非正态因变量的分析,例如:(1)类别型.._广义线性回归模型

HTML+CSS大作业 环境网页设计与实现(垃圾分类) web前端开发技术 web课程设计 网页规划与设计_垃圾分类网页设计目标怎么写-程序员宅基地

文章浏览阅读69次。环境保护、 保护地球、 校园环保、垃圾分类、绿色家园、等网站的设计与制作。 总结了一些学生网页制作的经验:一般的网页需要融入以下知识点:div+css布局、浮动、定位、高级css、表格、表单及验证、js轮播图、音频 视频 Flash的应用、ul li、下拉导航栏、鼠标划过效果等知识点,网页的风格主题也很全面:如爱好、风景、校园、美食、动漫、游戏、咖啡、音乐、家乡、电影、名人、商城以及个人主页等主题,学生、新手可参考下方页面的布局和设计和HTML源码(有用点赞△) 一套A+的网_垃圾分类网页设计目标怎么写

C# .Net 发布后,把dll全部放在一个文件夹中,让软件目录更整洁_.net dll 全局目录-程序员宅基地

文章浏览阅读614次,点赞7次,收藏11次。之前找到一个修改 exe 中 DLL地址 的方法, 不太好使,虽然能正确启动, 但无法改变 exe 的工作目录,这就影响了.Net 中很多获取 exe 执行目录来拼接的地址 ( 相对路径 ),比如 wwwroot 和 代码中相对目录还有一些复制到目录的普通文件 等等,它们的地址都会指向原来 exe 的目录, 而不是自定义的 “lib” 目录,根本原因就是没有修改 exe 的工作目录这次来搞一个启动程序,把 .net 的所有东西都放在一个文件夹,在文件夹同级的目录制作一个 exe._.net dll 全局目录

BRIEF特征点描述算法_breif description calculation 特征点-程序员宅基地

文章浏览阅读1.5k次。本文为转载,原博客地址:http://blog.csdn.net/hujingshuang/article/details/46910259简介 BRIEF是2010年的一篇名为《BRIEF:Binary Robust Independent Elementary Features》的文章中提出,BRIEF是对已检测到的特征点进行描述,它是一种二进制编码的描述子,摈弃了利用区域灰度..._breif description calculation 特征点

房屋租赁管理系统的设计和实现,SpringBoot计算机毕业设计论文_基于spring boot的房屋租赁系统论文-程序员宅基地

文章浏览阅读4.1k次,点赞21次,收藏79次。本文是《基于SpringBoot的房屋租赁管理系统》的配套原创说明文档,可以给应届毕业生提供格式撰写参考,也可以给开发类似系统的朋友们提供功能业务设计思路。_基于spring boot的房屋租赁系统论文