无线数据温湿度采集系统设计_第1页
无线数据温湿度采集系统设计_第2页
无线数据温湿度采集系统设计_第3页
无线数据温湿度采集系统设计_第4页
无线数据温湿度采集系统设计_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

无线数据采集系统韩季方何燕山 张健指导老师:吕丽萍 甄姬娜摘 要 41方案论证与比拟 51.1控制核心CPU的论证与比拟 51.2无线传输模块的论证与比拟 51.3显示模块论证与比拟 61.4键盘模块论证与比拟 61.5时钟实现论证与比拟 61.6控制发射方案论证与比拟 71.7温度采集模块论证与比拟 71.8湿度采集模块论证与比拟 71.9报警模块论证与比拟 71.10存储模块论证与比拟 82系统硬件设计与实现 92.1系统总体设计 92.2最小控制系统设计 102.3电源模块设计 102.4温度采集模块设计 112.5湿度采集模块设计 112.6NRF509无线收发模块设计 122.71602液晶模块设计 122.8LED指示灯模块设计 132.9红外模块设计 132.10键盘模块设计 132.11EEPROM模块设计 142.12串口通信模块设计 142.1312864液晶模块设计 142.14报警模块设计 152.15时钟模块设计 153系统软件设计与实现 173.1采集系统软件流程 173.2采集系统软件设计 183.2.1主程序设计 183.2.2温度检测程序设计 183.2.3湿度检测程序设计 183.2.4红外遥控程序设计 183.2.5NRF509发射程序设计 193.3显示系统软件流程图 193.4显示系统软件设计 213.4.1主程序设计 213.4.212864液晶屏幕程序设计 213.4.3键盘检测程序设计 213.4.4报警程序设计 213.4.5DS1302和EEPROM程序设计 213.4.6NRF509发射程序设计 224系统调试 234.1测试环境及工具 234.2测试方法 234.3测试数据 234.4测试结果 235结束语 24摘 要 本系统使用两片单片机作为控制、处理核心,由数据采集和数据显示两个分系统组成。系统核心模块使用两块NRF509无线收发模块来完成数据的无线传输。在数据采集系统中还有五路DS18B20和五路DHT11进行采集数据,然后使用红外遥控指定数据的发送,LED灯和1602液晶的显示发送指示更具直观性。在数据显示系统中的友好中文显示12864液晶更具可是效果,外加DS1302时钟、EEPROM数据存储和报警模块,然后通过灵活的操作键盘完成五路温度接收显示、五路湿度接收显示、数据实时保存且可查询和可设定数据报警范围且实时监测报警等功能。关键字:单片机 NRF509无线收发 DS18B20 DHT11 12864SummaryThesystemusestwosingle-chipasacontrol,theprocessingcore,thedataacquisitionanddatadisplaycomposedoftwosubsystems.KernelmoduleusestwoNRF509wirelesstransceivermoduletocompletethewirelesstransmissionofdata.Inthedataacquisitionsystem,andthereDS18B20RdRdDHT11tocollectdataandthenusetheinfraredremotecontroltosendthespecifieddata,LEDlightsandLCDdisplay1602tosendinstructionsmoreintuitive.InthedatadisplaysysteminamorefriendlyandChinesebuttheresultsshow12864,plusDS1302clock,EEPROMdatastorageandalarmmodule,andthencompletedthroughaflexiblekeyboardRdreceivedisplaytemperature,humidityRdreceiverdisplay,real-timedataissavedandcanqueryandsetthedatarangeandreal-timealarmmonitoringalarm.Keywords:single-chipNRF509wirelesstransceiverDS18B20DHT11128641方案论证与比拟本次设计有数据采集系统和数据显示系统,即发送与接收两个模块。数据采集系统完成五路温度采集和五路湿度采集,然后通过无线传输到接收站,即数据显示系统接收数据,然后将数据信息显示出来。1.1控制核心CPU的论证与比拟方案一:采用嵌入式单CPU实现采用高性能单CPU实现系统,比方以32位的嵌入式CPUARM芯片作为控制系统核心。此方案可以很好的完成数据采集和显示功能,但是ARM系统设计调试比拟复杂,在短的时间内难以很好地完成设计,并且本钱较高,所以不宜采用此方案。方案二:采用FPGA实现采用FPGA作为系统的控制器,它可以实现各种复杂的逻辑功能,所有的器件集中在一块芯片上,体积小,稳定性高。同时FPGA可用于EDA软件仿真调试,易于进行功能扩展。但是本系统对于数据处理的速度要求不高,而FPGA的引脚较多、布局复杂,相对本钱较高,所以不宜采用此方案。方案三:采用两片51单片机实现采用两片51单片机分别作为两个分系统的控制器,单片机使用简单,软件编程灵活,本钱较低。对于本系统的设计要求,使用STC89C52足以满足它的算法和控制功能。综上所述,我们决定采用方案三。1.2无线传输模块的论证与比拟方案一:基于PT2262/2272芯片的发/收模块PT2262/2272是台湾普城公司生产的一种CMOS工艺制造的低功耗低价位通用编解码电路,PT2262/2272最多可有12位(A0-A11)三态地址端管脚(悬空,接高电平,接低电平),可选地址较多,其工作频率315M,在空旷地域传输距离可达50到1000米,并且操作简单。但是基于PT2262只能完成发送功能,基于PT2272只能实现接收功能,如果设计到反应信息将无法实现,不适合应用在此题。方案二:NRF509无线收发模块NRF905单片无线收发器是挪威Nordic公司推出的单片射频发射器芯片,工作于433/868/915MHz3个ISM频道,NRF905可以自动完成处理字头和CRC〔循环冗余码校验〕的工作,可由片内硬件自动完成曼彻斯特编码/解码,使用SPI接口与微控制器通信,配置非常方便,使用51单片机可模拟SPI接口进行编程配置,编程较复杂,直线可视通讯距离200到300米,兼有收发两个功能。综上所述,我们决定采用第二方案。1.3显示模块论证与比拟方案一:采用数码管显示 LED数码管显示内容单一,显示信息量较少,而且耗电量比拟大,接口又比拟多,然而驱动电路设计比拟复杂,有点本钱低。

方案二:采用1602液晶显示采用1602LCD显示器,具有体积小、质量较轻、功耗低等优点,不过1602只能够显示16*2个字符,不能够显示汉字,8位并行数据传输。方案三:采用12864液晶显示采用点阵型〔128*64〕液晶显示器〔LCD〕,可以显示字符、数字、汉字及简单的图形,可设计出各种清晰的功能菜单及数据,提供全面的信息,功耗低、界面友好、控制灵活,另一较大有点可以串行数据传输,从而节省IO口资源。综上所述,我们决定在数据采集系统中选择使用1602液晶,在数据显示系统中使用12864液晶显示。1.4键盘模块论证与比拟方案一:采用矩阵式 矩阵式按键设计适应于按键数量较多,这种方式的优点就是相对于独立接口方式可以节省很多I/O资源,且更为灵活。缺点就是需要用软件处理消抖、重键等问题。矩阵式按键接口根据采用的按键识别方法不同根本有两种接法:线反转法和扫描法。其中扫描法的列线始终为输入,行线始终为输出;线反转法那么需要改变列线和行线的方向。。

方案二:采用独立键盘独立式按键接口设计优点是电路配置灵活,软件实现简单,但缺点也很明显,每个按键需要占用一根口线,假设按键数量较多,资源浪费将比拟严重,电路结构也变得复杂。因此本方法主要用于按键较少或对操作速度要求较高的场合。软件实现时,可以采用中断方式,也可以采用查询方式。综上所述,由于本设计键盘按键较少,我们决定使用采用独立键盘。1.5时钟实现论证与比拟方案一:软件实现 用软件实现,直接用单片机的定时器编程以实现时钟。

方案二:时钟芯片实现用专门的时钟芯片DS1302实现时钟的计时,再把时间数据送入单片机,由单片机控制显示。综上所述,比拟两种方案,用软件实现时钟固然可以,但是程序运行的每一步都需要时间,多一步或少一步程序都会影响计时的准确度,用专用时钟芯片DS1302那么可以实现准确记时。所以选二方案。1.6控制发射方案论证与比拟方案一:按键控制 采用按键控制发射,有点是设计简单,但是受到控制距离的限制。

方案二:红外遥控控制采用红外遥控控制发射,使用红外遥控器和一个红外接收头SM0038来实现,使用一个外部中断口,使用外部中断的方式来实现解码过程。使用遥控最大的有点就是可以把控制距离阔长。综上所述,我们决定采用第二方案。1.7温度采集模块论证与比拟方案一:采用热敏器件 由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,再将随着被测温度变化的电压或电流采集过来,进行A/D转换后,用单片机进行数据的处理,就可以将测温度显示出来。这种设计需要用到A/D转换电路,测温电路比拟复杂。

方案二:采用温度传感器温度传感器DS18B20是美国DALLAS半导体公司最新推出的一种改良型智能温度传感器,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式,它内部有一个结构为8字节的高速暂存RAM存储器。另外,DS18B20的一个主要特点就是单总线多节点控制,节约IO口和满足系统要求。综上所述,我们决定采用第二方案。1.8湿度采集模块论证与比拟方案一:采用DHT1101湿度传感器HS1101湿度传感器来测量湿度,HS1101是法国Humirel公司推出的一款电容式相对湿度传感器,HS1101湿度传感器在电路构成上等效于一个电容器件,将HS1101的电容量的变化量准确地转变为单片机易接受的信号需要一个振荡电路来实现,电路设计比拟复杂。

方案二:采用DHT11温湿度传感器DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。其可靠性和稳定性较强,使用方便,单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可达20米以上。综上所述,我们决定采用第二方案。1.9报警模块论证与比拟方案一:采用LED灯报警虽然操作简单,但是过于简单。

方案二:采用LED和蜂鸣器同时报警将LED和蜂鸣器并联在一起,使用一个三极管同时驱动,同时具有声光报警。综上所述,我们决定采用第二方案。1.10存储模块论证与比拟方案一:采用单片机内存单片机内存有限,只是用于较小的数据存储。

方案二:采用EEPROM使用EEPROM芯片AT24C02芯片,存储量较大,使用IIC总线控制,可以随机存取数据。综上所述,我们决定采用第二方案。2系统硬件设计与实现2.1系统总体设计基于上述各方案的论证与分析,我们确定了最终方案。整个系统采用5V电源分别为两个系统供电。系统的总体结构框图如下所示:五路温度采集器五路温度采集器DHT11五路温湿度采集器1062液晶显示红外遥控控制51单片机控制核心发射指示灯提示NRF509发射模块电源模块51单片机控制核心51单片机控制核心NRF509接收模块12864液晶显示成功接收数据提示DS1302时钟模块EEPROM数据存取模块上下限报警模块键盘模块电源模块图2-22.2最小控制系统设计 最小控制核心模块原理图如下图,本模块采用STC89C52作为控制芯片,采用12MHz高精度的晶振,以获得较稳定时钟频率,减小测量误差。5l系列单片机为许多控制提供了高度灵活和低本钱的解决方法,充分利用他的片内资源,即可与外围电路构成功能完善的无线采集系统。图2-32.3电源模块设计 电源模块是系统设计的重要局部之一,只有为系统提供了稳定的电压,系统才能够正常的工作,如果说电压过高或者过低都有可能导致系统损坏。本系统使用了10uf的电解电容和104的瓷片电容作为稳定电压措施,如下图:图2-42.4温度采集模块设计这里我们用到温度芯片DS18B20。DS18B20是DALLAS公司生产的一线式数字温度传感器,具有3引脚TO-92小体积封装形式。测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式串行输出。其工作电源既可在远端引入,也可采用寄生电源方式产生。CPU只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。DS18B20支持“一线总线”接口,测量温度范围为-55°C~+125°C,在-10~+85°C范围内,精度为±0.5°C。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。适合于本五路采集系统。图2-52.5湿度采集模块设计 SHT11的湿度检测运用电容式结构,并采用具有不同保护的“微型结构”检测电极系统与聚合物覆盖层来组成传感器芯片的电容,除保持电容式湿敏器件的原有特性外,还可抵御来自外界的影响。由于它将温度传感器与湿度传感器结合在一起而构成了一个单一的个体,因而测量精度较高且可精确得出露点,同时不会产生由于温度与湿度传感器之间随温度梯度变化引起的误差。CMOSensTM技术不仅将温湿度传感器结合在一起,而且还将信号放大器、模/数转换器、校准数据存储器、标准I2C总线等电路全部集成在一个芯片内。 SHT11的每一个传感器都是在极为精确的湿度室中校准的。SHT11传感器的校准系数预先存在OTP内存中。经校准的相对湿度和温度传感器与一个14位的A/D转换器相连,可将转换后的数字温湿度值送给二线I2C总线器件,从而将数字信号转换为符合I2C总线协议的串行数字信号。图2-62.6NRF509无线收发模块设计 本设计中将单片机模拟SPI接口和nRF905的SPI接口相连,另外再选几个I/O口连接nRF905的输入输出信号,nRF905传输数据时为非实时方式,即发送端发出数据,接收端收到后先暂存于芯片存储器内,外面的MCU可以在需要时再到芯片中去取。nRF905一次的数据传输量最多为32B。nRF905在正常工作前应根据需要写好配置存放器,其后的工作主要是两个:发送数据和接收数据。 发送数据时,先把nRF905置于待机模式(PWR_UP引脚为高、TRX_CE引脚为低),然后通过SPI总线把发送地址和待发送的数据都写入相应的存放器中,之后把nRF905置于发送模式(PWR_UP、TRX_CE和TX_EN全置高),数据就会自动通过天线发送出去。为了数据可靠地传输,将射频配置存放器中的自动重发位(AUTO_RETRAN)设为有效,数据包重复不断地一直向外发,直到把TRX_CE拉低,退出发送模式为止。接收数据时,把nRF905的TRX_CE引脚置为高电平,TX_EN引脚拉为低电平后,就开始接收数据。本设计中设定的40s内一直判断nRF905的DR引脚是否变高,假设为高,那么证明接收到了有效数据,可以退出接收模式,假设一直没有接收到,待时间到时也退出接收模式。退出后在待机模式,通过模拟SPI总线把nRF905内部的接收数据存放器中的数据读出,即接收到的有效数据。图2-72.71602液晶模块设计 1602液晶的电路设计使用8位数据IO口并行传输,三个控制信号线,背光灯电源出加一个限流电阻,在字符亮度电源处加一个可调变阻器,方便调节字体显示亮度。图2-82.8LED指示灯模块设计 LED指示灯电路设计简单,直接通过串联限流电阻与IO口连接,操作简单。图2-92.9红外模块设计 一体化红外线接收器是一种集红外线接收和放大于一体,不需要任何外接元件,就能完成从红外线接收输出与TTL电平信号兼容的所有工作,而体积和普通的塑封三极管大小一样,它适合于各种红外线遥控和外线数据传输。图2-102.10键盘模块设计 键盘模块采用独立键盘方案来设计电路,在数据显示系统中设计了5个按键,作用分别是确认、加、减、返回和一个附加功能,有着五个键可以通过软件编程灵活的操作12864液晶显示器的界面切换及其系统参数的改变。图2-112.11EEPROM模块设计 AT24C02存储芯片采用的是IIC总线控制,通过一条数据线和一条时钟信号线进行同步串行通信,即SDA和SCL都是双向线路都通过一个电流源或上拉电阻连接到正的电源电压,当总线空闲时这两条线路都是高电平连接到总线的器件输出级必须是漏极开路或集电极开路才能执行线与的功能I2C总线上数据的传输速率在标准模式下可达100kbit/s在快速模式下可达400kbit/s在高速模式下可达3.4Mbit/s连接到总线的接口数量只由总线电容是400pF的限制决定。图2-122.12串口通信模块设计 STC89C52有一个全双工的串行通讯口,所以单片机和电脑之间可以方便地进行串口通讯。进行串行通讯时要满足一定的条件,比方电脑的串口是RS232电平的,而单片机的串口是TTL电平的,两者之间必须有一个电平转换电路,我们采用了专用芯片MAX232进行转换,虽然也可以用几个三极管进行模拟转换,但是还是用专用芯片更简单可靠。图2-132.1312864液晶模块设计带中文字库的128X64是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64,内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示8×4行16×16点阵的汉字.也可完成图形显示.低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不管硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。本电路设计使用12864的串行数据通信的方式,这样可以节省IO的占用。图2-142.14报警模块设计 本模块设计有三极管驱动蜂鸣器,通过IO口控制信号可以发出来不同频率的声音,其电路设计如图:图2-152.15时钟模块设计 时钟电路原理图如图,DS1302与单片机的连接也仅需要3条线:CE引脚、SCLK串行时钟引脚、I/O串行数据引脚,Vcc2为备用电源,外接32.768kHz晶振,为芯片提供计时脉冲。图2-163系统软件设计与实现遥控1键按下1602显示发收数据提示是否有红外外部中断开始初始化遥控1键按下1602显示发收数据提示是否有红外外部中断开始初始化NRF509、1602、外部中断遥控2键按下遥控3键按下遥控4键按下相应发收数据指示灯提示1602显示发收数据NRF509配置发送模式NRF509发送数据延时 NY3.2采集系统软件设计 本系统软件设计采用模块化设计,模块化编程的最大优点是:思路清晰、移植方便、程序简化。3.2.1主程序设计在主程序中首先对NRF509、1602、外部中断进行初始化,然后进入实时循环检测红外中断,即检测是否有发出发射数据的遥控指令,同时不断读取温湿度更新数据,一旦有发射数据的遥控指令,那么将启动NRF509的发射模式,依照不同的发射数据遥控指令发射出相应的数据,同时将有1602液晶显示提示发送不同的数据和伴随有不同的LED灯发射指示。3.2.2温度检测程序设计 检测温度模块程序中,在系统调试之前首先使用读取5个不同的DS18B20的ROM地址,并且显示在1602液晶上面,将其记录下来放到一个数组中。 在系统运行中读取每一路温度时就需要使用地址匹配指令,将上面记录下来的地址与相应实物DS18B20进行匹配,假设匹配成功将正确读取该路温度。3.2.3湿度检测程序设计由于DHT11采用单线双向的串行数据传输,DATA用于微处理器与DHT11之间的通讯和同步,采用单总线数据格式,一次通讯时间4ms左右,数据分小数局部和整数局部,具体格式在下面说明,当前小数局部用于以后扩展,现读出为零.操作流程如下:一次完整的数据传输为40bit,高位先出。数据格式:8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit温度小数数据+8bit校验和数据传送正确时校验和数据等于“8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit温度小数数据”所得结果的末8位。用户MCU发送一次开始信号后,DHT11从低功耗模式转换到高速模式,等待主机开始信号结束后,DHT11发送响应信号,送出40bit的数据,并触发一次信号采集,用户可选择读取局部数据.从模式下,DHT11接收到开始信号触发一次温湿度采集,如果没有接收到主机发送开始信号,DHT11不会主动进行温湿度采集.采集数据后转换到低速模式。3.2.4红外遥控程序设计 红外遥控使用了遥控的四个键码,分别用于控制发射前三路温度数据、后两路温度数据、前三路湿度数据、后两路湿度数据。3.2.5NRF509发射程序设计在NRF509发射程序中首先要进行初始化nRF905的射频配置存放器,然后配置nRF905的发送地址,本设计中配置最多4个字节(32位),发送端的发送地址应与接收端设备的接收地址相同。本模块设定为发送模式。3.3显示系统软件流程图接收数据地址匹配不同界面由键盘操作设定显示参数,且确定屏幕号接收数据地址匹配不同界面由键盘操作设定显示参数,且确定屏幕号NRF509设置接收模式12864液晶显示相应界面键盘操作报警报警是否超出温度报警范围是否超出湿度报警范围菜单界面显示年月日五路温度显示显示时分秒五路湿度显示显示时分秒设定温湿度报警界面数据记录界面设计作者界面初始化NRF509配置存放器判断液晶屏幕号开始初始化NRF509、12864、DS1302、AT24C02接受的数据赋给相应的显示变量读取DS1302是否过1小时数据存储 N N Y YN N Y Y3.4显示系统软件设计 本系统软件设计采用模块化设计,模块化编程的最大优点是:思路清晰、移植方便、程序简化。3.4.1主程序设计在主程序中首先对NRF509、12864、DS1302、AT24C02进行初始化,然后进入实时循环刷新12864液晶显示屏〔由显示屏幕号和一些相关数据变量而定〕和检测扫描键盘,同时初始化NRF509配置存放器并且设置为接受模式,一旦发射系统发射数据将在这里接受,之后匹配地址,只有地址匹配才会更新接受数据,在此过程同时伴随有成功接受数据的声光提示信息。在这个循环中还有不断的读取DS18B20时钟进行刷新时间和进行定时的进行数据存储。3.4.212864液晶屏幕程序设计 在12864液晶显示器的函数根底上,本系统共设计了五个显示界面,并且设定五个界面的屏幕号分别是阿拉伯数字1到5,这五个界面显示功能分别是菜单界面显示和年月日显示

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论