毕业设计论文恒温恒湿控制系统的设计与实现.docx
《毕业设计论文恒温恒湿控制系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《毕业设计论文恒温恒湿控制系统的设计与实现.docx(51页珍藏版)》请在冰豆网上搜索。
毕业设计论文恒温恒湿控制系统的设计与实现
本科毕业设计
(自然科学)
题目:
恒温恒湿控制系统的设计与实现(偏硬)
院(系、部):
河北科技师范学院机电科学与工程系
学生姓名:
**********************************************
指导教师:
刘士光职称教授
2012年5月29日
河北科技师范学院教务处制
资料目录
1.
学术声明………………………………………………………………
~页
2.
河北科技师范学院本科毕业论文(设计)…………………………
~页
3.
河北科技师范学院本科毕业论文(设计)任务书………………
~页
4.
河北科技师范学院本科毕业论文(设计)开题报告……………
~页
5.
河北科技师范学院本科毕业论文(设计)中期检查表…………
~页
6.
河北科技师范学院本科毕业论文(设计)答辩记录表…………
~页
7.
河北科技师范学院本科毕业论文(设计)成绩评定汇总表……
~页
8
河北科技师范学院本科毕业论文(设计)工作总结……………
~页
9
其他反映研究成果的资料(如公开发表的论文复印件、效益证明等)……………………………………………………………
~页
河北科技师范学院
本科毕业设计
恒温恒湿箱控制系统的设计与实现(偏硬)
院(系、部)名称:
河北科技师范学院
专业名称:
电气工程及其自动化
********
学生学号:
**********
********
2012年5月19日
河北科技师范学院教务处制
学术声明
本人呈交的学位论文,是在导师的指导下,独立进行研究工作所取得的成果,所有数据、图片资料真实可靠。
尽我所知,除文中已经注明引用的内容外,本学位论文的研究成果不包含他人享有著作权的内容。
对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确的方式标明。
本学位论文的知识产权归属于河北科技师范学院。
本人签名:
日期:
指导教师签名:
日期:
摘要
本文利用AT89C52单片机设计一个温室的温湿度控制系统,对给定的温湿度进行控制并实时显示,其中温湿度信号各有四路,系统采用一定的算法对信号处理以确定采取某种控制手段。
系统硬件主要由电源电路、温度采集电路、湿度采集电路、键盘、显示电路、输出控制电路及其他辅助电路组成。
使用温度传感变送器获得温度的感应电压,经处理后送给单片机。
单片机将给定的温度与测量温度的相比较,得出偏差量,然后根据模糊控制算法得出控制量。
执行器由开关频率较高的固态继电器开关担任,采用PWM控制方法,改变同一个周期中电子开关的闭合时间。
从而调节高温电磁阀开关的导通时间,达到蒸汽控制目的。
通过键盘输入控制信息,并能将控制箱内的实时信息通过LED显示出来,实现人机对话。
关键词:
单片机;信号采集;温湿度控制;LED显示;
Abstract
ThistextusesthetypeAT89C52one-chipcomputertocontrolthetemperatureandhumidity,real-timecontroltemperatureandconstanttemperaturepermanentwetcasecontrolsystemofthehumidity."theconstanttemperature,permanentwetcontrolcabinet"aregatheredthetemperature,humiditywhichtestthecasebyNo.twosensor,giveto8051microprocessordealingwithby,loweringthetemperature,humidification,dehumidifying,alarm,etc.continuetheelectricdevicerespectively.Accordingtoneed,isitcontrolinformationisandcanreal-timeinformationofcontrolcabinetthroughLEDshowcomeouttoinputthroughkeyboard,realizeman-machinedialogue.
Keywords:
one-chipcomputer;signalgathering;temperatureandhumiditycontrol;LEDmonitor
1绪论
1.1论文研究背景与意义
恒温恒湿箱也称恒温恒湿试验机、恒温恒湿实验箱、恒温机,可用于检测材料在各种环境下性能的设备及试验各种材料耐热、耐寒、耐干、耐湿性能。
适合电子、电器、通讯、仪表、车辆、塑胶制品、金属、食品、化学、建材、医疗、航天等制品检测质量之用。
随着我国工业产品研制的需要,近几年来,我国从国外引进了大批试验系统,为我国工业产品的研制和定型发挥了重要作用,但由于其本身的复杂性,使得试验箱在运行中出现了许多问题,而且出现了问题不能及时解决,大大延长了试验周期,影响了产品的研制工作。
随着现代农业的发展,恒温恒湿箱的应用越来越广泛(比如菌种的培养、幼苗的培育以及设施仪器仪表的校准等),并要求其性价比更高,使用寿命更长,使用费用更少(省电),响应速度更快。
而采用单片机来对温度和湿度进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温湿度的技术指标,从而能够大大提高产品的质量和数量。
基于此,本课题围绕恒温恒湿箱系统的设计与实现进行研究。
1.2主要研究内容
恒温恒湿的控制系统主要有以下几个方面:
加热系统、制冷系统、除湿系统、加湿系统、电气控制系统。
具体的要根据恒温恒湿的温度范围、湿度范围去设计.以单片机为控制器,结合温度传感变送器、LED显示器等,组成一个恒温恒湿控制系统。
使用温度传感变送器获得温度的感应电压,经处理后送给单片机。
单片机将给定的温度与测量温度的相比较,得出偏差量,然后根据模糊控制算法得出控制量。
执行器由开关频率较高的固态继电器开关担任,采用PWM控制方法,改变同一个周期中电子开关的闭合时间。
从而调节高温电磁阀开关的导通时间,达到蒸汽控制目的。
2系统总体设计
2.1方案设计
恒温恒湿控制系统,主要要完成对温度、湿度的采集、显示以及设定等工作,从而实现对温湿度的控制,以达到恒温恒湿的目的。
传统采用铂电阻充当测温器件的方案,虽然其中段测量线性度好,精度较高,但是测量电路的设计难度高,且测量电路系统庞大,难于调试,而且成本相对较高。
鉴于上述原因,本系统采用DS18B20充当测温器件。
外部温度信号经DS18B20将输入的模拟信号转换成8位的数字信号,通过并口传送到单片机系统。
单片机系统将接收的数字信号译码处理,通过LED将温度显示出来,同时单片机系统还将完成键盘扫描、按键温度设定、超温报警等程序的处理,将处理的温度信号与系统设定温度值比较,形成可以控制制冷、制热与停止工作三种工作状态,从而实现温度的智能化。
湿度传感器选用HIH3610型传感器,将湿度信号由传感器进行采集,经单片机将其与设定湿度进行比较,进而控制加湿、干燥,达到恒湿控制。
2.2控制系统测控设定
1.能够实时采集与显示环境温度、湿度等参数。
2.能够根据要求变化通过键盘输入改变对参数的设置,以满足不同的要求达到最佳效果;
3.声音报警功能;
4.根据检测到的信号,实时控制执行机构的开启与关断。
2.3控制系统组成
本设计是以AT89C52单片机为核心的自动控制系统,硬件系统由键盘输入电路、LED显示电路、传感器、A/D转换、隔离开关和执行电路、报警电路等组成。
硬件系统原理框图如图2.1所示:
图2.1测控系统硬件组成原理框图
传感器一般输出的为模拟量,需要通过A/D转换,转换为单片机能够接收的数字信号,若模拟信号太弱,还需经过运算放大器放大信号。
键盘输入的是系统参数的上、下限极限值,若检测到的信号值出现不在此极限区间的情况,单片机就会驱动蜂鸣器产生报警,此时就需要执行机构控制室内环境相应的改变,使得环境参数重新回到设定的理想区间。
3.硬件设计
硬件元器件的选择,必须考虑到功能的实现、器件的适时性、价格和通用性等几个方面。
在电路的设计中,在实现所要求功能的基础上,尽量使电路简单。
3.1单片机的选择
计算机的产生加快了人类改造世界的步伐,但是它毕竟体积庞大。
单片机(微控制器)就是在这种情况下诞生的。
微控制器,亦称单片机或者单片微型计算机。
它是把中央处理器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)、输入/输出端口(1/0)等主要计算机功能部件都集成在一块集成电路芯片上的微型计算机。
它的结构与指令功能都是按照工业控制的要求设计的,在智能控制系统中,微控制器得到了广泛的应用。
单片机目前己被广泛地应用于家电、医疗、仪器仪表、工业自动化、航空航天等领域。
市场上比较流行的单片机种类主要有Intel公司、Atmel公司和Philip公司的8051系列单片机,Motorola公司的M6800系列单片机,Intel公司的MCS96系列单片机,Microchip公司的PIC系列单片机等。
各个系列的单片机各有所长,在处理速度、稳定性、I/O能力、功耗、功能、价格等方面各有优劣。
这些种类繁多的单片机家族,给我们单片机的选择也提供了很大的余地。
本设计选用AT89C52单片机,它是一种低功耗、低价格,高性能8位微处理器。
3.2AT89C52系列单片机介绍
AT89C52是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含8kbytes的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大的AT89C52单片机适合于许多较为复杂控制应用场合。
3.2.1AT89C52基本特征
AT89C52系列单片机主要性能参数如下:
·与MCS-51产品指令和引脚完全兼容
·8k字节可重擦写Flash闪速存储器
·1000次擦写周期
·全静态操作:
0Hz-24MHz
·三级加密程序存储器
·256字节内部RAM
·32个可编程I/O口线
·3个16位定时/计数器
·8个中断源
·可编程串行UART通道
·低功耗空闲和掉电模式。
AT89C52提供以下标准功能:
8k字节Flash闪速存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
同时,AT89C52可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。
掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
3.2.2AT89C52单片机内部组成结构
AT89C52单片机的内部结构如图3.1所示:
图3.1AT89C52内部结构
3.2.3AT89C52的引脚功能
引脚功能说明如图3.2:
·Vcc:
电源电压
·GND:
地
·P0口:
P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。
作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。
在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
图3.2AT89C52单片机封装图
·P1口:
P1口是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。
作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
与AT89C51不同之处是,P1.0和P1.1还可分别作为定时/计数器2的外部计数输入(P1.0/T2)和输入(P1.1/T2EX),参见表3.1。
表3.1引脚P1.0和P1.1的第二功能
引脚号
功能特性
P1.0
T2(定时\计数器2外部计数脉冲输入),时钟输出
P1.1
T2EX(定时\计数器2捕获\重装载触发和方向控制
Flash编程和程序校验期间,P1接收低8位地址。
·P2口:
P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口P2写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据。
在访问8位地址的外部数据存储器(如执行MOVX@RI指令)时,P2口输出P2锁存器的内容。
Flash编程或校验时,P2亦接收高位地址和一些控制信号。
·P3口:
P3口是一组带有内部上拉电阻的8位双向I/O口。
P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。
此时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。
P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如表3.2所示:
表3.2引脚P3口的第二功能
端口引脚号
第二功能
P3.0
RXD(串行输入口)
P3.1
TXD(串行输出口)
P3.2
/INTO(外中断0)
P3.3
/INT1(外中断1)
P3.4
T0(定时/计数器0)
P3.5
T1(定时/计数器1)
P3.6
/WR(外部数据存储器写选通)
P3.7
/RD(外部数据存储器读选通)
此外,P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。
·RST:
复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
·ALE/PROG:
当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。
一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。
要注意的是:
每当访问外部数据存储器时将跳过一个ALE脉冲。
对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。
如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。
该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。
此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。
·PSEN:
程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。
此期间,当访问外部数据存储器,将跳过两次PSEN信号。
·EA/VPP:
外部访问允许。
欲使CPU仅访问外部程序存储器(地址为0000H—FFFFH),EA端必须保持低电平(接地)。
需注意的是:
如果加密位LB1被编程,复位时内部会锁存EA端状态。
如EA端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。
Flash存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。
·XTAL1:
振荡器反相放大器的及内部时钟发生器的输入端。
·XTAL2:
振荡器反相放大器的输出端。
3.2.4AT89C52的储存器
·中断寄存器:
AT89C52有6个中断源,2个中断优先级,IE寄存器控制各中断位,IP寄存器中6个中断源的每一个可定为2个优先级。
·数据存储器:
AT89C52有256个字节的内部RAM,80H-FFH高128个字节与特殊功能寄存器(SFR)地址是重叠的,也就是高128字节的RAM和特殊功能寄存器的地址是相同的,但物理上它们是分开的。
当一条指令访问7FH以上的内部地址单元时,指令中使用的寻址方式是不同的,也即寻址方式决定是访问高128字节RAM还是访问特殊功能寄存器。
如果指令是直接寻址方式则为访问特殊功能寄存器。
例如,下面的直接寻址指令访问特殊功能寄存器0A0H(即P2口)地址单元。
MOV0A0H,#data
间接寻址指令访问高128字节RAM,例如,下面的间接寻址指令中,R0的内容为0A0H,则访问数据字节地址为0A0H,而不是P2口(0A0H)。
MOV@R0,#data
堆栈操作也是间接寻址方式,所以,高128位数据RAM亦可作为堆栈区使用。
·定时器0和定时器1:
AT89C52的定时器0和定时器1的工作方式与AT89C51的相同。
·定时器2:
定时器2是一个16位定时/计数器。
它既可当定时器使用,也可作为外部事件计数器使用,其工作方式由特殊功能寄存器T2CON的C/T2位选择。
定时器2有三种工作方式:
捕获方式,自动重装载(向上或向下计数)方式和波特率发生器方式,工作方式由T2CON的控制位来选择。
·波特率发生器:
当T2CON中的TCLK和RCLK置位时,定时/计数器2作为波特率发生器使用。
如果定时/计数器2作为发送器或接收器,其发送和接收的波特率可以是不同的,定时器1用于其它功能。
若RCLK和TCLK置位,则定时器2工作于波特率发生器方式。
波特率发生器的方式与自动重装载方式相仿,在此方式下,TH2翻转使定时器2的寄存器用RCAP2H和RCAP2L中的16位数值重新装载,该数值由软件设置。
·中断:
AT89C52共有6个中断向量:
两个外中断(INT0和INT1),3个定时器中断(定时器0、1、2)和串行口中断。
这些中断源可通过分别设置专用寄存器IE的置位或清0来控制每一个中断的允许或禁止。
IE也有一个总禁止位EA,它能控制所有中断的允许或禁止。
定时器2的中断是由T2CON中的TF2和EXF2逻辑或产生的,当转向中断服务程序时,这些标志位不能被硬件清除,事实上,服务程序需确定是TF2或EXF2产生中断,而由软件清除中断标志位。
定时器0和定时器1的标志位TF0和TF1在定时器溢出那个机器周期的S5P2状态置位,而会在下一个机器周期才查询到该中断标志。
然而,定时器2的标志位TF2在定时器溢出的那个机器周期的S2P2状态置位,并在同一个机器周期内查询到该标志。
·AT89C52的直流参数有一定的温度适用范围,见表3.3:
表3.3T=-40℃~+85℃和Vcc=5.0V±20%下的直流参数
符号
参数
条件
最小值
最大值
单位
输入低电压
(ExceptEA)
-0.5
0.2VCC-0.1
V
输入低电压
-0.5
0.2VCC-0.3
V
输入高电压
(ExceptXTAL1,RST)
0.2VCC+0.9
VCC+0.5
V
输入高电压
(XTAL,RST)
0.7VCC
VCC+0.5
V
输出低电压(P1,2,3)
I=1.6mA
0.45
V
输出低电压(P0,ALE/PSEN)
I=32mA
0.45
V
输出高电压
I=-25uA
0.75VCC
V
输出高电压
I=-300uA
0.75VCC
V
逻辑0输入电流(P1,2,3)
V=0.45V
-50
uA
逻辑1到0转换电流(P1,2,3)
V=2V
-650
uA
RST
复位下拉电阻
50
300
K
引脚电容
1MHz,
pF
消耗电流
ActiveMode,12MHz
25
mA
·Flash存储器的编程:
AT89C52单片机内部有8k字节的FlashPEROM,这个Flash存储阵列出厂时已处于擦除状态(即所有存储单元的内容均为FFH),用户随时可对其进行编程。
编程接口可接收高电压(+12V)或低电压(Vcc)的允许编程信号。
低电压编程模式适合于用户在线编程系统,而高电压编程模式可与通用EPROM编程器兼容。
AT89C52单片机中,有些属于低电压编程方式,而有些则是高电压编程方式,用户可从芯片上的型号和读取芯片内的签名字节获得该信息,见表3.4。
表3.4顶面标记及签名字节
Vpp=12V
Vpp=5V
顶面标记
AT89C52
Xxxx
yyww
AT89C52
xxxx-5
yyww
签名字节
(030H)=1EH
(031H)=52H
(032H)=FFH
(030H)=1EH
(031H)=52H
(032H)=05H
AT89C52的程序存储器阵列是采用字节写入方式编程的,每次写入一个字节,要对整个芯片内的PEROM程序存储器写入一个非空字节,必须使用片擦除的方式将整个存储器的内容清除
图3.3AT89C52编程电路
·程程序序校验:
如果加密位LB1、LB2没有进行编程,则代码数据可通过地址和数据线读回原编写的数据,采用如图3.3的电路。
加密位不可直接校验,加密位的校验可通过对存储器的校验和写入状态来验证。
·编程方法:
1.在地址线上加上要编程单元的地址信号。
2.在数据线上加上要写入的数据字节。
3.激活相应的控制信号。
4.在高电压编程方式时,将EA/Vpp端加上+12V编程电压。
5.每对Flash存储阵列写入一个字节或每写入一个程序加密位,加上一个ALE/PROG编程脉冲。
每个字节写入周期是自身定时的,通常约为1.5ms。
重复1—5步骤,改变编程单元的地址和写入的数据,直到全部文件编程结束。
·Ready/Busy:
字节编程的进度可通过“RDY/BSY输出信号监测,编程期间,ALE变为高电平“H”后,P3.4(RDY/BSY)端电平被拉低,表示正在编程状态(忙状态)。
编程完成后,P3.4变为高电平表示准备就绪状态。
·芯片擦除:
利用控制信号的正确组合并保持ALE/PROG引脚10mS的低电平脉冲宽度即可将PEROM阵列(4k字节)和三个加密位整片擦除,代码阵列在片擦除操作中将任何非空单元写入“1”,这步骤需再编程之前进行。
3.3传感器的选型及其性能特征
用于测温的传感器种类繁多,但大多是模拟传感器,在以往组建温度采集系统时,由于经传感器输出的是模拟信号,系统必须接入A/D转换器,由此增加了构件系统的复杂性且成本较高。
温度的检测方法,一般采用热电偶