
室内温度自动调节控制系统.doc
26页室内温度自动调节控制系统摘要 在人们日常生产及生活过程中,经常要用到温度的检测和控制随着微型计算机和传感器技术的迅速发展,自动检测领域发生了巨大变化,室内温度自动检测控制方面的研究有了很大进展同时现代电子产品性能进一步提高,产品更新换代的节奏越来越快本次课程设计是基于STC89C52单片机基础板所做的温度检测调节系统,不仅对于学习单片机技术等专业知识有实际意义,而且还可以增强动手能力这次设计的系统,硬件电路主要包括单片机最小系统电路,温度采集电路,显示电路,语音播报电路,按键电路,继电器电路等软件程序主要包括主程序,读出温度子程序,计算温度子程序,显示温度刷新子程序,语音播报程序等我们利用DS18B20温度传感器采集温度通过STC89C5单片机系统在应用板上利用LCD1602液晶显示屏显示实时测得的温度 ,通过程序进行语音播报;当温度超过设定的上限时,继电器闭合,并驱动动机工作,以实现降温经过调试,结果显示LCD屏准确显示了室温,并能进行语音播报当温度超过设定上限时,继电器闭合,风扇工作,开始降温;实现了系统设计要求的功能 关键词:室内温度,自动控制,STC89C52单片机,语音播报。
目录0 前言 11总体方案设计 21.1设计方案论证 31.2 主控制器 31.3 LCD液晶显示 31.4 温度传感器 32硬件电路设计 62.1.主控制器 62.1.1 电源部分 62.1.2 串口电路 72.1.3晶振电路 82.1.4复位电路 82.2 显示电路 92.3 数据采集电路 92.4语音电路 102.5按键电路 113 软件设计 123.1 主程序设计 123.2 温度转换程序 123.3 温度显示程序 124 调试分析 134.1 硬件调试 144.1.1硬件调试方法 144.1.2 电源调试 144.1.3 语音模块调试 144.2 软件调试 145 结论 14参考文献 18附录1 电路原理图 19附录2 .PCB图 20附录3主程序 2120 前言在信息高速发展的今天,科学技术日新月异,科技的进步带来了测量技术的发展,现代控制设备发生了翻天覆地的变化随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中室内温度检测就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。
温度是一个永恒的话题和人们生活环境有着密切关系的物理量,是国际单位制的七个基本单位之一,作为各种信息的感知、采集、转换的功能器件温度传感器的作用日显突出,温度的检测与控制是日常生活中比较典型的应用如在日常生活中测量并记录室内的温度,可以了解室内温度变化情况而我们所要设计的系统正是进行温度的检测,并实现自动控制室温1总体方案设计1.1设计方案论证针对本课题的设计任务,进行分析得到:本次设计用温度传感器进行温度的测量,转化了的温度信号由传感器直接得到了数字信号该数字温度显示电路的设计,在总体上大致可分为以下几个部分组成:1.单片机控制电路;2.温度传感器;3. LCD显示电路方案一由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温电路比较麻烦 方案二 进而考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,DS18B20为常用的温度传感器,具有体积小,硬件开销低,抗干扰能力强,精度高的特点所以采用温度传感器DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。
从以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计也比较简单,故采用了方案二本文设计的室温自动控制系统原理框图如图1所示图1 系统原理框图1.2 主控制器控制器芯片种类很多,有凌阳公司的16位单片机,也有51系列的单片机方案一:选用AT89C51,该芯片能使用C语言进行程序的编写,方便阅读但是,其集成程度低,功能单一,需要使用到其它功能时,只能通过扩展外电路来实现,使得整个电路复杂,成本高,稳定性低同时,I/O口输出功率小,一般器件都需要加驱动才能够正常使用方案二: STC89C52RC是微处理器低功耗,超低价高速( 0 -90M),高可靠5V工作电压单片机,使产品更小,因为本系统要求的性能不是太高,而且处于模拟阶段,利用单片机芯片就可以控制其中单片机的更轻,功耗更低,如果相关新增功能没有用到,则不需看相应部分用STC 提供的STC-ISP.exe 工具可以将原有的代码下载进STC 相关的单片机即可,内部Flash 擦写次数为100,000 次以上用户程序是用ISP/IAP 机制写入,一边校验一边写,无读出命令综合考虑我们选择方案二STC89C52RC作为我们的主控芯片 1.3 LCD液晶显示 因为LCD1602液晶显示屏具有微功耗、体积小、显示内容丰富、超薄轻巧等特性,常用在袖珍式仪表和低功耗应用系统中,且1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字),所以选择其进行实时温度显示。
图2 LCD1602液晶显示屏1.4 温度传感器 温度传感器DS18B20结构图如图3所示,引脚左负右正,一旦接反就会立刻发热,有可能烧毁同时,接反也是导致该传感器总是显示85℃的原因正确接法:面对着扁平的那一面,左负右正DS18B20的性能特点如下[1]:a.独特的单线接口仅需要一个端口引脚进行通信;b.多个DS18B20可以并联在惟一的三线上,实现多点组网功能;c.无须外部器件;d.可通过数据线供电,电压范围为3.0~5.5V;e.零待机功耗;f.温度以9或12位数字;g.用户可定义报警设置;h.报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;i.负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;图3 DS18B20的外部封装图DS18B20温度转换的时间比较长,而且分辨率越高,所需要的温度数据转换时间越长因此,在实际应用中要将分辨率和转换时间权衡考虑高速暂存RAM的第6、7、8字节保留未用,表现为全逻辑1第9字节读出前面所有8字节的CRC码,可用来检验数据,从而保证通信数据的正确性当DS18B20接收到温度转换命令后,开始启动转换。
转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1、2字节单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以0.0625℃/LSB形式表示当符号位S=0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位S=1时,表示测得的温度值为负值,要先将补码变成原码,再计算十进制数值如图表1,DS18B20完成温度转换后,就把测得的温度值与RAM中的TH、TL字节内容作比较若T>TH或T<TL,则将该器件内的报警标志位置位,并对主机发出的报警搜索命令作出响应因此,可用多只DS18B20同时测量温度并进行报警搜索在64位ROM的最高有效字节中存储有循环冗余检验码(CRC)主机ROM的前56位来计算CRC值,并和存入DS18B20的CRC值作比较,以判断主机收到的ROM数据是否正确温度 LSB温度 MSBTH用户字节1TL用户字节2配置寄存器保留保留保留CRC 表1 DS18B20的测温原理是这这样的,器件中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入。
器件中还有一个计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲进行计数进而完成温度测量计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55℃所对应的一个基数分别置入减法计数器1、温度寄存器中,计数器1和温度寄存器被预置在-55℃所对应的一个基数值 减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时,温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器计数到0时,停止温度寄存器的累加,此时温度寄存器中的数值就是所测温度值其输出用于修正减法计数器的预置值,只要计数器门仍未关闭就重复上述过程,直到温度寄存器值大致被测温度值2硬件电路设计2.1.主控制器 单片机STC89C52RC具有低电压供电和体积小等特点,四个端口只需要两个口就能满足电路系统的设计需要,很适合便携手持式产品的设计使用系统可用二节电池供电STC89C52RC是一种低功耗,高性能的8位微控制器,具有8K在系统可编程FLASH存储器。
使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容片上FLASH允许程序存储器在系统可编程,亦适于常规编程器在单芯片上,拥有灵巧的8位CPU和在系统可编程FLASH,使得STC89C52RC为众多嵌入式控制应用系统提供高灵活,超有效的解决方案该单片机的最小系统包括电源部分,串口部分,单片机部分,晶振电路和复位电路最小系统原理图如图4所示[2]图4 最小系统原理图 2.1.1 电源部分如图5是单片机小系统的电源部分原理图[3] 图5 总电源电路通过5V变压器,上图电路是可以为整个设计的各个部分提供电源(+5V),由图可知,电源部分由一个电源插槽J7和电源开关S1、一个发光二极管、一个1K电阻和一个容值为1UF的稳压电容组成当电源接通后,打开开关,发光二极管会发光2.1.2 串口电路串口原理图如图6所示主要作用是进行电平转换,提高信号传输的速度 图6 串口原理图串口电路是由一个MAX232芯片、5个0.1UF的电容和一个串口组成电路中的MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的单电源电平转换芯片,使用+5v单电源供电,在电路中的C1~C4是必不可少的,缺一不可,具有调节电压值的作用。
由图可知,当数据线接上串口DB9时数据经过3号引脚送给MAX232的13号引脚,在经过12号引脚输出将电平转换送往单片机芯片中,在经过一系列单片机讲信号送给11号引脚经过芯片电平转换由14号引脚送给串口的2号引脚,已达到电平转换的作用2.1.3晶振电路如图7所示,晶振电路用于产生单片机工作所需的时钟信号,电路选用11.0592MHZ的晶振和容值为22PF的电容,在单片机芯片的18(XTAL1)、19(XTAL2)号引脚之间跨界警惕震荡器和微调电容,就可以构成一个稳定的。
