微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > nRF905实现无线温度采集系统

nRF905实现无线温度采集系统

时间:03-19 来源:电子科技 点击:

数据打包;发送数据包;当数据发送完成,数据准备好,引脚被置高。当TRX_CE被置时,nRF905发送过程完成,自动进入空闲模式。Sho ckBurstTM工作模式保证一旦发送数据的过程开始,无论TRX_EN和TX_EN引脚是高或低,发送过程都会被处理完,并且只有在前一个数据包被发送完毕,nRF905才能接受下一个发送数据包。数据包的具体格式见图4,具体温度采集发送程序流程见图5。

  

  2)接收流程 当微控制器有数据要接收时,STCllL60XE先把TRX_CE置为高电平、TX_EN置为低电平,此时nRF905进入ShockBurstTM接收模式;650 μs后,nRF905不断监测,等待接收数据;当nRF905检测到同一频段的载波时,载波检测引脚被置高;当接收到一个相匹配的地址,地址匹配引脚被置高。当一个正确的数据包接收完毕,nRF905自动移去字头、地址和CRC校验位,然后把数据备好引脚置高。微控制器把TRX _CE置低,nRF905进入空闲模式。微控制器通过SPI口以一定的速率把数据移到微控制器内。当所有的数据接收完毕,nRF905把数据准备好引脚和地址匹配引脚置低。nRF905可进入ShockBurstTM接收模式、发送模式或关机模式。具体接收程序流程见图6。

  

   3.2 上位机软件设计

  对于多机通信利用PC机(IPC)实现测控主要有两种方式:一是通过串行接口(RS_232或RS_485),二是通过各种数据采集板卡。微软公司推出可视化,面向对象的结构化程序设计语言Visual Basic是很好的选择。因此采用Visual Basic开发Windows下的测控软件使用简单、容易上手、开发效率高,尤其是软件界面设计非常便捷,编程工作量较小、开发周期短,特别适合非计算机专业工程技术人员掌握使用。

  本课题针对串口开发,Visual Basic提供了串口通信控件MScomm,在软件设计中首先对MScomm控件进行初始化设置:MSComm1.CommPort =1设置串口通道为1;MSComm1.Settings="9600,N,8,1"设置依次为波特率、同位检查、数据位和停止位:MSComm1.PortOpen=True设置串口打开;MSComm1.RThreshold=1设置接收缓冲区每接收一个字符就触发一次接收事件,MSComm1.InputMode=comInputModeBinary设置串口接收数据格式为二进制,MSComm1.SThreshold=0’设置串口为禁止发送事件,MSComm1.InputLen=0读取接收缓冲区的所有字符等等。上位机运行首先进行串口初始化,相应进行坐标建立,等待串口中断。当数据缓冲区接到数据时触发程序中断,将Comm1.input的数据送至Buffer(i)的数组中,当接收四个字节的数字后,进行判断,起始字符和结束字符是否正确,判断正确后根据不同的地址值将Buffer(2)的数组中的温度值相应保存然后进行数据转换、处理,再显示在图形区,退出中断。上位机具体流程图如图7所示。

  

  4 系统测试结果

  传统多点温度测控系统,多采用有线传输方式将温度采集端与监控端相连,当温度采集点较多时,必然导致系统布线复杂、成本增加、故障率高且维护困难。该研究的无线射频模块采用低发射功率、高接收灵敏度的设计方案,通过优化电路,屏蔽无线干扰,通讯距离可达500~800 m。应用该设计实现了学校档案室外无线多点温度采集与监控。采集监控设备分布如图8所示,系统于3月29号19时18分至3月30号19时18分连续运行1天并每分钟采集一次。温度图表记入如图9所示,红色图线为室外温度,黑色为档案室温度。据当天南京气象公布气温5℃到21℃与采集数据和绘制曲线相比误差甚微。室外由于采集设备要求太阳直射所以采集温度偏高,白天温度波动由当天东南风造成和采集时间周期造成,11点和12点之间由于云层遮挡造成采集温度下滑,与同类产品相比,该系统体积小、采集相同数据信息用时少、抗干扰能力强、性价比高。

  

  5 结束语

  该系统实现了监控系统与温度采集系统之间数据的无线传输;完成采集现场与监控装置真正意义上的分离,并且系统的终端可以构成无线传感网络,实现指定区域的传感器数据的采集和接收,也可广泛应用于工业控制、数据采集等多个领域,且系统硬件电路简单、响应速度快、可靠性高。在多点温度采集及复杂的工作现场使用该系统可取得较好的工作效果。

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

网站地图

Top