基于单片机的温湿度控制系统设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

基于单片机的温湿度控制系统设计目录概述1系统总体分析2硬件系统设计3软件系统设计4结论5结论5概述1、课题的背景和现状环境的监测与控制在工业、农业、国防等行业有着广泛的应用。由于应用的场合不同监测对象的不同,其系统设计也是千差万别。在实际生活中此类系统有着广泛的应用,室温环境检测系统中温度和湿度是两个重要的显示和分析指标,必须定期抽样检查室温环境温度和湿度,以便采取相应的措施。89C51单片机是常用于控制的芯片,在智能仪器仪表、工业检测控制、机电一体化等方面取得了令人瞩目的成果,用其作为温湿度检测控制系统的实例也很多。使用89C51单片机能够实现温湿度全程的自动检测与控制,而且89C51单片机易于学习、掌握,性价比高。使用89C51型单片机设计温湿度检测控制系统,可以及时、精确的反映室内的温度以及湿度的变化。完成诸如升温到特定温度、降温到特定温度、在温度上下限范围内保持恒温等多种控制方式,在湿度控制方面也是如此。概述2、本系统主要研究内容人性化的设计。界限温度值及湿度值能够由用户根据不同的需求由键盘输入并通过显示器显示。能够实时、准确的显示采样温度值与湿度值。通过采集温度及湿度值,准确的判断设定值与当前值之间的差异,及时的启动报警装置(包括警报灯的提示功能以及提示音等)进行报警,同时采取相应的措施调整当前值。如:在检测出当前值高于设定的上限值时,系统会自动执行相应的降温措施,直至温度降到合适温度。系统总体分析1、总体方案设计51单片机AM2301数字温湿度传感器LCD液晶报警系统温湿度控制系统判断系统总体分析2、硬件的选择(1)选用MCS-51系列的89C51为主机。(2)温湿度传感器AM2301作为湿度测量装置,负责系统对环境温湿度的测量。(3)显示模块采用LCD1602液晶。硬件系统设计1、中央控制模块89C51是Intel公司于80年代初推出的8位嵌入式微控制器(内部数据总线为8位,外部数据总线为8位),它与MCS-96系统中的其它芯片相比,具有性能高、功能全、售价低廉、使用方便(48PINDIP)等优点。由于大的高度集成化已把许多常用的输入检测输出控制通道都制作在同一块硅片上,大大地灵活了外部连线,增强了系统的稳定性并且速度快(时钟12MHz),非常适合于工业环境下安装使用。因此本系统CPU选用89C51芯片。硬件系统设计2、时钟电路和复位电路硬件系统设计3、温湿度传感器AM2301硬件系统设计AM2301产品概述AM2301数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电容式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个AM2301传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式储存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。产品为4针单排引脚封装。连接方便,特殊封装形式可根据用户需求而提供。硬件系统设计传感器模块电路硬件系统设计4、显示模块1602液晶也叫1602字符型液晶它是一种专门用来显示字母、数字、符号等的点阵型液晶模块它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔每行之间也有也有间隔起到了字符间距和行间距的作用,正因为如此所以他不能显示图形(用自定义CGRAM,显示效果也不好)1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。显示模块由LCD显示构成,显示实时的温湿度和给定的中间温湿度值。其中LCD第一行显示温度的实时值和给定的温度中间值,第二行显示当前湿度值和系统给定的中间的湿度值。硬件系统设计LCD显示器模块电路。VSS1VDD2V03RS4R/W5EN6DB07DB18DB29DB310DB411DB512DB613DB714BLA15BLK16LCD1602P8LCD1602D0D1D2D3D4D5D6D710KR5123P10ENRSWRVCCGNDVCCGNDVoutGND硬件系统设计7、动作执行模块电路设计硬件系统设计8、报警模块软件系统设计1、LCD1602显示模块软件系统设计LCD初始化及工作流程软件系统设计开始初始化温湿度检测单片机处理LCD显示范围判断终止光声报警温湿度控制NOYES2、总体流程图软件系统设计3、主程序ORG0100H;MAIN:MOVR1,#10;T0100马上定时溢出计数寄存器R1赋初值10MOVP1,#0FFH;所有指示灯灭MOVSP,#60H;堆栈指针赋初值60HMOVTMOD,#01H;T0定时、方式1、软启动MOVTL0,#0B0H;T0赋初值MOVTH0,#3CH;MOVIE,#82H;开放T0中断SETBTR0;启动T0SJMP$;软件系统设计定时/计数器0中断服务程序ORG0200H;T0INT:DJNZR1,NEXT;T0溢出10次,即1s进一次采样处理LCALLADCON;调用温度采样及模数转换子程序LCALLCALCU;调用温度计算子程序LCALLDRVCON;调用驱动控制子程序LCALLMETRICCON;调用十进制转换子程序LCALLDISP;调用数码管显示子程序MOVR1,#10;R1重赋值10NEXT:MOVTL0,#0B0H;T0重装初值MOVTH0,#3CH;RETI;软件系统设计温度采样及模数转换子程序ORG0300H;ADCON:MOVDPTR,#0F0FFH;选通ADC0809通道0MOVA,#00H;MOVX@DPTR,A;启动A/D转换HERE:JNBP3.3,HERE;判断数据转换是否结束,没结束则等待MOVXA,@DPTR;读取转换后的数据MOV20H,A;将从ADC0809中读取的当前温度下热敏电阻上的电压值存于20H单元RET;软件系统设计•驱动控制子程序•ORG0500H;•DRVCON:MOVA,21H;取出当前温度值•CJNEA,#30,J1;与上限温度值(30℃)比较•LJMPGO;•J1:JNCDRV1;若高于上限温度,则输出驱动信号,同时高于上限温度指示灯点亮•CJNEA,#25,J2;与显现温度(25℃)比较•LJMPGO;•J2:JCDRV2;弱低于下限温度,则驱动信号停止输出,同时点亮低于下限温度的指示灯•LJMPGO;•DRV1:CLRP1.0;软件系统设计•SETBP1.1;•CLRP1.2;•SETBP1.3;•LJMPOVER;•DRV2:SETBP1.0•SETBP1.1;•CLRP1.2;•SETBP1.3;•LJMPOVER;•DRV2:SETBP1.0;•SETBP1.1;•SETBP1.1;•SETBP1.2;•CLRP1.3;软件系统设计•LJMPOVER;•GO:CLRP1.1;在下线温度(25℃)至上限温度(30℃)之间,则驱动信号保持前面状态,同时温度正常指示灯点亮•SETBP1.2;•SETBP1.3;•OVER:RET;结论•系统以8051单片机设计了一个温室的温湿度自动控制系统,对实时温湿度进行采样显示,并通过判断其是否越限对其采取相应的措施使其降到或升到合适的范围。•整个系统由单片机、温湿度传感器、显示模块、报警器、温湿度调节系统等5部分组成。用户预先输入温湿度报警值到程序中,该值作为系统阈值。温湿度传感器监测值传输给单片机,当单片机比较监测到的数值超出所设定阈值时,驱动蜂鸣器报警,并为温湿度调节系统提供控制信号,实现自动控制。温湿度调节系统包括加湿模块、除湿模块、加温模块和制冷模块。•系统实时地测量显示环境的温湿度值,实现温湿度自动控制,使其在较宽的温度范围内具有较高的测试精度,同时还可以根据用户设定报警阈值报警,一旦发现环境温湿度超限,立即报警。

1 / 26
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功