《报告基于温度采集无线监测系统论文》由会员分享,可在线阅读,更多相关《报告基于温度采集无线监测系统论文(34页珍藏版)》请在金锄头文库上搜索。
1、基于NRF905无线收发芯片温度监测无线通信系统的设计设计与总结报告目录摘要31方案论证与比较31.1温度采集方案设计41.2显示部分方案设计41.3无线接收发射方案设计51.4上位计算机通信方案设计52硬件电路设计52.1温度采集模块工作原理与计算52.1.1工作原理52.1.2温度计算62.2显示模块电路62.3无线发射接收模块72.3.1 SPI接口设计82.3.2 工作模式92.3.3 工作电源92.3.4 NRF905无线收发工作参数102.4上位计算机通信模块112.4.1串口通信的工作参数113软件设计113.1主程序设计113.1.1被监测端(发射端)113.1.2监测端(接收
2、端)133.6计算机监控软件设计144系统测试154.1测试所使用的仪器154.2软硬件测试154.2.1显示(LCD1602)测试及数据154.2.2温度采集测试及数据164.2.3无线接收发送测试及数据164.2.4上位计算机通信测试及数据175总结17附录18计算机监控软件使用说明:18被检测端(发射端)主程序:18检测端(接收端)主程序:21计算机监控软件主程序:24基于NRF905无线收发芯片温度监测无线通信系统的设计摘要本系统采用NRF905无线收发模块实现了被监测端(发射端)至监测端(接收端)的单工数据传输。被监测端以单片机AT89S51为核心,使用DS18B20温度传感器进行数
3、据的采集;AT89S51对采集到的温度进行处理,然后通过NRF905把温度数据发送给监测端。监测端采用NRF905内置的CRC检测,从而保证数据的准确。通过LCD1602液晶显示器来实现数据的显示;通过MAX232芯片实现与上位计算机通信的功能;可以同时放置若干个监测端(接收端)从而实现多点监测。1方案论证与比较针对题目要求,经过分析,系统主要包括温度传感器、无线收发模块、单片机控制模块、显示模块及上位计算机通信模块。系统采用软件工程的UML建模语言进行建模,系统的设计框图如图1.1:图1.1“操作人员”给“控制器”上电,“控制器1”以串口方式读取“温度采集”模块的数据,经“控制器1”处理,处
4、理后的温度数据传输给“本地显示”模块以进行显示,最后在通过“无线发射”模块把温度数据发送出去。“无线接收”模块接收到温度数据后传输“控制器2”,“控制器2”进行数据处理,处理后的温度数据传输给“本地显示”模块以进行显示,然后再通过串口通信,把温度数据传输给上位计算机的“PC温度监控”模块,计算机内部处理后显示在计算机屏幕上,以便“监控人员”进行监控。1.1温度采集方案设计温度采集模块是系统设计的重点之一,直接影响整个系统对环境温度变化的反应速度、采集准确度以及精度等指标。【方案一】采用数字温度传感器DS18B20,具有连接简单、采集速度快、精度高等特点。它采用单线总线与单片机相连(和地线),这
5、允许在许多不同地方放置温度传感器。它可在1秒内把温度变换为数字,采集速度较快能及时反应温度的变化。最高12位温度读数,精度可达到0.0625摄氏度,温度采集范围-55125摄氏度,在很多场合下都能使用,并且价格低,很容易买到。【方案二】采用模拟传感器。虽然它能及时的反应出温度变化,但是它的精度较低,并且还要使用A/D转换器,这样增加了成本和控制的难度,所以采用方案一。1.2显示部分方案设计显示部分能在本地及时的显示出当前的温度,方便操作人员了解本地的温度。【方案一】采用LCD液晶显示屏,它是以若干个5 X 10点阵块组成,能显示英文字符和数字。具有低功耗、长寿命、高可靠性、清晰、体积小等特点。
6、【方案二】采用LED八段显示器。虽然LED具有原理简单、显示快速等特点。但是它不能显示英文字符,如果使用锁存方式显示,增加了电路难度。不使用锁存方式则增加了控制的难度。所以采用方案一。1.3无线接收发射方案设计无线接收发射是系统设计的重点之一,它是连接监测端和被监测端的桥梁。无线模块对环境比较敏感,同时,无线模块的功耗、传输距离也是影响系统可用度的一个因素。所以必须选用能自己检测传输错误,并且功耗较小、传输距离长的无线模块。【方案一】采用NRF905无线收发芯片。具有体积小、功耗低、发射电流小、抗干扰能力强、发射速率高等特点,同时自带CRC检测,传输距离可达300M。【方案二】采用PTR200
7、0进行温度的发送和接收,该方案具有模块体积超小型,超低功耗,高速率,抗干扰能力强,开阔地时的使用距离最远可达1000米,但接收到发射的转换时间较长,不能及时传输时空变化的温度,所以采用方案一。 1.4上位计算机通信方案设计【方案一】采用MAX232串口通信芯片。具有电路简单、编程容易等特点,并且价格便宜,容易买到。【方案二】采用USB通信。采用此方案技术难度较大,编程困难。所以采用方案一。综上所述,总体方案是:控制部分采用通用的AT89S51芯片,温度采集使用数字温度传感器DS18B20,本地显示采用点阵液晶屏,无线收发采用NRF905芯片,采用MAX232串口方式与上位计算机通信。2硬件电路
8、设计2.1温度采集模块工作原理与计算2.1.1工作原理系统在被监测端(发射端)采用数字温度传感器DS18B20实现温度的采集,DS18B20才用单总线接口,只占用单片机的一个端口。DS18B20可以采用数据线供电的方式,但是为了采集速度更快,我们使用外部供电方式。其测量范围从55摄氏度到125摄氏度,能满足一般民用需求。其连接电路如图2.1:图2.1工作原理:首先单片机初始化DS18B20,然后发送启动温度转换命令,然后再发送准备读取温度命令,最后读取2字节的温度数据。具体步骤如下:单片机给DS18B20一个初始化命令,然后发送0xcc命令跳过读序列号,发送0x44命令以启动温度转换。再发送一
9、个初始化命令,同样发送0xcc命令跳过读序列号,发送0xbe命令准备读取温度,单片机连续读取2字节的温度数据。2.1.2温度计算DS18B20采用2字节来存储温度,其中1511位表示温度符号,104位表示温度的整数位,30位表示温度的小数位,如图2.2所示:图2.2正温度计算:由于1511位全为0,DS18B20采用正码形式存储温度,所以只需把100位右移4位就能算出温度,也就是除以16。比如采集到的温度0550H,除以16,的十进制的85,那么温度就为85摄氏度。采集到的温度为0191H则温度为25.0625摄氏度。负温度计算:对于负温度,DS18B20采用补码形式存储温度,1511位全为1
10、,100位为补码,所以要转换为正码,然后再用正温度的计算方式。比如采集到的温度为FC90H,二进制为1100 1001 0000,转换为正码为0011 0111 0000,十六进制为370H,除以16为十进制55摄氏度,再加上符号位则计算出来的温度为-55摄氏度。2.2显示模块电路显示模块使用比较通用的LCD1602液晶屏,它是以若干个5 X 10点阵块组成,具有清晰、快速、可靠等特点。其电路如图2.3:图2.3本系统采用单片机P0口作为LCD1602的数据端口,E使能端使用单片机的P2.3口,RW使用单片机的P2.2口,RS使用单片机的P2.1口,VO背光接地,电源采用+5v。排阻RR1为单
11、片机P0口的上拉电阻。2.3无线发射接收模块无线发射接收模块使用NRF905芯片,它与控制器采用SPI协议进行通信,其内部原理如下图:NRF905单片无线收发模块工作在433/868/915MHZ的ISM频段,本系统采用433MHZ频段。由一个完全集成的频率调节器,一个带解调器的接收器,一个功率放大器,一个晶体振荡器和一个调节器组成。ShockBurst工作模式的特点是自动产生前导码和CRC。可以很容易通过SPI接口进行编程配置。电流消耗很低,在发射功率为-10dBm时,发射电流为11mA,接收电流为12.5mA,进入POWERDOWN模式可以很容易实现节电。由于AT89S51没有SPI端口,
12、所以我们用AT89S51模拟SPI,从而与NRF905通信。与单片机的连接如图2.4:图2.4NRF905管脚的具体含义请参考下图:2.3.1 SPI接口设计SPI接口由状态寄存器、射频配置寄存器、发送地址寄存器、发送数据寄存器和接收寄存器5个寄存器组成。1. 状态寄存器:包含数据就绪DR和地址匹配AM状态2. 射频配置寄存器:包含收发器的频率,输出功率等配置信息3. 发送地址寄存器:包含目标器件地址字节长度由配置寄存器设置4. 发送数据寄存器:包含发送的有效数据包数据字节长度由配置寄存器设置5. 接收寄存器:包含接收到的有效数据包数据字节长度由配置寄存器设置在寄存器中的有效数据由数据准备就绪
13、DR指示2.3.2 工作模式NRF905有4种工作模式,本系统采用其中的3种模式:SPI编程模式、发送模式、接收模式。其工作模式由TRXCE、TXEN、PWRUP的设置来设定的。如表2.1表2.1Standby模式(SPI编程模式):Standby模式在保持电流消耗最小的同时保证最短的到shockBurst Rx,ShouckBurst Tx的启动时间。当进入这种模式时,一部分晶体振荡器是活动的。电流消耗取决于晶体振荡器的频率。在此模式中,配置字的内容保持不变。ShockBurst Rx模式(接收模式):当有相应的温度数据要传送时,则通过SPI接口,按时序把接收机的地址和要发送的数据送传给NR
14、F905,SPI接口的速率在通信协议和器件配置时确定;TRXCE和TXEN置高电平,使NRF905的发送模式启动;NRF905进行数据的发送。NRF905不断重发,直到TRXCE被置低电平时,NRF905发送过程完成,自动进入空闲模式。ShockBurst Tx模式(发射模式): 当TRXCE为高电平,TXEN为低电平时,NRF905进入接收模式;650S后,NRF905不断监测,等待接收数据;当NRF905检测到同一频段的载波时,载波检测引脚被置高电平;当接收到一个相匹配的地址,AM引脚被置高电平;当数据包正确接收完毕,NRF905自动移去字头、地址和CRC校验位,然后把DR引脚置为高电平;
15、TRXCE置为低电平,NRF905进入空闲模式;在一次通过SPI口,以一定的速率把数据移到微控制器内,当所有数据接收完毕,NRF905把DR引脚和AM引脚置为低电平。这时NRF905可以进入接收模式、发送模式或关机模式。2.3.3 工作电源NRF905使用的是3.3v电源,所以必须给它单独配置一个电源,3.3v电源电路如图2.5:图2.5VDD输入为9V直流电压,稳压块采用的是德州仪器公司的TLV2217-33电源模块,具有精度高等特点。TLV2217-33输入512V,输出3.3V。无论NRF905工作在什么模式,它的电流都不大,所以,使用德州仪器公司的TLV2217-33电源模块给NRF905供电是比较合适的。我们在监测端(接收端)使用了2个NRF905信号指示灯,信号指示灯电路如图2.6:图2.6其中CD为NRF905的载波检测脚,AM为NRF905的地址匹配脚,sn74ahc1g86dbc为德州仪器公司的单通道异或门,对CD和AM进行异或。操