【基单片机的温湿度采集系统设计7200字(论文)】_第1页
【基单片机的温湿度采集系统设计7200字(论文)】_第2页
【基单片机的温湿度采集系统设计7200字(论文)】_第3页
【基单片机的温湿度采集系统设计7200字(论文)】_第4页
【基单片机的温湿度采集系统设计7200字(论文)】_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

基单片机的温湿度采集系统设计目录TOC\o"1-2"\h\u2429基单片机的温湿度采集系统设计 122534第1章绪论 19188第2章智能化温湿度监测控制系统的总体结构设计 2231842.1系统结构设计的原则和方案 2260222.2各功能模块结构的详细设计 532065第3章智能化温湿度监测控制系统的软件实现分析 10310513.3.1中心处理模块程序分析 10133903.3.2系统软件总体功能描述 11201753.3.3液晶显示模块程序分析 11209533.3.4温度测试模块程序分析 1329060第4章智能化温湿度监测控制系统的测试 15304294.1测试工具 15239934.2系统调试概述 1563034.3系统硬件测试 15237904.4系统软件测试 169899第5章论文总结与展望 1825699参考文献 19摘要:本课题主要想在温度测量领域,寻找一种高性价比,适用范围广,能广泛用于工业、农业、国防等行业的方案。该系统设计采用单片机8051作为控制核心,对水温和大气湿度进行采集。通过集成温度传感器18B20将温度值通过液晶屏1602进行显示。ADC0809将由湿度传感器产生的模拟信号进行数字化,并且把产生的湿度值显示在液晶屏1602上。本文重点对设计硬件、软件的组成进行了分项、模块化逐步分析设计。对各部分的电路一一进行了介绍,最终实现了该系统的硬件电路。根据硬件的设计和测控仪所要实现的功能,本文对软件也进行了一一设计,并经过反复的模拟运行、调试,修改简化了软件系统,最后形成了一套完整的程序系统。关键词:温湿度控制;单片机;温度传感器;湿度传感器第1章绪论进入21世纪以来,工农业越来越高度自动化,智能控制领域的高度发展,相信一个智能控制系统的应用相比手工操作来说工作效率会提高不少。而单片机的应用就是其中一块有很大发展前途的一个领域,只要你细心留意一下你的周围,你会发现单片机控制应用无处不在,远的不说,你家里使用的各种电子仪器和各种电子产品无不例外的要用到单片机。同时单片机在仪表中的应用也日益广泛。单片机将中央处理器、程序储存器、定时器/计数器、并行串行输入输出口和中断部件等单元集成在一个芯片上,使系统的体积缩小,价格便宜,性能可靠。试想一下如果设计一个用单片机智能控制以上所提及到的温度和湿度控制问题,会不会有很好的应用效果呢。本设计主要是针对工业控制和农业应用方面的需求,特别是针对如何更好的实现农业现代化,如何提高农民收入而进行的科学实验性设计。设计的实现将直接可以在现实工业现场应用。第2章智能化温湿度监测控制系统的总体结构设计本部分内容介绍了系统的总体框架、模块划分、外部接口,使我们对系统有一个系统、全面、确切的认识。2.1系统结构设计的原则和方案2.1.1系统设计的原则一个系统的设计要取得成功,必须遵循一定的设计原则。智能化温湿度监测控制系统结构的设计遵循以下几个原则:(1)功能性原则:系统的设计首先要满足功能上的要求,智能化温湿度监测控制系统是基于效能分析数据的,结构的设计必须满足效能分析数据的特点。(2)可靠性原则:对于一个系统来说,最重要的莫过于系统的稳定性,它是系统能正常运行的前提。(3)易用性原则:一个系统的成功与否,它的人性化设计变得越来越重要,只有使用容易、简便的系统才能得到大家的认可。(4)经济性原则:一个系统是否具有实际用途,是否能被大家所接受,除了其功能外,其成本也是决定性因素。只有价格低廉、效果良好的的系统才能被大家承认和接受。(5)模块化原则:结构的设计尽量模块化,以方便系统调试和功能的扩充。2.1.2系统结构的总体方案研究系统采用单片机AT89C51系统进行温度和湿度的监测控制。其中温度信号由DS18B20提供,湿度的控制采用湿温度传感器CHTM-02/NA。由DS18B20内置存储器存储温度的范围,当温度超过相应的范围,系统通过蜂鸣器来报警。全系统完成的温度和湿度的测量液晶显示器LCD上显示相应的温度和湿度。系统具有较高的测量精度和控制精度。详细结构如图2.1。继电器CHTM-02/NA主控51单片机继电器CHTM-02/NA主控51单片机AD转换AD转换LCDLCD图2.1AT89C51结构图2.1.3温度测量部分方案论证温度测量有很多种方法,但这里涉及到的温度测量有如下三种方法:方案一:采用热敏电阻,可满足0到100摄氏度的测量范围,但热敏电阻精度、重复性、可靠性都较差,对于检测小于1摄氏度的温度信号是不适用的。方案二:采用集成温度传感器AD590K。AD590K具有较高的精度和重复性,但AD590K内部不存在温度电压转换电路,需要外接温度/电压转换电路,这就意味着增加了电路的复杂性。方案三:采用智能温度控制器DS18B20,DS18B20是最新的单线温度传感器,体积更小,适用电压更宽,DS18B20使电压、特性以及封装具有更多的选择,让我们可以构建适合自己的经济的测温系统。比较以上三种方案,还是方案三以它的经济和性能优越让我们选择了它。温度控制模块如图2.2。蜂鸣器蜂鸣器51单片机51单片机LCDLCDDS18B20DS18B20图2.2温度控制模块图2.1.4湿度测量部分方案论证湿度测量部分方案的确定有以下原因:方案一:可采用集成的湿度传感器来完成湿度的测量部分,

其中湿敏元件是最简单的湿度传感器。湿敏元件主要电阻式、电容式两大类。但湿敏元件的线性度及抗污染性差,在检测环境湿度时,湿敏元件要长期暴露在待测环境中,很容易被污染而影响其测量精度及长期稳定性。方案二:采用温湿度传感器CHTM-02/NA来实现湿度的测量和控制。温湿度传感器.CHTM-02N系列是采用电阻型的单湿度模块,特点是采用恒压供电,内置放大电路,能输出与相对湿度呈比例关系的伏特级电压信号,响应速度快,重复性好,抗污染能力强。故本系统的湿度测量部分采用方案二来实现。湿度控制模块如图2.3。继电器51单片机继电器51单片机LCDLCDCHTM-02/NACHTM-02/NA图2.3湿度控制模块图2.2各功能模块结构的详细设计2.2.1中心处理模块结构设计分析8051的基本系统主要用来用51单片机来控制温度、湿度、等传感器的工作,以及控制继电器、蜂鸣器和LCD数码管的湿度和温度的显示。中心模块的处理与周边器件的接口见附录二。2.2.2湿度模块结构设计分析本系统采用温湿度传感器CHTM-02/NA来实现湿度的测量和控制CHTM-02/NA的电气特性如下:敏感元件(湿度):高分子湿敏电阻供电:5V交流信号源湿度变送范围:0-100%RH输出信号:(对应0-100%RH,在25摄氏度,输出电压为5V下)CHTM-02/NA的输出信号如下表2.1:表2.1湿度(%)102030405060708090输出信号(V)0.10.20.30.40.50.60.70.80.9由上表可知CHTM-02/NA输出的均为电压信号,因此需要通过A/D转换器进行数字化处理,在本设计中使用了8位8通道A/D转换器ADC0809。2.2.3A/D转换模块ADC0809是CMOS单片型逐次逼近式A/D转换器,内部结构如图2.5所示,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型D/A转换器、逐次逼近。图2.4ADC0809内部结构框图ADC0809芯片有28条引脚,采用双列直插式封装。下面说明各引脚功能。IN0~IN7:8路模拟量输入端。2-1~2-8:8位数字量输出端。ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路。如表2.2所示。表2.2ADDA、ADDB、ADDC真值表2.2.4温度测试模块结构设计分析温度采集单元的主要功能是完成温度采集,并将采集的温度信息上传给中心控制模块。温度采集单元功能单一,结构比较简单,常用的组成结构为图2.6所示。MCU为温度采集单元的核心元件,由于功能单一,任务较少,选用简单的低档单片机就可以了。看门狗时钟是为了防止程序在工业干扰的情况下跑飞而添加的,程序如果在超出设计的时间没访问看门狗时钟,则看门狗时钟将对单片机进行复位操作,从而避免了死机现象的发生。数字化温度传感器是一种精度较高的温度测试芯片,该芯片可以接收MCU发送的操作指令,自动对温度采样,并将当前采样温度发送给MCU。当前常用的数字化温度传感器有DS18B20等芯片,DS18B20采用单线通信,通讯线长度可达50米左右,并且抗干扰能力强,非常适合工业现场使用。工作状态指示灯可以用来指示MCU和数字化温度传感器或中心处理模块的通讯状态,加入工作状态指示灯,对温度模块的调试和检查都有着很好的帮助。蜂鸣器51单片机蜂鸣器51单片机LCDLCDDS18B20DS18B20图2.5温度采集单元2.2.5DS18B20温度传感器内部结构和工作原理Dallas半导体公司的数字化温度传感器DS1820是世界上第一片支持“一线总线”接口的温度传感器。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。DS18B20、DS1822“一线总线”数字化温度传感器同DS1820一样,DS18B20也支持“一线总线”接口,测量温度范围为-55°C~+125°C,在-10~+85°C范围内,精度为±0.5°C。DS1822的精度较差为±2°C。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。与前一代产品不同,新的产品支持3V~5.5V的电压范围,使系统设计更灵活、方便。而且新一代产品更便宜,体积更小。DS18B20、DS1822的特性DS18B20可以程序设定9~12的分辨率。光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。64位光刻ROM的排列是:开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。表2.3LS与MS这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。DS18B20温度传感器的存储器DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的E2RAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。暂存存储器包含了8个连续字节,前两个字节是测得的温度信息,第一个字节的内容是温度的低八位,第二个字节是温度的高八位。第三个和第四个字节是TH、TL的易失性拷贝,第五个字节是结构寄存器的易失性拷贝,这三个字节的内容在每一次上电复位时被刷新。第六、七、八个字节用于内部计算。第九个字节是冗余检验字节。表2.4DS18B20暂存寄存器分布寄存器内容字节地址温度最低数字位0温度最高数字位1高温限值2低温限值3保留4保留5计数剩余值6每度计数值7CRC校验8该字节各位的意义如下:TMR1R011111低五位一直都是1,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。在DS18B20出厂时该位被设置为0,用户不要去改动。R1和R0用来设置分辨率,如下表所示:(DS18B20出厂时被设置为12位)。表2.5分辨率设置R1R0分辨率温度最大转换时间009位93.75ms0110位187.5ms1011位375ms1112位750ms根据DS18B20的通讯协议,主机控制DS18B20完成温度转换必须经过三个步骤:每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待16~60微秒左右,后发出60~240微秒的存在低脉冲,主CPU收到此信号表示复位成功。DS1820使用中注意事项DS1820虽然具有测温系统简单、测温精度高、连接方便、占用口线少等优点,但在实际应用中也应注意以下几方面的问题:(1)较小的硬件开销需要相对复杂的软件进行补偿,由于DS1820与微处理器间采用串行数据传送,因此,在对DS1820进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。在使用PL/M、C等高级语言进行系统程序设计时,对DS1820操作部分最好采用汇编语言实现。(2)在DS1820的有关资料中均未提及单总线上所挂DS1820数量问题,容易使人误认为可以挂任意多个DS1820,在实际应用中并非如此。当单总线上所挂DS1820超过8个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时要加以注意。(3)连接DS1820的总线电缆是有长度限制的。试验中,当采用普通信号电缆传输长度超过50m时,读取的测温数据将发生错误。当将总线电缆改为双绞线带屏蔽电缆时,正常通讯距离可达150m,当采用每米绞合次数更多的双绞线带屏蔽电缆时,正常通讯距离进一步加长。这种情况主要是由总线分布电容使信号波形产生畸变造成的。因此,在用DS1820进行长距离测温系统设计时要充分考虑总线分布电容和阻抗匹配问题。(4)在DS1820测温程序设计中,向DS1820发出温度转换命令后,程序总要等待DS1820的返回信号,一旦某个DS1820接触不好或断线,当程序读该DS1820时,将没有返回信号,程序进入死循环。这一点在进行DS1820硬件连接和软件设计时也要给予一定的重视。测温电缆线建议采用屏蔽4芯双绞线,其中一对线接地线与信号线,另一组接VCC和地线,屏蔽层在源端单点接地。第3章智能化温湿度监测控制系统的软件实现分析3.3.1中心处理模块程序分析软件组成总体结构见图3.1。图3.1软件结构图3.3.2系统软件总体功能描述软件的主要功能是完成温度和湿度的测量和控制以及显示,具体功能如下:(1)温度设定与转换即设定控制温度为0到100摄氏度并读取转换的温度。(2)显示部分即在LCD数码管上显示温度和湿度。(3)DS18B20的驱动程序用汇编语言实现来控制DS18B20。(4)可通过蜂鸣器、继电器实现的温度和湿度的控制。3.3.3液晶显示模块程序分析液晶显示程序主要有以下几部分程序组成(具体代码见附件1):(1)写数据程序代码:voidwrDataLCD(unsignedchardate){ RS=1; RW=0; P1=date; E=1; _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); E=0; DelayTime(25000);}(2)写命令程序代码:voidwrCommdar(unsignedcharCommdar){ RS=0; RW=0; P1=Commdar; E=1; _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); E=0; _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); RW=1; RS=1; DelayTime(25000);}(3)设置液晶显示位置程序voidsetaddress(unsignedcharaddress){ address|=0x80; wrCommdar(address);}3.3.4温度测试模块程序分析温度测试程序主要由以下几部分组成(具体代码见附件1):启动18B20的初始化命令程序voidTempCnvrt(void){unsignedcharidataindex;EA=0;//关中断_nop_();_nop_();_nop_();ResetDS1820();//复位1820,正常情况下大约为1msEA=1;_nop_();_nop_();_nop_();for(index=0;index<250;index+=1);EA=0;//关中断_nop_();_nop_();_nop_();WriteByteToDs1820(0xCC);//跳过ROMWriteByteToDs1820(0x44);//开始转换温度,转换时间大概为750msEA=1;_nop_();_nop_();_nop_();}读取18B20中的温度数值voidGetTemp(void){unsignedcharidataindex;EA=0;//关中断_nop_();_nop_();_nop_();ResetDS1820();//复位1820,正常情况下大约为1msEA=1;_nop_();_nop_();_nop_();for(index=0;index<250;index+=1);EA=0;//关中断_nop_();_nop_(); _nop_();WriteByteToDs1820(0xCC);//跳过ROMWriteByteToDs1820(0xBE);//读命令g_ucTempLo=ReadByteFromDs1820();g_ucTempHi=ReadByteFromDs1820();TH=ReadByteFromDs1820();//读取温度高数值TL=ReadByteFromDs1820();//读去温度低数值EA=1;_nop_();_nop_();_nop_();}第4章智能化温湿度监测控制系统的测试4.1测试工具数字万用表、双通道20MHZ模拟示波器、PC机、微机电源、8051开发系统。4.2系统调试概述在单片机开发过程中,从硬件设计到软件设计几乎是开发者针对本系统特点亲自完成的。这样虽然可以降低系统成本,提高系统的适应性,但是每个系统的调试占去了总开发时间的2/3,可见调试的工作量比较大。单片机系统的硬件调试和软件调试是不能分开的,许多硬件错误是在软件调试中被发现和纠正的。但通常是先排除明显的硬件故障以后,再和软件结合起来调试以进一步排除故障。可见硬件的调试是基础,如果硬件调试不通过,软件设计则是无从做起。4.3系统硬件测试4.3.1排除逻辑故障这类故障往往由于设计和加工制板过程中工艺性错误所造成的。主要包括错线、开路、短路。排除的方法是首先将加工的印制板认真对照原理图,看两者是否一致。应特别注意电源系统检查,以防止电源短路和极性错误,并重点检查系统总线(地址总线、数据总线和控制总线)是否存在相互之间短路或与其它信号线路短路。必要时利用数字万用表的短路测试功能,可以缩短排错时间。4.3.2排除元器件失效造成这类错误的原因有两个:一个是元器件买来时就已坏了;另一个是由于安装错误,造成器件烧坏。可以采取检查元器件与设计要求的型号、规格和安装是否一致。在保证安装无误后,用替换方法排除错误。4.3.3排除电源故障在通电前,一定要检查电源电压的幅值和极性,否则很容易造成集成块损坏。加电后检查各插件上引脚的电位,一般先检查VCC与GND之间电位,若在5V~4.8V之间属正常。若有高压,联机仿真器调试时,将会损坏仿真器等,有时会使应用系统中的集成块发热损坏。4.4系统软件测试由于本系统软件调试的难度主要在A/D转换上,因此本文主要对A/D转换的测试数据进行分析,测试数据如表4.1。表4.1系统湿度测试数据测试时间传感器电压(v)显示湿度(%)4.2010:301.65584.2010:351.82604.2010:401.82604.2010:451.80614.2010:501.79604.2010:551.79604.2011:001.70594.2014:351.85624.2014:401.70594.2014:451.85624.2014:501.88624.2014:551.90664.2015:001.90664.2216:002.13754.2216:052.13754.2216:102.15764.2216:152.15754.2216:202.2076从以上测试数据可以看出,根据外部信息的变化,湿度显示的温度上下波动,不同时间,湿度显示不同,在同一时间段,湿度差最大不过5%,完全在预期范围之内。数据表明,该系统的湿度显示可以满足要求,表明系统的稳定性可以达到预期的要求,这种测量方式是可行的。第5章论文总结与展望本文的主要工作是对智能化水温监测控制系统设计方案的总结。在本设计的研究中,主要作了以下工作: (1)首先对课题的背景,课题研究的现实意义进行深入的研究和可行性的分析;对国内外的研究方案进行论证比较。(2)对智能化水温监测控制系统设计的工作原理,硬件设计进行论证和方案的比较,最终选择性价比比较好的方案作为本设计的方案。(3)对整个系统做了总体分析,并给出了总体控制框图。(4)着重分析了系统的硬件电路的设计,重点介绍了温度和湿度传感器的工作原理和工作方式。(5)分析了系统程序的设计,首先给出了程序流程图,给出总体的思路,然后对其中所涉及

温馨提示

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

评论

0/150

提交评论