APP下载

基于nRF905无线模块的温度采集系统设计

2015-02-21戴丽佼刘焘

现代电子技术 2015年3期
关键词:单片机无线电路

戴丽佼,刘焘

(南京航空航天大学金城学院实验中心,江苏南京211156)

基于nRF905无线模块的温度采集系统设计

戴丽佼,刘焘

(南京航空航天大学金城学院实验中心,江苏南京211156)

针对传统测温系统的布线复杂、维修困难等问题,设计了一种无线温度采集系统。该系统由主节点和从节点两部分组成,选择STC89C52单片机为控制器。各从节点利用数字温度计DS18B20实时采集温度数据,采用nRF905实现数据的无线收发。主节点系统循环接收各节点温度数据并将结果实时显示在液晶屏上。实际测试结果表明,在空旷地带通信距离约为200 m,测温误差为0.5℃。

nRF905;DS18B20;无线模块;温度采集系统

0 引言

温度是环境监测中的一项重要数据参数。在工农业生产过程中,人们常常需要实时监测温度变化情况。传统的测量手段大都采用有线定点采集、人工上报的方式[1],这种方式不仅消耗人力,在环境恶劣的情况下,人身安全得不到保障,而且对系统的维护、维修带来困难。随着通信技术的飞速发展,利用无线技术进行温度采集测量,具有灵活、快捷等优势,不必依赖人工即可完成。本设计采用nRF905射频发射器芯片实现温度数据的无线传输[2⁃3]。该系统可广泛应用于农业温室大棚、粮库、智能家居及煤矿等各种测温场合。

1 系统设计方案

无线温度采集系统是一种基于射频技术的无线温度检测装置[4],分为主节点和从节点两大部分。系统设计两个温度采集从节点,将温度传感器采集到的数据经GFSK调制后以无线方式传送给主节点[5]。主节点通过循环方式接收各点的温度数据,并在液晶屏上实时显示温度数值。系统结构框图如图1所示。各节点均采用STC89C52单片机[6]作为控制器。利用数字温度计DS18B20实时采集各点温度。

图1 系统结构框图

2 系统硬件设计

系统的硬件电路主要包括:电源模块电路;温度采集电路;无线收发电路;温度显示电路。电源模块电路实现直流电压转换功能。系统采用9 V直流电池供电,利用芯片AMS1117⁃5.0 V和AMS1117⁃3.3 V将电源分别转

换成单片机和nRF905所需的直流电源,即5 V和3.3 V。在温度显示电路中选择字符型LCD1602显示两个节点的温度数值。液晶模块采用直接访问方式连接电路,即只要利用单片机的I/O与液晶的对应接口相连即可实现硬件连接。

2.1 温度采集电路

DSl8B20是美国Dallas公司生产的三脚集成单总线数字温度计DS18B20,可直接输出二进制温度数值,指示环境的温度,无需模数转换。采用单总线方式与单片机通信,即仅需一根口线即可实现数据传输,该口线既传输时钟,又传输数据。外围电路简单,温度采集电路如图2所示。DS18B20的测量范围为-55~125℃,可编程设置精度为9~12位。

图2 温度采集电路

2.2 nRF905模块电路

系统采用的无线收发模块是在nRF905无线射频芯片基础上进行优化设计。nRF905采用Nordic公司的VLSI ShockBurst技术。ShockBurst技术使nRF905能够提供高速的数据传输,而不需要昂贵的高速MCU进行数据处理/时钟覆盖[7]。nRF905可自动完成处理字头和CRT(循环冗余码校验)的工作[8⁃9]。该模块工作于433 MHz免许可证使用频段的无线射频收发模块,通过SPI接口与单片机进行数据交换。根据配置内部寄存器设置收发器的频率、功率、地址和数据的字节等信息。

nRF905共有四种工作模式,包括两种活动RX/TX模式和两种节电模式。nRF905工作模式由TRX_CE,TX_EN,PWR_UP的设置来设定。nRF905的工作模式如表1所示。

表1 nRF905工作模式

3 系统软件设计

3.1 系统程序设计思路

程序设计由接收端和发送端两部分组成。接收端程序即为主节点部分程序,首先配置nRF905并设置为接收模式,然后通过检波接收到对应的的数据后储存在nRF905内部寄存器,单片机通过SPI方式读取nRF905寄存器中的数据,最后通过LCD1602显示相应的温度数据。根据定义节点的地址不同以区分两个从节点,选择循环方式读取两个节点的温度信息。接收端程序流程如图3所示。

图3 接收端程序流程图

从节点程序主要由DS18B20初始化、nRF905配置初始化、数据采集、处理及发送等子程序组成。发送端程序流程如图4所示。利用定时器中断设定采集温度的周期,程序中设定1 s采集一次温度数据。温度数据处理子程序包括DS18B20初始化,单片机读取温度数值并转换数据等。

图4 发送端程序流程图

3.2 nRF905模块收发流程

nRF905收发模块可将与射频协议有关的高速信号处理全部放到nRF905芯片内部进行[10]。nRF905发送流程过程为:首先单片机通过SPI接口按时序把接收机的地址和要发送的数据传送给nRF905,SPI接口的速率在通信协议和器件配置时确定;其次单片机置高TRX_CE和TX_EN,激发nRF905的ShockBurstTM发送

模式;然后nRF905不断重发,直到TRX_CE被置低;最后当TRX_CE被置低,nRF905发送过程完成,自动进入空闲模式。一旦发送数据的过程开始,无论TRX_EN和TX_EN引脚是高或低,发送过程都会被处理完。只有在前一个数据包被发送完毕,nRF905才能接收下一个发送数据包。发送程序如下:

nRF905接收流程过程为:当TRX_CE为高、TX_EN为低时,nRF905进入ShockBurstTM接收模式,等待接收数据;当nRF905检测到同一频段的载波时,载波检测引脚被置高;当接收到一个相匹配的地址,AM引脚被置高;当一个正确的数据包接收完毕,nRF905自动移去字头、地址和CRC校验位,然后把DR引脚置高;单片机把TRX_CE置低,nRF905进入空闲模式;单片机通过SPI接口以一定的速率读取数据;当所有的数据接收完毕,nRF905把DR引脚和AM引脚置低。接收程序如下:

4 结语

系统对nRF905的配置寄存器设置频段为433.1 MHz,发射功率为10 dB,发射电流可达30 mA。测量系统采用外接长约10 cm天线,经实测,在操场空旷地带有效测温距离约为200 m,在室内穿过数个教室墙壁仍能良好的通信。测量温度精度达0.5℃,测温周期为1 s,周期可由单片机内部定时器调整。本设计具有外围元件较少、成本低、使用方便等优点。系统扩展灵活,可在此基础上扩展新的功能,以便适应于不同的场合要求。

[1]潘小龙,张建滨,孟俊杰,等.基于nRF905的无线温度采集系统设计与实现[J].电子设计工程,2011,19(12):75⁃78.

[2]朱士群,牛伟,耿淑琴,等.基于nRF905无线通信系统的设计[J].现代电子技术,2013,36(5):33⁃36.

[3]邵帅.基于nRF905的温度数据采集及无线传输系统的设计[D].武汉:武汉科技大学,2010.

[4]顾涵,徐健,劳裔豪.基于nRF905的无线温度采集系统设计[J].现代电子技术,2013,36(23):121⁃123.

[5]王书杰,李兴宁.基于nRF905和DS18B20的多路无线温度采集系统设计[J].通信电源技术,2011,28(6):55⁃57.

[6]张毅刚.单片机原理及接口技术(C51编程)[M].北京:人民邮电出版社,2011.

[7]张孝云,江小华.基于nRF905的无线加速度测量系统设计[J].现代电子技术,2011,34(17):153⁃155.

[8]袁江,曹金伟,邱自学,等.基于WSN的粮库温湿度无线监测系统[J].测控技术,2012,31(4):77⁃81.

[9]夏德印,邵友,陈国定.基于无线传感网络的温度监控系统[J].工业仪表与自动化装置,2011(3):21⁃24.

[10]马进,赵永,刘卫亮,等.基于RF的多点温度采集系统的设计与应用[J].通信电源技术,2013,30(4):48⁃50.

Design of temperature acquisition system based on wireless module nRF905

DAI Li⁃jiao,LIU Tao
(Experiment Center of Jincheng College,Nanjing Aeronautics and Astronautics University,Nanjing 211156,China)

A wireless temperature acquisition system was designed to deal with complex wiring and difficult maintenance of the traditional temperature measurement system.The system is composed of major node and slave nodes.The single chip micro⁃processor STC89C52 is selected as controller of the system.The real⁃time acquisition of temperature data is conducted by slave nodes through digital thermometer DS18B20.The real⁃time data is transmitted through the wireless module nRF905.The major node receives temperature data cyclically from slave nodes.The temperature data is displayed on the liquid crystal display.The practical testing result indicates that the system′s communication distance is about 200 m in the open place and its precision is 0.5℃.

nRF905;DS18B20;wireless module;temperature acquisition system

TN925⁃34;TP368

A

1004⁃373X(2015)03⁃0020⁃03

戴丽佼(1983—),女,讲师,硕士研究生。主要从事电路、单片机教学及研究工作。

2014⁃07⁃21

猜你喜欢

单片机无线电路
电路的保护
《无线互联科技》征稿词(2021)
基于单片机的SPWM控制逆变器的设计与实现
解读电路
基于单片机的层次渐变暖灯的研究
基于单片机的便捷式LCF测量仪
无线追踪3
巧用立创EDA软件和Altium Designer软件设计电路
基于ARM的无线WiFi插排的设计
基于MATLAB模拟混沌电路