commit 7ea32e33afa3b8ffb703c5623164fc238d6dc5ba Author: kejingfan Date: Fri Jun 7 21:27:26 2024 +0800 first commit diff --git a/Assignments/Assignment1/E-doc Part/photo.jpg b/Assignments/Assignment1/E-doc Part/photo.jpg new file mode 100644 index 0000000..cd754e2 Binary files /dev/null and b/Assignments/Assignment1/E-doc Part/photo.jpg differ diff --git a/Assignments/Assignment1/E-doc Part/第1次作业-柯劲帆-21281280.docx b/Assignments/Assignment1/E-doc Part/第1次作业-柯劲帆-21281280.docx new file mode 100644 index 0000000..ddaad3c Binary files /dev/null and b/Assignments/Assignment1/E-doc Part/第1次作业-柯劲帆-21281280.docx differ diff --git a/Assignments/Assignment1/E-doc Part/第1次作业-柯劲帆-21281280.md b/Assignments/Assignment1/E-doc Part/第1次作业-柯劲帆-21281280.md new file mode 100644 index 0000000..afa81ac --- /dev/null +++ b/Assignments/Assignment1/E-doc Part/第1次作业-柯劲帆-21281280.md @@ -0,0 +1,15 @@ +> 用手机拍一张生活中常见的天线,猜测其天线特征,然后上网学习研究下,和你猜测一样吗? + +photo + +拍摄对象为一款路由器天线,该设备配置了四根天线。基于对路由器功能及其基本参数的了解,我进行以下初步猜测: + +- **方向特性**:我预测这是一款全向性天线,它能够在所有方向上较为均匀地发射和接收信号。 +- **频率范围**:该天线可能支持2.4GHz和5GHz的双频段。 +- **带宽**:预计带宽约为1000Mbps。 + +为了验证我的猜测,我进行了网上研究,包括查阅路由器的官方规格说明和阅读相关的分析文章。分析结果如下: + +- **方向特性**:实际上,这款天线是贴片天线,它能在天线平面方向上提供更强的信号,这与我最初的全向天线假设不符。观察天线的外观可以发现,它们不是标准的圆柱形,而是扁平的设计。 +- **工作频率**:路由器天线在ISM频段工作,包括2.4GHz和5GHz,这属于UHF和SHF的范围,主要用于无线数据通信。 +- **耦合方式**:这些天线在辐射远场区工作,其电磁波的传播并不依赖于天线与接收设备之间的具体距离,非常适合用于远距离通信。 \ No newline at end of file diff --git a/Assignments/Assignment1/Hand-writed Part/RFID.md b/Assignments/Assignment1/Hand-writed Part/RFID.md new file mode 100644 index 0000000..0e29537 --- /dev/null +++ b/Assignments/Assignment1/Hand-writed Part/RFID.md @@ -0,0 +1,93 @@ +# 2. + +> 请谈谈你所理解的RFID及其在物联网中的作用 + +RFID是一种无线通信技术,它通过无线电波来识别和追踪附着有RFID标签的物体。RFID系统主要包括三个组成部分:RFID标签、RFID读写器和数据管理系统。 + +RFID标签通常包含一个微型电子芯片和天线,芯片存储着标签的唯一信息。这些标签可以是被动的,也就是说它们没有自己的电源,而是通过读写器发出的无线电波激活并返回一个信号;也可以是主动的,拥有内置电源并能主动发送信号。 + +RFID读写器是一个设备,用来发射信号激活标签并读取或写入数据。读写器可以是固定式的,比如安装在仓库入口,也可以是手持式的,便于移动使用。 + +数据管理系统是后台计算机系统,用于存储、处理和分析从RFID标签收集到的数据,并根据应用需求,将信息整合和共享给其他系统。 + +在物联网中RFID扮演的角色: + +1. **自动识别和数据采集**:RFID系统能够自动识别物体并采集数据,这是实现物联网中物品智能管理和追踪的基础。 + +2. **无需视线要求**:与条形码等需要直接视线的识别技术不同,RFID不需要直接视线就能读取标签数据,大大提高了操作的灵活性。 + +3. **即时追踪**:RFID可以提供实时的物品追踪信息,这对于库存管理、供应链优化等应用至关重要。 + +4. **多标签读取**:RFID读写器可以同时识别多个标签,这使得处理大量物品变得高效。 + +5. **环境适应性**:RFID标签可以设计成耐水、耐化学品、耐高温等,适合各种环境的应用。 + +6. **安全性和隐私**:RFID系统可以采用加密和认证技术来保护数据的安全性和隐私。 + +在物联网的框架内,RFID使得物理世界的物品与数字世界的信息系统连接成为可能,它们共同构成一个智能化、自动化、高效率的网络。这在零售、制造、物流、医疗、安全管理等领域都有广泛的应用。 + +# 3. + +> RFID的关键技术有哪些?请说明原因; + +1. **工作频率**:RFID设备工作在不同的频率带宽上,例如低频LF,高频HF,超高频UHF和微波频段。工作频率影响着RFID的读取距离和穿透能力。 +2. **天线设计**:天线是RFID系统的重要组成部分,它决定了标签和读写器的通信效率。天线设计涉及其形状、大小、方向性等,这些因素影响着能量的耦合效率和读取范围。 +3. **耦合机制**:射频识别中,天线之间的耦合可以是密耦合、遥耦合和远距离系统,这涉及到能量的传递方式和数据的传输机制。如电感耦合通常用于近距离通信,而反向散射耦合方式适用于远距离通信。 +4. **数据编码和调制方式**:数据的编码和调制方式是确保数据传输准确性和效率的关键技术。这涉及到如何将数据信号转换为射频信号以及如何在接收端解调这些信号。 +5. **多应答器读取能力**:在RFID系统中,通常需要在同一时间读取多个标签,这就要求系统具有防碰撞或防冲突的能力。 +6. **应答器(标签)设计**:应答器或标签的设计涉及到是否有源、半有源或无源,以及它们的存储容量、安全性能(如密钥、认证)等。 +7. **安全机制**:随着RFID的广泛应用,安全性越来越受到重视,涉及通信加密、数据存储加密等,以保护数据不被未授权访问或篡改。 +8. **标准化**:RFID的技术标准化是其大规模商用的前提,有助于不同系统和应用之间的兼容。 + +# 4. + +> HF RFID reader的典型工作频率是多少?Transponder向reader发送数据时,为何采用和reader相同的工作频率?它是如何实现数据发送的? + +HF RFID reader的典型工作频率是13.56 MHz。 + +因为Transponder通常是被动的,它利用由读写器发出的射频能量来激活其电路,并利用近场通信的方式进行能量和信息的传递。这种方式要求Transponder和reader之间的频率必须一致,以便进行有效的能量转换和数据通信。 + +在HF RFID系统中,Transponder通过负载调制的方式实现数据发送。这意味着它会改变其内部电路的阻抗,从而改变其从reader获得的能量量,这种变化反映为对reader发送的信号的调制。reader能够检测这些由Transponder所引起的信号强度的变化,并将其解调成数字数据。通过这种方式,Transponder能够在没有自己的电源供应的情况下,向reader发送信息。 + +# 5. + +> 请介绍一个身边的基于RFID技术的应用系统。尽可能描述全些: 比如card/tag/label的形状,系统组成、系统功能等; + +**卡片形状与类型**: + +- 校园卡是一张塑料卡,尺寸遵循ISO/IEC 7810标准的ID-1尺寸,和身份证/银行卡一样大小。 +- 卡片内嵌有一个RFID芯片和天线,使其能够进行无线通信。基于ISO/IEC 14443A协议,属于HF RFID,工作频率是13.56 MHz。 +- 校园卡表面印有学生的个人信息,如姓名、照片、学号等。 + +**系统组成**: + +1. **Transponder(卡片)**:学生持有的身份识别卡,内置RFID芯片存储学生的身份信息和余额等其他相关数据。 +2. **Reader**:安装在门禁、食堂、图书馆入口等地方,用于读取卡片信息并进行验证。 +3. **天线**:Reader有内置天线,用于与卡片进行电磁场的交互。 +4. **控制系统**:连接Reader的后端系统,负责处理读取的信息并进行相应的逻辑处理,如开门、扣费等。 +5. **数据库系统**:存储所有卡片的数据,包括个人信息、访问权限、账户余额等。 +6. **应用接口**:为食堂、图书馆等提供与校园卡系统对接的接口,以便实现各种功能。 + +**系统功能**: + +1. **身份验证**:在校园内用作身份识别,如门禁系统自动检测学生身份允许进入住宿区、教学楼等。 +2. **支付功能**:在校园食堂、超市、打印店等处使用校园卡支付,替代现金交易。 +3. **图书管理**:在图书馆借阅和归还书籍时作为用户识别的凭证。 +4. **访问控制**:控制和记录学生对宿舍等特定区域的访问。 +5. **公共交通**:校园卡还具有公共交通支付的功能,可以在北京地铁/公交上使用。 + + + +# 6. + +> 请谈谈你对RFID未来的技术发展方向和应用场景的看法。 + +**发展方向:** + +**更高的集成度**: RFID芯片可以变得更小、更节能且成本更低,可将它们集成到更多的日常产品中,比如将校园卡集成到一个徽章或戒指/手环中。 + +**更精准的定位技术**: 通过与Wi-Fi、蓝牙等其他无线技术融合,RFID可提供更精准的室内定位和导航功能,对于零售、博物馆、医院等场景尤其有价值。 + +**应用场景:** + +除了传统的库存管理、物流跟踪、个人身份验证外,RFID技术可能会被用于更多创新的领域,比如医疗健康监测、食品安全追溯、智能交通系统、自动化零售以及个性化服务等。 \ No newline at end of file diff --git a/Assignments/Assignment1/Hand-writed Part/作业1_21281280_柯劲帆.pdf b/Assignments/Assignment1/Hand-writed Part/作业1_21281280_柯劲帆.pdf new file mode 100644 index 0000000..b944598 Binary files /dev/null and b/Assignments/Assignment1/Hand-writed Part/作业1_21281280_柯劲帆.pdf differ diff --git a/Assignments/Assignment1/Problems/1.png b/Assignments/Assignment1/Problems/1.png new file mode 100644 index 0000000..a7c2cb4 Binary files /dev/null and b/Assignments/Assignment1/Problems/1.png differ diff --git a/Assignments/Assignment2/Hand-write Part/作业2_21281280_柯劲帆.pdf b/Assignments/Assignment2/Hand-write Part/作业2_21281280_柯劲帆.pdf new file mode 100644 index 0000000..7d1581c Binary files /dev/null and b/Assignments/Assignment2/Hand-write Part/作业2_21281280_柯劲帆.pdf differ diff --git a/Assignments/Assignment2/Problems/1.png b/Assignments/Assignment2/Problems/1.png new file mode 100644 index 0000000..aece11e Binary files /dev/null and b/Assignments/Assignment2/Problems/1.png differ diff --git a/Assignments/Assignment2/Problems/2.png b/Assignments/Assignment2/Problems/2.png new file mode 100644 index 0000000..b45886c Binary files /dev/null and b/Assignments/Assignment2/Problems/2.png differ diff --git a/Assignments/Assignment2/Problems/3.png b/Assignments/Assignment2/Problems/3.png new file mode 100644 index 0000000..cf96484 Binary files /dev/null and b/Assignments/Assignment2/Problems/3.png differ diff --git a/Assignments/Assignment2/Problems/4.png b/Assignments/Assignment2/Problems/4.png new file mode 100644 index 0000000..8ebc795 Binary files /dev/null and b/Assignments/Assignment2/Problems/4.png differ diff --git a/Assignments/Assignment2/Problems/5.png b/Assignments/Assignment2/Problems/5.png new file mode 100644 index 0000000..4f592a0 Binary files /dev/null and b/Assignments/Assignment2/Problems/5.png differ diff --git a/Assignments/Assignment3/Hand-write Part/作业3_21281280_柯劲帆.pdf b/Assignments/Assignment3/Hand-write Part/作业3_21281280_柯劲帆.pdf new file mode 100644 index 0000000..c45c5f7 Binary files /dev/null and b/Assignments/Assignment3/Hand-write Part/作业3_21281280_柯劲帆.pdf differ diff --git a/Assignments/Assignment3/Problems/1.png b/Assignments/Assignment3/Problems/1.png new file mode 100644 index 0000000..f854e60 Binary files /dev/null and b/Assignments/Assignment3/Problems/1.png differ diff --git a/Assignments/Assignment3/Problems/2.png b/Assignments/Assignment3/Problems/2.png new file mode 100644 index 0000000..8122b5c Binary files /dev/null and b/Assignments/Assignment3/Problems/2.png differ diff --git a/Assignments/作业参考答案.pdf b/Assignments/作业参考答案.pdf new file mode 100644 index 0000000..d41a8b5 Binary files /dev/null and b/Assignments/作业参考答案.pdf differ diff --git a/Courseware/第4章 数据校验和防碰撞算法.pptx b/Courseware/第4章 数据校验和防碰撞算法.pptx new file mode 100644 index 0000000..ec7aaea Binary files /dev/null and b/Courseware/第4章 数据校验和防碰撞算法.pptx differ diff --git a/Courseware/第8章 13.56 MHz RFID技术.ppt b/Courseware/第8章 13.56 MHz RFID技术.ppt new file mode 100644 index 0000000..b9a73a0 Binary files /dev/null and b/Courseware/第8章 13.56 MHz RFID技术.ppt differ diff --git a/Labs/Lab1/requirements/HFPRIN.exe b/Labs/Lab1/requirements/HFPRIN.exe new file mode 100644 index 0000000..73ac888 Binary files /dev/null and b/Labs/Lab1/requirements/HFPRIN.exe differ diff --git a/Labs/Lab1/requirements/RFID原理与应用实验.pdf b/Labs/Lab1/requirements/RFID原理与应用实验.pdf new file mode 100644 index 0000000..b01a94e Binary files /dev/null and b/Labs/Lab1/requirements/RFID原理与应用实验.pdf differ diff --git a/Labs/Lab1/requirements/示波器说明书.pdf b/Labs/Lab1/requirements/示波器说明书.pdf new file mode 100644 index 0000000..bd64c8a Binary files /dev/null and b/Labs/Lab1/requirements/示波器说明书.pdf differ diff --git a/Labs/Lab1/tmp/IMG_20240509_172720.jpg b/Labs/Lab1/tmp/IMG_20240509_172720.jpg new file mode 100644 index 0000000..1e4ef8d Binary files /dev/null and b/Labs/Lab1/tmp/IMG_20240509_172720.jpg differ diff --git a/Labs/Lab1/tmp/IMG_20240509_173118.jpg b/Labs/Lab1/tmp/IMG_20240509_173118.jpg new file mode 100644 index 0000000..275549f Binary files /dev/null and b/Labs/Lab1/tmp/IMG_20240509_173118.jpg differ diff --git a/Labs/Lab1/tmp/IMG_20240509_174208.jpg b/Labs/Lab1/tmp/IMG_20240509_174208.jpg new file mode 100644 index 0000000..f81b02b Binary files /dev/null and b/Labs/Lab1/tmp/IMG_20240509_174208.jpg differ diff --git a/Labs/Lab1/tmp/IMG_20240509_174241.jpg b/Labs/Lab1/tmp/IMG_20240509_174241.jpg new file mode 100644 index 0000000..823f86e Binary files /dev/null and b/Labs/Lab1/tmp/IMG_20240509_174241.jpg differ diff --git a/Labs/Lab1/tmp/IMG_20240509_180229.jpg b/Labs/Lab1/tmp/IMG_20240509_180229.jpg new file mode 100644 index 0000000..8f07764 Binary files /dev/null and b/Labs/Lab1/tmp/IMG_20240509_180229.jpg differ diff --git a/Labs/Lab1/tmp/IMG_20240509_180242.jpg b/Labs/Lab1/tmp/IMG_20240509_180242.jpg new file mode 100644 index 0000000..bbcc3f5 Binary files /dev/null and b/Labs/Lab1/tmp/IMG_20240509_180242.jpg differ diff --git a/Labs/Lab1/tmp/IMG_20240509_180450.jpg b/Labs/Lab1/tmp/IMG_20240509_180450.jpg new file mode 100644 index 0000000..e45bda6 Binary files /dev/null and b/Labs/Lab1/tmp/IMG_20240509_180450.jpg differ diff --git a/Labs/Lab1/tmp/IMG_20240509_180732.jpg b/Labs/Lab1/tmp/IMG_20240509_180732.jpg new file mode 100644 index 0000000..ce8b415 Binary files /dev/null and b/Labs/Lab1/tmp/IMG_20240509_180732.jpg differ diff --git a/Labs/Lab2/requirements/pcd和picc使用说明.pdf b/Labs/Lab2/requirements/pcd和picc使用说明.pdf new file mode 100644 index 0000000..bbca381 Binary files /dev/null and b/Labs/Lab2/requirements/pcd和picc使用说明.pdf differ diff --git a/Labs/Lab3/requirements/Config.ini b/Labs/Lab3/requirements/Config.ini new file mode 100644 index 0000000..f9f330f --- /dev/null +++ b/Labs/Lab3/requirements/Config.ini @@ -0,0 +1,5 @@ +[Main] +Principle=1 +PrincipleCom=3 +HF=1 +HFCom=3 diff --git a/Labs/Lab3/requirements/HF.exe b/Labs/Lab3/requirements/HF.exe new file mode 100644 index 0000000..8fa822b Binary files /dev/null and b/Labs/Lab3/requirements/HF.exe differ diff --git a/Labs/Lab3/requirements/HF15693.dll b/Labs/Lab3/requirements/HF15693.dll new file mode 100644 index 0000000..6aea04c Binary files /dev/null and b/Labs/Lab3/requirements/HF15693.dll differ diff --git a/Labs/Lab3/requirements/RFID课内实验要求.pdf b/Labs/Lab3/requirements/RFID课内实验要求.pdf new file mode 100644 index 0000000..8801091 Binary files /dev/null and b/Labs/Lab3/requirements/RFID课内实验要求.pdf differ diff --git a/Labs/Lab3/source/images/Inventory.png b/Labs/Lab3/source/images/Inventory.png new file mode 100644 index 0000000..1ade3d3 Binary files /dev/null and b/Labs/Lab3/source/images/Inventory.png differ diff --git a/Labs/Lab3/source/images/Select.jpg b/Labs/Lab3/source/images/Select.jpg new file mode 100644 index 0000000..66b33ce Binary files /dev/null and b/Labs/Lab3/source/images/Select.jpg differ diff --git a/Labs/Lab3/source/images/再次读系统信息.jpg b/Labs/Lab3/source/images/再次读系统信息.jpg new file mode 100644 index 0000000..60eeb36 Binary files /dev/null and b/Labs/Lab3/source/images/再次读系统信息.jpg differ diff --git a/Labs/Lab3/source/images/写AFI.jpg b/Labs/Lab3/source/images/写AFI.jpg new file mode 100644 index 0000000..d55d26f Binary files /dev/null and b/Labs/Lab3/source/images/写AFI.jpg differ diff --git a/Labs/Lab3/source/images/写单块.jpg b/Labs/Lab3/source/images/写单块.jpg new file mode 100644 index 0000000..a7c3dd3 Binary files /dev/null and b/Labs/Lab3/source/images/写单块.jpg differ diff --git a/Labs/Lab3/source/images/获取信息.jpg b/Labs/Lab3/source/images/获取信息.jpg new file mode 100644 index 0000000..bb69cf0 Binary files /dev/null and b/Labs/Lab3/source/images/获取信息.jpg differ diff --git a/Labs/Lab3/source/images/读单块.jpg b/Labs/Lab3/source/images/读单块.jpg new file mode 100644 index 0000000..c1798fd Binary files /dev/null and b/Labs/Lab3/source/images/读单块.jpg differ diff --git a/Labs/Lab3/source/images/连接图.png b/Labs/Lab3/source/images/连接图.png new file mode 100644 index 0000000..3dbfb51 Binary files /dev/null and b/Labs/Lab3/source/images/连接图.png differ diff --git a/Labs/Lab3/source/images/重新读单块.jpg b/Labs/Lab3/source/images/重新读单块.jpg new file mode 100644 index 0000000..db0613c Binary files /dev/null and b/Labs/Lab3/source/images/重新读单块.jpg differ diff --git a/Labs/Lab3/source/实验3_21281280_柯劲帆.md b/Labs/Lab3/source/实验3_21281280_柯劲帆.md new file mode 100644 index 0000000..4e35b28 --- /dev/null +++ b/Labs/Lab3/source/实验3_21281280_柯劲帆.md @@ -0,0 +1,541 @@ +

课程实验

+ +
+
课程名称:RFID 原理与应用
+
实验名称:防碰撞和访问 ISO15693 卡
+
学号:21281280
+
姓名:柯劲帆
+
班级:物联网2101班
+
指导老师:赵帅锋
+
日期:2024年6月4日
+
+ +--- + +[TOC] + +# 1. 实验环境准备 + +- **RFID HF Reader 硬件**:MSP370 + TRF7970 +- **实验 PC **:Windows 11 笔记本 +- **实验软件**:HF.exe + +PC 和 RFID HF Reader 通过 USB 口连接,但软件接口其实是 UART 。Reader 端使用 CH340,CH340 和 CPU 通过 UART 连接,对外提供 USB 接口,PC 端安装 CH340 的驱动程序,当 Reader 连接到 USB 口上后,PC 会发现一个 COM 端口,软件使用该 COM 口和 Reader 进行通信。 + +使用 HF.exe 连接 RFID HF Reader。 + +连接图 + + + +# 2. 命令帧分析 + +在实验软件的日志框中可以看到 Reader 发送的命令,其帧结构如下: + +
表 2-1
+ +| | SOF | Flag | Cmd | Arguments | Data | CRC16 | EOF | +| :------: | :--: | :----: | :----: | :-------: | :--: | :-----: | :--: | +| **长度** | | 8 bits | 8 bits | | | 16 bits | | + +对于 `Flag` 值和 `Cmd` 值,将在以下两节中论述。 + +对于 `Arguments` 和 `Data` 值,具体见每一个命令。 + +## 2.1. Flag 值 + +对于 8 bits 的 `Flag` 值,其结构定义如下: + +
表 2-2
+ +| 位(bit) | 标志名称 | 值描述 | 备注 | +| :-------: | :------: | ------------------------------------------------------------ | :--------------------------------------- | +| b1 | 副载波 | `0` - VICC 应使用单个副载波频率;`1` - VICC 应使用两个副载波频率 | 对应 `Request Flag` 框中 `Sub_carrier` | +| b2 | 数据速率 | `0` - 低速率数据;`1`- 高速率数据 | 对应 `Request Flag` 框中 `HighData_rate` | +| b3 | 目录 | `0` - 第 5 到 8 位按照[表 A ](#t2_3)规定;`1`- 第 5 到 8 位按照[表 B ](#t2_4)规定 | | +| b4 | 协议扩展 | `0` - 无协议格式扩展;`1`- 协议格式已扩展(保留供以后使用) | | + +`Flag` 值的第 5 到 8 位依据第 3 位指定,由以下的 A 表或 B 表规定: + +- A 表: + +
表 2-3
+ + | 位(bit) | 标志名称 | 值描述 | 备注 | + | :-------: | :------: | ------------------------------------------------------------ | :----------------------------------- | + | b5 | 选择 | `0` - 根据寻址标志设置,请求将由任何 ⅥCC 执行;`1` - 请求只由处于选择状态的 VICC 执行,寻址标志应设置为 0,UID 域应不包含在请求中 | 对应 `Request Flag` 框中 `Select` | + | b6 | 寻址 | `0` - 请求没有寻址。不包括 UID 域。可以由任何 VICC 执行;`1`- 请求有寻址。包括 UID 域。仅由那些自身 UI 与请求中规定的 UID 匹配的 VICC 才能执行 | 对应 `Request Flag` 框中 `Addressed` | + | b7 | 选择权 | `0` - 含义由命令描述定义。如果没有被命令定义,它应设置为0;`1`- 含义由命令描述定义 | | + | b8 | RFU | 固定为 `0` | | + +- B 表: + +
表 2-4
+ + | 位(bit) | 标志名称 | 值描述 | 备注 | + | :-------: | :------: | ------------------------------------------------------------ | :---------------------------------------- | + | b5 | AFI | `0` - 无指定 AFI 域;`1` - 指定 AFI 域 | 对应 `Request Flag` 框中 `AFI is present` | + | b6 | Nb_slots | `0` - 有 16 个 slots;`1`- 有 1 个 slots | 对应 `Request Flag` 框中 `One_slot` | + | b7 | 选择权 | `0` - 含义由命令描述定义。如果没有被命令定义,它应设置为0;`1`- 含义由命令描述定义 | | + | b8 | RFU | 固定为 `0` | | + +## 2.2. Cmd 值 + +对于 8 bits 的 `Flag` 值,其值定义如下: + +
表 1-5
+ +| 命令编码 | 类型 | 功能 | +| :---------: | :----: | :----------------: | +| '01' | 强制的 | 目录 | +| '02' | 强制的 | 保持静默 | +| '03' - '1F' | 强制的 | RFU | +| '20' | 可选的 | 读单个块 | +| '21' | 可选的 | 写单个块 | +| '22' | 可选的 | 锁定块 | +| '23' | 可选的 | 读多个块 | +| '24' | 可选的 | 写多个块 | +| '25' | 可选的 | 选择 | +| '26' | 可选的 | 复位准备 | +| '27' | 可选的 | 写 AFI | +| '28' | 可选的 | 锁定 AFI | +| '29' | 可选的 | 写 DSFID | +| '2A' | 可选的 | 锁定 DSFID | +| '2B' | 可选的 | 获取系统信息 | +| '2C' | 可选的 | 获取多个块安全状态 | +| '2D' - '9F' | 可选的 | RFU | +| 'A0' - 'DF' | 定制的 | IC Mfg 决定 | +| 'E0' - 'FF' | 私有的 | IC Mfg 决定 | + + + + + +# 2. Inventory 命令 + +`Inventory` 命令用于清点射频场中的卡片。 + +## 2.1. 工作原理 + +`Inventory` 命令工作原理如下: + +- **发送请求**:读写器向射频场中的所有卡片发送一个 `Inventory` 请求命令。 +- **范围响应**:指定一个叫号范围(例如0-15),卡片根据序列号最低4位(0000-1111)逐一响应。 +- **无冲突响应**:如果某个序列号响应时没有冲突(即只有一张卡片响应),该卡片的序列号(UID)被记录在读写器中。 +- **帧结束标志**:读写器发送帧结束标志,通知下一组卡片响应。例如,最低4位为0000的卡片响应后,发送帧结束标志,通知最低4位为0001的卡片响应。 +- **重复过程**:重复发送帧结束标志,依次让最低4位为0000到1111的卡片响应,直到所有范围内的卡片都被询问一遍。 +- **选择卡片**:在某个响应过程中,如果没有发生冲突,读写器就可以选择该张卡片进行进一步操作。 + +## 2.2. 实验过程 + +将 3 张 ISO I5693 的卡片放到 RFID HF Reader 的射频区域上方。 + +选择 `Command` 区域中的 `Inventory`,点击 `Execute Command` 按钮。 + +Inventory + +`Cmd` 区域自动填充命令,日志框中打印 PC 向 Reader 发送了命令 `040100` ,PC 收到 Reader 返回的数据。 + +右上角卡片信息区域显示出 3 张卡,分别为 `E007816306B07370`、`E0040100232DB58A` 和 `E00401007B277A2E`,其最后一个字节并未冲突,分别占据 slot 0、slot 10 和 slot 14。 + +## 2.3. 命令帧数据分析 + +日志框中发送的数据为 `040100` ,依照[表 2-1](#t2_1): + +| | SOF | Flag | Cmd | Mask Len | Mask Value | CRC16 | EOF | +| :----: | :--: | :--: | :--: | :------: | :--------: | :----: | :--: | +| **值** | | `04` | `01` | `00` | - | `BC75` | | + +- 对于 `Flag` = `04` + + 依照[表 2-2](#t2_2): + + | 位(bit) | 标志名称 | 值 | 值描述 | + | :-------: | :------: | :--: | ---------------------------------- | + | b1 | 副载波 | 0 | VICC 应使用单个副载波频率 | + | b2 | 数据速率 | 0 | 低速率数据 | + | b3 | 目录 | 1 | 第 5 到 8 位按照[表 B ](#t2_4)规定 | + | b4 | 协议扩展 | 0 | 无协议格式扩展 | + + 和[表 2-4](#t2_4): + + | 位(bit) | 标志名称 | 值 | 值描述 | + | :-------: | :------: | :--: | ------------------ | + | b5 | AFI | 0 | 无指定 AFI 域 | + | b6 | Nb_slots | 0 | 有 16 个 slots | + | b7 | 选择权 | 0 | 含义由命令描述定义 | + | b8 | RFU | 0 | 固定为 `0` | + +- 对于 `Cmd` = `01` + + 依照[表 2-5](#t2_5),表示这是一条目录命令,即为 `Inventory` 命令。 + +- 对于 `Mask Len` = `00` + + 对于一开始查找,`Mask Len` 肯定等于 `00` ;查找后发现射频场中的所有卡的最低位并未冲突,所以不需掩蔽任何位。 + + + +# 3. Select 命令 + +## 3.1. 工作原理 + +`Select` 命令的工作逻辑如下: + +1. **选择标签**:通过 `SELECT` 命令选择一个标签(VICC)。 +2. **进入选中状态**:被选中的标签进入 `selected` 状态,确保只有一个标签处于 `selected` 状态。 +3. **后续命令指定**:之后发送的命令会直接针对这个处于 `selected` 状态的标签。 +4. **响应所有命令**:该标签可以响应所有带有 `select` 或 `addr/uid` 标志的命令。 + +这种机制确保了特定标签在被选中后可以被直接通信,避免了与其他标签的冲突。 + +## 3.2. 实验过程 + +1. 选择 `Command` 区域中的 `Select` ; +2. 勾选 `Request Flags` 区域中的 `Addressed` ; +3. 在 `UID` 复选框中选择 `E0040100232DB58A` ; +4. 点击 `Execute Command` 按钮。 + +Select + +`Cmd` 区域自动填充命令,日志框中打印 PC 向 Reader 发送了命令 `20258AB52D23000104E0` ,PC 收到 Reader 返回的数据 `00` ,表示成功选择。 + +## 3.3. 命令帧数据分析 + +日志框中发送的数据为 `20258AB52D23000104E0` : + +| | SOF | Flag | Cmd | UID | CRC16 | EOF | +| :----: | :--: | :--: | :--: | :----------------: | :----: | :--: | +| **值** | | `20` | `25` | `8AB52D23000104E0` | `1079` | | + +- 对于 `Flag` = `20` + + 依照[表 2-2](#t2_2): + + | 位(bit) | 标志名称 | 值 | 值描述 | + | :-------: | :------: | :--: | ---------------------------------- | + | b1 | 副载波 | 0 | VICC 应使用单个副载波频率 | + | b2 | 数据速率 | 0 | 低速率数据 | + | b3 | 目录 | 0 | 第 5 到 8 位按照[表 A ](#t2_3)规定 | + | b4 | 协议扩展 | 0 | 无协议格式扩展 | + + 和[表 2-3](#t2_3): + + | 位(bit) | 标志名称 | 值 | 值描述 | + | :-------: | :------: | :--: | ------------------------------------------------------------ | + | b5 | 选择 | 0 | 根据寻址标志设置,请求将由任何 ⅥCC 执行 | + | b6 | 寻址 | 1 | 请求有寻址。包括 UID 域。仅由那些自身 UI 与请求中规定的 UID 匹配的 VICC 才能执行 | + | b7 | 选择权 | 0 | 含义由命令描述定义 | + | b8 | RFU | 0 | 固定为 `0` | + +- 对于 `Cmd` = `25` + + 依照[表 2-5](#t2_5),表示这是一条选择命令,即为 `Select` 命令。 + +- 对于 `UID` = `8AB52D23000104E0` + + 它是 `UID` = `E0040100232DB58A` 的小端字节序。 + + + +# 4. Read Single Block 命令 + +查询指定卡中的指定块中的数据。 + +## 4.1. 实验过程 + +将单张 ISO I5693 的卡片放到 RFID HF Reader 的射频区域上方,经过 `Inventory` 识别后: + +1. 选择 `Command` 区域中的 `Read Single Block` ; +2. 勾选 `Request Flags` 区域中的 `Addressed` ; +3. 在 `UID` 复选框中选择 `E0040100232DB58A` ; +4. 在 `(first) Block` 文本框中填写查询的块号 `03` ; +5. 点击 `Execute Command` 按钮。 + +读单块 + +`Cmd` 区域自动填充命令,日志框中打印 PC 向 Reader 发送了命令 `20208AB52D23000104E003` ,PC 收到 Reader 返回的数据 `0000000000` 。 + +## 4.2. 命令帧数据分析 + +日志框中发送的数据为 `20208AB52D23000104E003` : + +| | SOF | Flag | Cmd | UID | Block | CRC16 | EOF | +| :----: | :--: | :--: | :--: | :----------------: | :---: | :----: | :--: | +| **值** | | `20` | `20` | `8AB52D23000104E0` | `03` | `B00E` | | + +- 对于 `Flag` = `20` + + 依照[表 2-2](#t2_2): + + | 位(bit) | 标志名称 | 值 | 值描述 | + | :-------: | :------: | :--: | ---------------------------------- | + | b1 | 副载波 | 0 | VICC 应使用单个副载波频率 | + | b2 | 数据速率 | 0 | 低速率数据 | + | b3 | 目录 | 0 | 第 5 到 8 位按照[表 A ](#t2_3)规定 | + | b4 | 协议扩展 | 0 | 无协议格式扩展 | + + 和[表 2-3](#t2_3): + + | 位(bit) | 标志名称 | 值 | 值描述 | + | :-------: | :------: | :--: | ------------------------------------------------------------ | + | b5 | 选择 | 0 | 根据寻址标志设置,请求将由任何 ⅥCC 执行 | + | b6 | 寻址 | 1 | 请求有寻址。包括 UID 域。仅由那些自身 UI 与请求中规定的 UID 匹配的 VICC 才能执行 | + | b7 | 选择权 | 0 | 含义由命令描述定义 | + | b8 | RFU | 0 | 固定为 `0` | + +- 对于 `Cmd` = `20` + + 依照[表 2-5](#t2_5),表示这是一条读单个块命令,即为 `Read Single Block` 命令。 + +- 对于 `UID` = `8AB52D23000104E0` + + 它是 `UID` = `E0040100232DB58A` 的小端字节序。 + +- 对于 `Block` = `03` + + 这是我指定的块序号。 + +如果在 `Request Flags` 区域中**勾选** `Select` 、**不勾选** `Addressed` 且不必填写 `UID` ,则 `Flag` 会变成 `10`,表示根据之前被 `Select` 命令选择的卡进行操作; + +如果在 `Request Flags` 区域中不**勾选** `Select` 、**不勾选** `Addressed` 且不必填写 `UID` ,则 `Flag` 会变成 `00`,表示所有卡都要回复指定块的数据。 + + + +# 5. Write Single Block 命令 + +向指定卡中的指定块中写入数据。 + +## 5.1. 实验过程 + +对刚刚读取过的 ISO I5693 的卡片: + +1. 选择 `Command` 区域中的 `Write Single Block` ; +2. 勾选 `Request Flags` 区域中的 `Addressed` ; +3. 在 `UID` 复选框中选择 `E0040100232DB58A` ; +4. 在 `(first) Block` 文本框中填写查询的块号 `03` ; +5. 在 `Data` 文本框中填写要写入的数据 `21281280` ; +6. 点击 `Execute Command` 按钮。 + +写单块 + +`Cmd` 区域自动填充命令,日志框中打印 PC 向 Reader 发送了命令 `20218AB52D23000104E00380122821` ,PC 收到 Reader 返回的数据 `0000000000` 。 + +## 5.2. 命令帧数据分析 + +日志框中发送的数据为 `20208AB52D23000104E003` : + +| | SOF | Flag | Cmd | UID | Block | Data | CRC16 | EOF | +| :----: | :--: | :--: | :--: | :----------------: | :---: | :--------: | :----: | :--: | +| **值** | | `20` | `21` | `8AB52D23000104E0` | `03` | `80122821` | `660F` | | + +- 对于 `Flag` = `20` + + 依照[表 2-2](#t2_2): + + | 位(bit) | 标志名称 | 值 | 值描述 | + | :-------: | :------: | :--: | ---------------------------------- | + | b1 | 副载波 | 0 | VICC 应使用单个副载波频率 | + | b2 | 数据速率 | 0 | 低速率数据 | + | b3 | 目录 | 0 | 第 5 到 8 位按照[表 A ](#t2_3)规定 | + | b4 | 协议扩展 | 0 | 无协议格式扩展 | + + 和[表 2-3](#t2_3): + + | 位(bit) | 标志名称 | 值 | 值描述 | + | :-------: | :------: | :--: | ------------------------------------------------------------ | + | b5 | 选择 | 0 | 根据寻址标志设置,请求将由任何 ⅥCC 执行 | + | b6 | 寻址 | 1 | 请求有寻址。包括 UID 域。仅由那些自身 UI 与请求中规定的 UID 匹配的 VICC 才能执行 | + | b7 | 选择权 | 0 | 含义由命令描述定义 | + | b8 | RFU | 0 | 固定为 `0` | + +- 对于 `Cmd` = `21` + + 依照[表 2-5](#t2_5),表示这是一条写单个块命令,即为 `Write Single Block` 命令。 + +- 对于 `UID` = `8AB52D23000104E0` + + 它是 `UID` = `E0040100232DB58A` 的小端字节序。 + +- 对于 `Block` = `03` + + 这是我指定的块序号。 + +- 对于 `Data` = `80122821` + + 这是我指定写入的数据 `21281280` 的小端字节序。 + +再次使用 `Read Single Block` 命令读取写入数据的块: + +重新读单块 + +卡片回复 `0080122821` ,可见卡片中第 `03` 个块的低 4 字节已经写入指定数据 `21281280` 。 + + + +# 6. Get System Info 命令 + +该命令用于获取卡片信息。 + +## 6.1. 实验过程 + +将单张 ISO I5693 的卡片放到 RFID HF Reader 的射频区域上方,经过 `Inventory` 识别并 `Select` 后: + +1. 选择 `Command` 区域中的 `Get System Info` ; +2. 勾选 `Request Flags` 区域中的 `Select` ; +3. 点击 `Execute Command` 按钮。 + +获取信息 + +`Cmd` 区域自动填充命令,日志框中打印 PC 向 Reader 发送了命令 `102B` ,PC 收到 Reader 返回的数据 `000F8AB52D23000104E006071B0301` 。 + +## 6.2. 命令帧数据分析 + +日志框中发送的数据为 `102B` : + +| | SOF | Flag | Cmd | CRC16 | EOF | +| :----: | :--: | :--: | :--: | :----: | :--: | +| **值** | | `10` | `2B` | `0507` | | + +- 对于 `Flag` = `10` + + 依照[表 2-2](#t2_2): + + | 位(bit) | 标志名称 | 值 | 值描述 | + | :-------: | :------: | :--: | ---------------------------------- | + | b1 | 副载波 | 0 | VICC 应使用单个副载波频率 | + | b2 | 数据速率 | 0 | 低速率数据 | + | b3 | 目录 | 0 | 第 5 到 8 位按照[表 A ](#t2_3)规定 | + | b4 | 协议扩展 | 0 | 无协议格式扩展 | + + 和[表 2-3](#t2_3): + + | 位(bit) | 标志名称 | 值 | 值描述 | + | :-------: | :------: | :--: | ------------------------------------------------------------ | + | b5 | 选择 | 1 | 请求只由处于选择状态的 VICC 执行,寻址标志应设置为 0,UID 域应不包含在请求中 | + | b6 | 寻址 | 0 | 请求没有寻址。不包括 UID 域。可以由任何 VICC 执行 | + | b7 | 选择权 | 0 | 含义由命令描述定义 | + | b8 | RFU | 0 | 固定为 `0` | + +- 对于 `Cmd` = `2B` + + 依照[表 2-5](#t2_5),表示这是一条获取系统信息命令,即为 `Get System Info` 命令。 + +## 4.3. 卡片回复数据分析 + +日志框中卡片返回的数据为 `000F8AB52D23000104E006071B0301` ,查阅 ISO 15693 标准后分析: + +| 内容 | 值 | +| :--------------------------: | :----------------: | +| SOF | | +| 标志(8 bits) | `00` | +| 信息标志(8 bits) | `0F` | +| UID | `8AB52D23000104E0` | +| DSFID(8 bits) | `06` | +| AFI(8 bits) | `07` | +| VICC 内存容量信息(16 bits) | `1B03` | +| IC 参考(8 bits) | `01` | +| EOF | | + +- 对于信息标志: + + | 位(bit) | 标志名称 | 值描述 | 实验值 | + | :-------: | :-----------: | ------------------------------------------------------------ | :----: | + | b1 | DSFID | `0` - 不支持 DSFID。DSFID 域不出现;`1` - 支持 DSFID。DSFID 域出现 | 1 | + | b2 | AFI | `0` - 不支持 AFI。AFI 域不出现;`1`- 支持 AFI。AFI 域出现 | 1 | + | b3 | VICC 内存容量 | `0` - 不支持信息的 VICC 内存容量。内存容量域不出现;`1`- 支持信息的 VICC 内存容量。内存容量域出现 | 1 | + | b4 | IC 参考 | `0` - 不支持信息的 IC 参考。IC 参考域不出现;`1`- 支持信息的 IC 参考。IC 参考域出现 | 1 | + | b5 | RFU | - | 0 | + | b6 | RFU | - | 0 | + | b7 | RFU | - | 0 | + | b8 | RFU | - | 0 | + +- 对于 VICC 内存容量: + + | | RFU(3 bits) | 块容量的字节数(4 bits) | 块数目(8 bits) | + | :--------: | :-----------: | :----------------------: | :--------------: | + | **实验值** | `0b000` | `0b11011` = `27` | `0x03` = `3` | + +注意到 `AFI` = `07` 。 + + + +# 7. Write AFI 命令 + +`AFI` 是应用族标识符,用于标志卡片所用的领域。 + +使用 `Write AFI` 命令可以修改 `AFI`,之后可以使用 `Lock AFI` 命令锁定 `AFI` 使其不可被更改。 + +## 7.1. 实验过程 + +对刚刚读取过系统信息的 ISO I5693 的卡片: + +1. 选择 `Command` 区域中的 `Write AFI` ; +2. 勾选 `Request Flags` 区域中的 `Select` ; +3. 在 `AFI` 文本框中填写要写入的数据 `08` ; +4. 点击 `Execute Command` 按钮。 + +写AFI + +`Cmd` 区域自动填充命令,日志框中打印 PC 向 Reader 发送了命令 `102708` ,PC 收到 Reader 返回的数据 `00`,说明写入成功 。 + +## 7.2. 命令帧数据分析 + +日志框中发送的数据为 `20208AB52D23000104E003` : + +| | SOF | Flag | Cmd | AFI | CRC16 | EOF | +| :----: | :--: | :--: | :--: | :--: | :----: | :--: | +| **值** | | `10` | `27` | `08` | `A12A` | | + +- 对于 `Flag` = `10` + + 依照[表 2-2](#t2_2): + + | 位(bit) | 标志名称 | 值 | 值描述 | + | :-------: | :------: | :--: | ---------------------------------- | + | b1 | 副载波 | 0 | VICC 应使用单个副载波频率 | + | b2 | 数据速率 | 0 | 低速率数据 | + | b3 | 目录 | 0 | 第 5 到 8 位按照[表 A ](#t2_3)规定 | + | b4 | 协议扩展 | 0 | 无协议格式扩展 | + + 和[表 2-3](#t2_3): + + | 位(bit) | 标志名称 | 值 | 值描述 | + | :-------: | :------: | :--: | ------------------------------------------------------------ | + | b5 | 选择 | 1 | 请求只由处于选择状态的 VICC 执行,寻址标志应设置为 0,UID 域应不包含在请求中 | + | b6 | 寻址 | 0 | 请求没有寻址。不包括 UID 域。可以由任何 VICC 执行 | + | b7 | 选择权 | 0 | 含义由命令描述定义 | + | b8 | RFU | 0 | 固定为 `0` | + +- 对于 `Cmd` = `27` + + 依照[表 2-5](#t2_5),表示这是一条写 AFI命令,即为 `Write AFI` 命令。 + +- 对于 `AFI` = `08` + + 这是我指定写入的`AFI` = `08` 。 + +再次使用 `Get System Info` 命令读取卡片系统信息: + +再次读系统信息 + +卡片回复 `000F8AB52D23000104E006081B0301` ,可见卡片中的 `AFI` 已经写入指定 `AFI` = `08` 。 + + + +# 8. 总结 + +对于其他命令,由于实验过程中忘记拍照,不再展示。 + +总的来说,这是一次复现实验, Reader 向卡片发送的每一个字节都严格按照 ISO 15693 规范,因此对于其他命令的构造与实验,做法都一样。 + +我从本次实验中学到了许多东西: + +1. 首先是加深了对规范标准的理解。无规矩不成方圆,正是由于设计出了良好的规范,便捷的 RFID 通信得以推广。 +2. 其次是巩固了 ISO 15693 协议防碰撞算法的知识: + - 在 `Inventory` 阶段,ISO 15693 协议通过依次在范围内叫号获得卡片响应,从而有序识别射频场中的各个卡; + - 在读写阶段,ISO 15693 协议通过 `Flag` 的第 3 个 bit ,指定使用两种方式中的一种来避免碰撞: + 1. 通过 `Select` 命令指定要响应的卡片,然后发送对该卡片的操作命令; + 2. 在命令中添加指定卡片的 `UID` 。 + +这是一次让我受益匪浅的实验。 diff --git a/Labs/Lab3/实验3_21281280_柯劲帆.pdf b/Labs/Lab3/实验3_21281280_柯劲帆.pdf new file mode 100644 index 0000000..f316c0d Binary files /dev/null and b/Labs/Lab3/实验3_21281280_柯劲帆.pdf differ diff --git a/Labs/OURS-RFID-RP实验指导书20121029.pdf b/Labs/OURS-RFID-RP实验指导书20121029.pdf new file mode 100644 index 0000000..a64de78 Binary files /dev/null and b/Labs/OURS-RFID-RP实验指导书20121029.pdf differ diff --git a/Labs/第12章 课内实验.pdf b/Labs/第12章 课内实验.pdf new file mode 100644 index 0000000..376d103 Binary files /dev/null and b/Labs/第12章 课内实验.pdf differ diff --git a/Report/基于RFID技术的计算机视觉数据标注系统在医院自动抓药机中的应用.md b/Report/基于RFID技术的计算机视觉数据标注系统在医院自动抓药机中的应用.md new file mode 100644 index 0000000..df58639 --- /dev/null +++ b/Report/基于RFID技术的计算机视觉数据标注系统在医院自动抓药机中的应用.md @@ -0,0 +1,56 @@ +## 基于RFID技术的计算机视觉数据标注系统在医院自动抓药机中的应用 + +### 概要 +本文介绍了一种基于RFID技术的计算机视觉数据标注系统在医院自动抓药机中的应用。该系统利用RFID技术和计算机视觉技术相结合,实现药品包装过程中药丸数量的精确控制,从而提高医院药品管理的效率和准确性。 + +### 概述 +随着医疗信息化的快速发展,医院对药品管理的要求也越来越高。传统的人工抓药方式存在效率低、误差率高等问题,而自动抓药机可以显著提高药品包装的效率和准确性。然而,如何在自动抓药机中精确控制药丸的数量是一个亟待解决的问题。本文提出了一种利用RFID技术和计算机视觉技术相结合的方法,通过RFID技术进行数据标注,为计算机视觉模型提供高质量的训练数据,从而实现药丸数量的精确控制。 + +### 系统介绍 + +#### 1. 使用的RFID频点及理由 +本系统使用UHF频段(860MHz~960MHz)的RFID标签。选择该频段的理由包括以下几点: +- UHF频段的读取距离较远,适合在大型自动抓药机中应用。 +- 该频段的RFID标签具有较高的读取速度和多标签识别能力,能够满足系统实时性和高效性的要求。 +- UHF标签天线的尺寸可以足够小,适合嵌入到药丸内部。 + +#### 2. 系统组成 + +系统主要由以下几部分组成: +- RFID标签:嵌入在样例药丸内部,用于标记药丸的数量。 +- 摄像头:用于拍摄药丸的图像,供计算机视觉模型进行识别。 +- RFID阅读器:放置在摄像头旁边,用于读取RFID标签信息,计算出摄像头前药丸的数量作为图像的标签。 +- 药库:负责随机释放一定数量的药丸。 +- 药盘:用于承接药库释放的药丸,使得摄像头拍摄稳定的药丸图像。 +- 控制计算机:向各个部件发出相应指令,控制数据采集和标注流程。 +- 计算机视觉模型:拍摄数据训练的对象,用于识别摄像头拍摄的图像中的药丸数量。 + +#### 3. 部署方案 + +为了隔绝药库和药盘之间的RFID信号传播,我们采用以下措施: + +- 在药库和药盘之间安装RFID信号屏蔽材料,如金属板,阻挡RFID信号的传播。 +- 调整药库和药盘中RFID阅读器的功率,使其只能读取到近距离内的RFID标签,减少RFID信号的传播范围。 +- 在药盘中使用定向天线,将RFID阅读器的信号集中在药盘区域,避免信号向不需要的区域传播。 + +具体部署如下: + +1. 药库:安装一个RFID阅读器,控制其功率,确保每次吐药前,药库中的样例药丸数量正确。 +2. 抓药机药盘:安装一个摄像头和一个定向天线的RFID阅读器,摄像头用于拍摄药丸图像,RFID阅读器用于读取样例药丸的RFID标签信息。 + +#### 4. 工作流程 + +1. **药库释放药丸**:首先药库内部的RFID阅读器清点药丸中的RFID芯片总量。若总量正确,随机释放一定数量的样例药丸。若总量不正确,发出警报,中止采集流程; +2. **药盘承接药丸**:药盘承接药库释放的药丸,通过振动等方式使药丸铺开,随后静止等待采集数据; +3. **采集数据**:摄像头拍摄药盘图像,RFID阅读器读取药丸内部RFID标签信息,统计药丸数量。控制计算机获取摄像头和RFID阅读器设备信息,组成(图像,数量)数据对,写入数据集保存; +4. **模型训练与部署**:使用数据集训练视觉模型,最终用于生产环境。 + +#### 5. 系统安全性设计 + +为了确保系统的安全性和数据的准确性,系统设计了以下安全措施: +- 在药库中安装RFID阅读器,每次吐药前,先检查药库中的样例药丸数量,确保数量正确、RFID芯片没有损坏。 +- 隔绝药库和药盘之间的RFID信号传播,防止药盘的RFID阅读器误读药库中的药丸芯片。 + +### 总结展望 + +通过本文介绍的基于RFID技术的计算机视觉数据标注系统,医院可以实现药丸包装过程中的精确控制,提高药品管理的效率和准确性。未来,可以进一步优化系统的算法和硬件设计,提升系统的性能和可靠性,同时探索RFID技术在其他医疗场景中的应用潜力。 \ No newline at end of file