微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 一种基于NRF905无线温度采集系统设计

一种基于NRF905无线温度采集系统设计

时间:03-27 来源:互联网 点击:

0 引言

在工业生产过程中,温度是最为常见、最为重要的物理工艺参数之一。随着社会的发展,工业中对温度测量的要求也越来越高,测量数据的范围也越来越大。温度采集系统设计时,传感器模块的设计将直接影响着数据的测量效果,随着测量要求的提高,传感器模块电路的复杂程度也会越来越高,无疑带来布线的困难和效率的下降,同时存在着易短路,易老化等隐患,给系统的综合调试和维护带来难度。与传统的有线通信技术相比,无线传输技术具有测量精度高、受环境影响小、成本低等优点。本文将传感器技术与无线通信技术相结合,实现无线温度采集功能。

1 系统方案设计的原理

无线温度采集系统是一种基于射频技术的无线温度检测装置。系统中由温度传感器将温度采集后输出的模拟信号逐步送往信号放大电路、低通滤波器以及A/D转换器(即信号调理电路),然后在单片机的控制下将A/D转换器输出的数字信号传送到无线收发芯片中,并通过芯片的调制处理后由芯片内部的天线发送到上位机,在上位机模块中,发送来的数据由单片机控制的无线收发芯片接收并解调,最后通过接口芯片发送到PC机中进行显示和处理。

系统包括无线采集、主机控制和PC 机三个通信节点:无线采集节点实现温度采集和温度数据的收发;主机控制节点实现简单通信控制和无线数据收发,并可通过串口传到上位机;PC 机节点为数据采集提供计算机通信方式,为实现更强大功能提供上位机软件设计平台,系统设计方案如图1所示。

2 硬件设计

根据设定好的系统方案,进行硬件电路的具体设计,由于主机和从机各模块的硬件设计原理基本相同,而温度采集和NRF905 无线通信块都在从机部分,这里重点分析从机的硬件设计,系统结构图如图2所示。

2.1 温度采集

温度采集模块的主要功能是对模拟量进行数字化,这里选用逐次逼近型模数转换器ADC0832芯片,该芯片具有8位分辨率,转换范围为0~5 V.由于数据的输入和输出不在同一时间进行,所以DI和D0可以接到同一个引脚上。ADC0832 使用SPI 串行接口与单片机进行通信,电源电压为+5 V,去耦电容C 为0.1 μF,硬件电路如图3所示。

2.2 NRF905无线通信

无线通信模块采用单片433/868/915 MHz无线收发器NRF905芯片。该芯片与单片机的接口为SPI口,调制采用GFSK高斯频移键控方式,具有很强的抗干扰能力。波段采用ISM 免费波段,供电电压为1.9~3.6 V,选用3.3 V供电,器件选用AMS1117-3.3,发射功率最大为10 dBm,硬件电路如图4所示。

3 软件设计

硬件部分完成后,下面进行软件的设计,温度采集系统程序设计主要包括主程序、温度采集和NRF905无线通信三部分。

3.1 主程序

程序开始后,先进行初始化,然后等待控制命令,即按下所需的温度采集节点号,然后调用人工控制程序,进行相应的通道切换,同时接收采集数据并调用LCD显示程序将其显示,并将数据及时发送给中央单元,设计流程如图5所示。

3.2 温度采集

温度采集可分为系统初始化、等待NRF905接收和接收主机命令三部分。结合硬件设计,接收主机命令时,应采用通道0(CH0)来进行温度采集,具体程序如下:

3.3 NRF905无线通信

NRF905无线通信分为发送和接收两部分,以数据发送为例进行分析。NRF905数据发送可以分为确定数据和地址、确定发送模式、数据发送和发送完成四步。

当有数据提出发送请求时,从机地址和待发送的数据按时序经SPI接口传送给NRF905,SPI接口的速率由器件引脚配置信息决定。同时,TRX_CE和TX_EN被置成高电平,激发NRF905的ShockBurstTM发送模式[6],数据由NRF905 不断发送,直至TRX_CE 被置低。TRX_CE 被置低后,数据发送过程完成,系统自动进入待机模式等待下次数据请求,具体设计流程如图6所示。

4 数据实测

数据测量时为了验证设计效果,选择了五种不同温度环境,首先在实验室搭建了温度采集硬件电路,接着用KeiluVision4软件编程和编译得到[.hex]文件,最后用STC_ISP_V483软件对芯片进行烧写。把实验电路和苏州领航测控技术有限公司生产的SHWD-T486型无线多点温度计测量的温度值作对比,由表1数据可知有两组值和SHWD-T486型测量数据一样,剩余三组数据的相对测量精度也都在0.18%以下,测量精度较高,且受环境影响较小。

5 结语

本文提出了一种基于NRF905 的无线温度采集系统的设计方案。先对方案中的温度采集系统的总体设计进行了介绍,同时对系统的硬件设计进行了分析,并重点对温度采集系统的软件进行设计,编程采用C语言,主要分为主程序、温度采集和NRF905 无线通信三部分。设计的温度采集系统

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top