APP下载

基于RFID标签的分布式温度测量系统设计

2017-11-01

计算机测量与控制 2017年8期
关键词:读写器测温分布式

张 光

(陕西工业职业技术学院 物流管理学院, 陕西 咸阳 712000)

基于RFID标签的分布式温度测量系统设计

张 光

(陕西工业职业技术学院 物流管理学院, 陕西 咸阳 712000)

射频识别(RFID)技术是一种低成本且高效的非接触式自动识别技术,其具有的识别速度快,识别距离远等优点,使其具有非常广泛的应用前景;设计一种基于RFID的分布式多点温度测量系统,系统由RFID电子标签、读写器、主接收机和PC组成,实现各节点温度的实时采集功能;为了提高各节点的温度测量精度,提出了一种测温补偿算法,采用最小二乘拟合的方案,克服由于器件的不准确而引入的测量误差;结果表明,该系统可以有效完成多点温度测量采集的功能,同时具有非常高的精确性。

RFID;分布式;温度测量

0 引言

作为获取信息的一个基本手段,数据自动化采集技术是信息科学的一个重要分支。利用计算机,通信技术,测控技术相结合以获取到现场的各项物理参量,以提供给需求者作参考分析[1]。在温室,粮仓以及实验室等重要场所,温度是一项非常关键的物理参量,其测量获取显得尤为重要。而对于温度的测量,存在着测量范围广,测量距离远,传统布线方式复杂的难题[2]。为了解决广阔空间内各区域温度的精确测量,就需要解决多点分布式测量的问题。因此,在本文中,我们主要研究基于RFID技术的分布式多点温度测量系统。

本文的结构安排如下:在文章的第一章节介绍本文的研究意义目的以及研究成果,文章的第二章节我们介绍分布式温度测量系统的设计方案,在第三章节给出系统的硬件设计,第四章节讨论系统的软件设计以及优化方案,最后在第五章节我们给出研究结论与探讨。

1 分布式温度测量系统设计方案

整个系统设计由4个部分组成:RFID电子标签,读写器,主接收机以及PC机。4个模块协同工作以实现广阔区间内各点温度的自动化采集采集记录,温度数据的收集处理,处理后数据的无线传输以及数据显示功能。

RFID标签由温度传感器嵌入有源电子标签组成[3-6]。通过温度传感器测量收集目标场所的温度后,将测得数值存储到有源电子标签中。随后MCU1通过控制读写器实现对特定目标地的RFID进行读写操作,并且将读取的数据暂存到单片机的内存中。紧接着将数据通过射频发射器芯片进行无线传输,在主接收机收到发送数据后,MCU2控制通过串口RS-232传输到PC机中显示并存储。

为了实现大范围环境的温度测量,系统设计方案采用分布式结构,其网络拓扑结构如图2所示。

图2 分布式网络拓扑

分布式拓扑结构分散控制,每个节点之间互不影响,都收中心机的控制。可以实现极广范围内的布局,且控制方式简单,效率高,提供了性价比非常高的网络布局方案。

2 系统硬件设计

根据系统设计方案,本系统的硬件部分主要包括温度测量与数据无线传输两个子模块。分布式测量系统结构如图3所示。

图3 硬件系统结构框图

系统控制芯片使用Atmega48单片机,该单片机采用先进的RISC结构,作为一款8位AVR处理器具有高性能低功耗的优势[7-11]。该单片机的绝大部分指令在单个时钟周期内执行结束,高达1MIPS/MHZ的数据吞吐量可以非常简便地实现点对多点模式的高速数据读取,同时它还具有可编程的USART接口。系统使用DHT90作为温度传感器,其具有的超快响应速度,超强抗干扰能力以及极高的性价比可以有效提高系统的性能且降低系统的成本。

整个系统的硬件实现过程可以总结为:

1)将RFID测温标签贴在目标场所环境内;

2)Atmega48(MCU1)控制RFID读写器对目标测温标签进行读写操作;

3)射频芯片将存储的温度数据发送给主接收器;

4)Atmega48(MCU2)单片机接收到数据后通过串口同PC主机进行出具传输;

5)PC机显示并存储数据。

3 系统软件设计

系统中使用的单片机其程序由C语言编写,开发环境是Keil uVision3,完成基于RFID技术的温度测量,射频芯片间的无线数据传输以及单片机和PC之间的通信。

3.1 测温补偿算法

测温传感器测得的温度值只是对当前实际环境温度的一个数字反映,其与实际环境的温度值之间不能保证严格一致。如果是在大范围的温度区间内的确是很难保证严格的线性关系,这个缺陷导致温度补偿起来比较难处理,但是另一个方面在小范围区间内,两者之间存在着近似的线性关系。因此,我们可以采用将整个温度区间分成各个小的区间进行分段线性拟合,即将测温传感器的测温范围分成几个阶段,在每个阶段内测出此时真实环境下的环境温度,再通过线性拟合补偿计算出此时测温传感器应该实际显示的温度。

假设拟合多项式为式(1):

y=a0+a1x+...+akxk

(1)

拟合过程中各点到这条曲线的距离之和,即偏方差之和如式(2):

(2)

为了求得最好的拟合值,对等式(2)右边求ai导数,由此我们得到:

将等式的左右两边进一步化简并且表示成矩阵的形式,可以得到下面的矩阵表示:

进一步将次范德蒙德矩阵化简之后得到:

也就是说X*A=Y,那么得到系数矩阵A=(X′*X)-X′*Y,由此可以得到拟合的实际曲线。

如图中,在30~38的温度区间内利用所选取的3个测量温度与实际测得的环境温度值作为拟合的初始信息,通过这些点便可以拟合出如图所示的直线,并且得到直线的表达式。

T真实=kT测+b

(3)

根据实际的精度需求,我们将温度区间分成不同的精度等级,这样采用不同的区间精度拟合出的线性关系也会更加逼近真实值,最终补偿后的温度也更加精确。

3.2 温度测量设计

RFID标签携带着温度传感器DHT90测得的温度数据以及自身ID等信息,在定时的时间内不间断地向读写器发送信息传输请求,一直到读写器确认其请求并返回应答指令后,RFID标签接收应答指令并将自身存储的温度数据等传输给读写器,随后判别读写器是否正确接收了数据(即反馈信息和校验码相符)。读写器与RFID标签之间的通信过程如图4所示。

图4 读写器与RFID标签间通信流程

在图4所示的通信过程中,重点需要解决两个应用中的问题:读写器与RFID标签的通信,不同标签之间信号的冲突。如果在同一时间段内,多个标签同时处于读写器所读写的目标范围内,标签之间传输的信号则会冲突与干扰,这就会导致读写器不能正确地读写信息。为了解决过多标签同时相应造成的冲突,将RFID标签进行分组,有效限制每次响应读写器的标签数量,使得每次响应的标签数与时分多路算法的帧长时间相匹配,获得较高的标签识别率。该系统采用时分多路的方法解决标签信号冲突,该方法将每一路信号在时域上分隔开来,利用不同的时域间隙传输各路不同信号。

3.3 无线数据传输设计

无线数据传输使用的是Atmega48的nRF905芯片,在其正常工作之前单片机需要根据具体需求对它进行设置[12-18],配置过程为:进行数据发送操作时,Atmega48单片机首先将nRF905芯片配置为待机模式(PWR_UP引脚置为高位,TRX_CE引脚置为低位),随后通过SPI总线将发送地址与待发送的数据都写入到相应的寄存器中,紧接着将nRF905配置为发送模式(PWR_UP,TRX_CE以及TX_EN全部置为高位),配置完成后,数据将会通过天线进行自动发送。为了系统能够更可靠地传输数据,把射频配置寄存器中的自动重发位设为有效,数据包就会一直不断地自动外发,直到TRX_CE被单片机置为低位,退出发送模式才结束。如果进行数据接收,单片机将nRF905芯片的TRX_CE引脚置为高电平,而TX_EN置为低电平,随后开始进行数据接受操作。

在所设计的系统中,nRF905芯片外接一个频率为11.095 MHz的晶体,且XOF配置为011.这样单片机就会在30 s内一直判断nRF905的DR引脚是否变成高位,如果是处于高位状态,则表明接收到了有效数据,能够退出接收模式了。如果一直没有接收到数据,一旦系统时间结束同样退出接收模式。退出后处于待机模式中,单片机通过SPI总线将nRF905芯片内存储于数据寄存器中的有效数据读取出来。

设计的系统结合nRF905的特点,定义了一个简单的物理层通信协议以满足通信要求。采用时分模式将点与多点通信转变为点对点通信,为了能够识别不同的物理地址需要给每一个RFID标签设定唯一的物理地址。系统中进行传输的数据包格式如图5所示。

图5 通信协议数据包格式

一般情形下,数据字头以及CRC校验码是芯片内部自动添加的,在接收主机检测到字头部分时,确认这是相关数据,然后把数据接收下来,对比所接收信号中的目标地址与本机地址,相同的话将通知MCU来接收数据。在发送时,只需要写入目的地址以及待发数据即可,系统会自动添加字头和CRC校验码。在图5中的数据部分,我们一次传输10字节的数据,在传输过程中,我们规定了我们自己的数据包的格式,其中包含了对主从机的控制、数据传输以及各种状态等。如图5的表格所示,其中规定了3字节字头(不同于系统的字头),主从机器标志字,命令字,数据,以及最后的机器编码(用于识别不同机器的设备号)和该数据的状态情况。在程序中,所有发送或者接收的数据都符合这个数据包的格式。在系统接收到一条信息之后,会对这些数据进行分析,执行相关的指令,或者进行相关的操作。

3.4 串口通信设计

单片机与普通的PC机并不能进行直接的通信,如果其两端需要进行通信,首先需要在通信的两端设置好串口的各项属性,这就包括数据传输采用的波特率、数据的传输格式、奇偶校验规则等。系统中采用异步通信的通信模式,串口的波特率设置为9 600/s,停止位为1位,PC机只有在接收到ACK信号的情况下,发送下一个数据,如果没有接收到则重新发送,其中每一个步骤都需要进行CRC校验和状态寄存器发送指令。

4 实验结果与分析

系统测试实验中,使用5个RFID电子测温标签,一个阅读器,两个单片机,两个射频发射芯片。这五个RFID测温标签中有2个放在室外的背阴处与阳光下(1号在背阴处,2号在阳光下),剩余三个放在室内的不同房间内(3号在开了空调25摄氏度的房间内,4号和5号放在普通房间内)。为了验证该系统设计方案的功能以及精确度,实验验证分为两个部分,一个是测试其可行性,一个是测试其准确性。

通过PC机上的控制软件,控制单片机(MCU1)选取特定的目标RFID标签读取相关数据,然后将这些数据进行相应的补偿运算,运算后得到最红显示结果,显示给查询者。

由图6中的对比我们发现,该设计方案中的多个温度传感器测得温度与实际测得温度误差不大,可以有效地实现温度测量的目的。由于是采用分布式设计,系统中的每一个温度测量节点可以分别测量出自己所在区域的实际温度,达到分布式测量的目的。

随后我们测试验证该系统对于温度变化的反馈,测温节点对于温度的实时测量是系统效率的重要指标。选取测温节点1和测温节点2观测他们在高低温连续跳变环境内对于温度的感知能力,一分钟内查询等间隔查询每个节点10次。如图7为两个节点的温度变化曲线。

由图7可以看出,两个测温节点的测量温度随着周围环境温度的不断变化其测得温度也同实际相符不停动态显示,这表

图6 系统测得温度对比

图7 温度变化曲线

明系统可以实时感知环境温度的变化并进行准确测量。

该方案较之传统方案采用了分布式的布局,实现了大范围多点数据的测量与采集,提高了系统的应用范围与效率。但是该方案依然存在着诸多不足有待改进,其对于温度变化时的测量精度有待改进,同时系统的测量算法有待进一步改进以提高整个系统的工作效率。

5 结论

本文介绍了分布式温度测量的目的与意义,设计了基于RFID的分布式多点温度测量系统。RFID标签应用方便,射频和单片机成本低,将温度传感器集成在RFID标签中使用中极大地提升了便捷性。实际使用中只需要在需要测量温度的目标场所贴上一个测温标签就可以实现目标区域的温度测量。方案设计中为了解决温度测量范围广,测量点多的问题我们采用分布式的设计方案,进一步为了克服测量过程中存在的误差问题,设计采用最小二乘法首先对实际温度曲线进行拟合的方式,该方法可以有效进行温度补偿,提高了温度测量的精确度。射频设备之间通信方便,使用灵活,迎合了现代管理设备的需要,提供了一种高效的温度检测方法。

[1] 韦佳宏. 基于RFID的分布式温度测试系统研究[D]. 大连交通大学, 2008.

[2] 彭安娜, 袁 愿, 冯金垣. 基于RFID和LABVIEW的分布式温湿度监控系统的设计[J]. 电子设计工程, 2016, 24(6):145-148.

[3] 韩 博, 周越文, 郭学玲,等. 基于光纤温度传感器的分布式温度测量系统设计[J]. 测控技术, 2016, 35(9):20-24.

[4] 朱华贵. 分布式多路远程温度检测系统的设计与实现[J]. 乐山师范学院学报, 2004, 19(12):25-27.

[5] 刘永亮, 赵 磊, 甄 鹏,等. 分布式多点温度测量系统的设计与实现[J]. 微计算机信息, 2008, 24(25):145-147.

[6] 曹海平. 基于单片机和DS18B20的分布式多点温度检测系统的设计[J]. 自动化技术与应用, 2008, 27(11):90-92.

[7] 黄利君, 王选民. 分布式多点远程温度检测系统设计[J]. 仪表技术, 2009(7):10-12.

[8] 孟庆斌, 潘 勇, MengQingbin,等. 基于CC2430的分布式无线温度测量系统设计[J]. 电子测量技术, 2009, 32(5):128-130.

[9] 彭安娜, 袁 愿, 冯金垣. 基于RFID和LABVIEW的分布式温湿度监控系统的设计[J]. 电子设计工程, 2016, 24(6):145-148.

[10] 张志伟. 由单片机和DS1825组成的分布式多点温度检测系统[J]. 太原师范学院学报(自然科学版), 2005, 4(4):59-61.

[11] 王 欢. 基于STC89C52RC和DS18B20的远距离多点分布式温度检测系统设计[J]. 数字通信世界, 2015(11).

[12] 张自军. 基于计算机的分布式温度测量系统[J]. 计量与测试技术, 2005, 32(7):44-45.

[13] 常志勇, 李济顺, 韩红彪. 基于单总线协议的多点测温技术及应用[J]. 河南科技大学学报自然科学版, 2009, 30(2):35-37.

[14] 司 禹, 冯 鹏, 于双铭,等. 基于RFID温度标签的嵌入式温度监测系统[J]. 电子技术应用, 2016, 42(7):57-59.

[15] 谢小芳, 黄 俊, 谭成宇. 基于RFID的电力温度监控系统的软件分析与设计[J]. 电子技术应用, 2013, 39(1):23-26.

[16] 江昌旭, 王 磊, 李桂香,等. 基于RFID的无线多目标温湿度监控系统[J]. 仪表技术与传感器, 2013(5):45-47.

[17] 张立霞, 张家安, 王高山,等. 基于RFID的印制板制造密闭环境温度监控系统设计[J]. 现代电子技术, 2015, 440(9):106-109.

[18] 袁 江, 曹金伟, 邱自学. 基于RFID读写器网络的粮库温湿度分布式监测[J]. 农业工程学报, 2011, 27(10):131-136.

Design and Implementation of Distributed Multipoint Temperature Measurement System Based on RFID

Zhang Guang

(Shaanxi Polytechnic Institute,Department of Logistics Management, Xianyang 712000,China)

radio frequency identification (RFID) technology is a low-cost and efficient non-contact automatic identification technology, which has the advantages of high recognition speed and recognition distance. A distributed multi-point temperature measurement system based on RFID is designed. The system is composed of temperature acquisition module, wireless transceiver module and host computer module. In order to improve the accuracy of temperature measurement of each node, a temperature compensation algorithm is proposed, and the least square fitting method is adopted to overcome the measurement error caused by the inaccuracy of the device. The results show that the system can effectively accomplish the function of multi point temperature measurement and has high accuracy.

RFID;distributed;temperature measurement

2017-04-24;

2017-05-11。

咸阳地区科学基金项目(2016k02-69)。

张 光(1984-),男,陕西人,硕士,讲师,主要从事电子商务、网络安全、数据库等方向的研究。

1671-4598(2017)08-0036-03

10.16526/j.cnki.11-4762/tp.2017.08.010

TP274

A

猜你喜欢

读写器测温分布式
分布式光伏热钱汹涌
分布式光伏:爆发还是徘徊
变压器光纤测温探头的安装固定
基于DS18B20的单片机测温系统
基于DDS的分布式三维协同仿真研究
RFID技术中防碰撞算法的改进
基于视频抓拍读写器的高速公路防倒卡研究
西门子 分布式I/O Simatic ET 200AL
基于ARM的高精度测温系统设计与实现
基于随机时隙的RFID读写器防冲突方法