基于单片机的温度控制系统毕业设计.docx
《基于单片机的温度控制系统毕业设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的温度控制系统毕业设计.docx(22页珍藏版)》请在冰豆网上搜索。
![基于单片机的温度控制系统毕业设计.docx](https://file1.bdocx.com/fileroot1/2023-1/10/c88d9859-a4ba-42ef-8e18-668053297adb/c88d9859-a4ba-42ef-8e18-668053297adb1.gif)
基于单片机的温度控制系统毕业设计
安徽商贸学院
毕业设计说明书
作者:
王荣兴学号:
07011573
学院:
安徽商贸学院
专业:
应用电子技术
题目:
基于单片机的温度调节系统设计和仿真
指导者:
王正勤硕士
评阅者:
2009年9月10日
毕业设计中文摘要
基于单片机的温度调节系统设计和仿真
关键词:
单片机温度调节DS18B20ProteusC语言8255A
毕业设计外文摘要
1绪论
1.1课题背景
近年来,在我国以信息化带动的工业化正在蓬勃发展。
工业生产中的电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。
其中的温度量已成为工业对象控制中一种重要的参数,对它的测量与控制有十分重要的意义。
随着现代工农业技术的发展及人们对生活环境要求的提高,人们也迫切需要检测与控制温度。
特别是在冶金、化工、机械、电气等各类工业中使用的各种加热炉、热处理炉、反应炉。
所以对各种锅炉的即时温度的检测和控制的技术进行研究是非常有必要的。
采用MCS-51单片机为核心的温度调节系统来对温度进行控制,广泛应用于社会生活的各个领域,是用途很广的一类工业控制系统。
这类系统不仅具有控制方便、组态简单、灵活性大、成本降低,质量有保证和提高系统的可靠性等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量和数量。
因此,单片机对温度的控制问题是一个工业生产中经常会遇到的问题。
1.2控制理论的发展
随着时代的进步,控制技术也在不断地发展。
尤其是计算机的更新换代,更加推动了控制理论不断地向前发展。
控制理论的发展一般可分为三个阶段:
第一阶段时间为20世纪40-60年代,称为“古典控制理论”时期。
古典控制理论主要是解决单输入单输出问题。
主要采用传递函数,频率特性,根轨迹为基础的频域分析法。
所研究的系统多半是线性定常系统,对非线性系统,分析时采用的相平面法一般也不超过两个变量,古典控制理论能够较好的解决生产过程中的单输入单输出问题。
这一时期的主要代表人物有伯德(H.W.Bode)和伊文思(W.R.Evans)。
伯德于1945年提出了简便而实用的伯德图法。
1948年伊文思提出了直观而又形象的根轨迹法。
第二阶段时间为本世纪60-70年代,称为“现代控制理论”时期。
这个时期,由于计算机的飞速发展,推动了空间技术的发展,古典控制理论中的高阶常微分方程可转化为一阶微分方程组,用以描述系统的动态过程,即所谓状态空间法。
这种方法可以解决多输入多输出问题。
系统可以是线性的,定常的,也可以是非线性的,时变的。
这一时期的主要代表有庞特里亚金,贝尔曼及卡尔曼等人。
庞特里亚金于1961年提出了极大值原理;贝尔曼在1957年提出了动态规划;1959年,卡尔曼和布西发表了关于线性滤波器和估计器的论文,即著名的卡尔曼滤波。
第三阶段时间为本世纪70年代末至今,70年代末,控制理论向着“大系统理论”和“智能控制”方向发展。
前者是控制理论在广度上的开拓,后者是控制理论在深度上的挖掘。
“大系统理论”使用控制和信息的观点,研究各种大系统的结构方案,总体设计中的分解方法和协调等问题的技术基础理论。
而“智能控制”是研究与模拟人类智能活动及其控制与信息传递过程的规律,研制其具有某些仿人智能的工程控制与信息处理系统。
回顾控制理论的发展历程可以看出,它的发展过程反映了人类有机械化时代进入电气化时代,并走向自动化、信息化、智能自动化时代。
1.3温度调节系统的简要介绍
温度调节系统是以温度为主要的控制变量。
系统主要时通过温度传感器对工业现场的温度变化引起的其他物理量变化进行测量,然后通过电路转化成数字量转送到单片机中。
在单片机对温度数据进行处理之后,根据用户的设定对加热电路或制冷电路进行控制,从而达到控制调节温度的目的。
大部分温度调节系统采用典型的负反馈式温度控制系统,系统基本框图如图1-1所示。
其中数字控制器的功能由微型机算机实现。
炉温
给定值
图1-1温度控制系统基本流程图
1.4温度调节系统在国内外的发展概况
1.4.1国外温度调节系统
自70年代以来,由于工业过程控制的需要,特别是在微电子技术和计算机技术的迅猛发展以及自动控制理论和设计方法发展的推动下,国外温度调节系统发展迅速,并在智能化、自适应、参数自整定等方面取得成果,在这方面,以日本、美国、德国、瑞典等国技术领先,都生产出了一批商品化的、性能优异的温度控制器及仪器仪表,并在各行业广泛应用。
它们主要具有如下的特点:
1)适应于大惯性、大滞后等复杂温度控制系统的控制。
2)能够适应于受控系统数学模型难以建立的温度控制系统的控制。
3)能够适应于受控系统过程复杂、参数时变的温度控制系统的控制。
4)这些温度控制系统普遍采用自适应控制、自校正控制、模糊控制、人工智能等理论及计算机技术,运用先进的算法,适应的范围广泛。
5)普遍温控器具有参数自整定功能。
借助计算机软件技术,温控器具有对控制对象控制参数及特性进行自动整定的功能。
有的还具有自学习功能,它能够根据历史经验及控制对象的变化情况,自动调整相关控制参数,以保证控制效果的最优化。
6)温度控制系统具有控制精度高、抗干扰力强、鲁棒性好的特点。
目前,国外温度控制系统及仪表正朝着高精度、智能化、小型化等方面快速发展。
1.4.2国内温度调节系统
我国对模糊控制理论的研究与应用起步比较晚,然而发展很快,在各个领域取得了许多有影响的成果。
诸如在模糊控制、模糊辨识、模糊聚类分析、模糊图像处理、模糊集合论、模糊模式识别等领域取得了不少有实际影响的结果。
1988年哈尔滨工业大学在酒精厂10T/H工业燃料煤链条路上实现鼓风量-蒸汽压力Fuzzy-PI双模控制。
1990年模糊控制应用于电场过热汽温回路的自动控制。
1994年模糊控制成功应用于镇海发电厂200MW机组的主蒸汽压力及温度自控系统。
目前,我国在温度等控制仪表业与国外的差距主要表现在如下几个方面:
1)行业内企业规模小,且较为分散,造成技术力量不集中,导致研发能力不强,制约技术发展。
2)商品化产品以PID控制器为主,智能化仪表少,这方面同国外差距较大。
目前,国内企业复杂的及精度要求高的温度控制系统大多采用进口温度控制仪表。
3)仪表控制用关键技术、相关算法及控制软件方面的研究较国外滞后。
例如:
在仪表控制参数的自整定方面,国外已有较多的成熟产品,但由于国外技术保密及我国开发工作的滞后,还没有开发出性能可靠的自整定软件。
控制参数大多靠人工经验及现场调试来确定。
这些差距,是我们必须努力克服的。
随着我国经济的发展及加入WTO,我国政府及企业对此都非常重视,对相关企业资源进行了重组,相继建立了一些国家、企业的研发中心,并通过合资、技术合作等方式,组建了一批合资、合作及独资企业,使我国温度等仪表工业得到迅速的发展。
1.5研究内容
本文对基于MCS-51温度调节系统中的硬件部分的五大模块逐一进行阐述;对其软件部分实行模块化设计。
掌握系统的工作原理及原理图,并会用Proteus软件绘制出系统原理图;利用C语言对软件部分中的主程序和各个子程序进行设计。
在开始设计硬件电路时,应该根据实际应用环境及应用需求来确定系统的整体设计目标及相应功能,并选择实现目标的最佳设计方案。
在选择硬件时,围绕着低成本,低功耗,高稳定性的目标,了解单片机MCS-51的运行原理、数字温度传感器
2系统的硬件设计
2.1系统设计的整体目标及实现方案
设计工业现场的温度控制系统,采用DS18B20数字温度传感器,具有LED显示即时温度,键盘设定预警温度,自动调节报警,可实现智能调控温度,持续运行,使系统有良好的可靠性、扩展性、人性化设计和较低的生产成本性能。
本系统全面考虑系统的总体目标,决定采用了单片机80C51,可编程并行接口芯片8255A,测温传感器使用DS18B20,用4位共阳极LED数码管,键盘设备,蜂鸣器等其他电路,实现系统的温度调节预警功能。
总体硬件结构框图如图2-1所示。
2.2系统工作原理及其原理图
2.2.1所设计系统简要介绍及工作原理
在本文中所设计出来的温度调节系统是基于MCS-51单片机的。
它要求具有对环境温度进行实时测量,用LED显示器显示测量的实时温度,读数清晰、直观。
可设定最高限和最低限的报警温度值。
系统具直接输入上下限温度的功能,且当外界温度高于设定最高温度或低于设定最低温度时,系统会点亮报警指示灯和发出警报声。
本文主要是对其硬件系统和软件系统分别进行设计。
报警电路
图2-1系统总体硬件结构框图
系统是以温度调节为背景,以单片机代替常规模拟调节器,具有数字PID控制功能的通用调节系统。
温度检测元件的选择要考虑温度控制范围和精度要求。
本系统选用DS18B20数字传感器,对于0至100摄氏度的范围进行测量。
由于DS18B20具有直接将温度值转化为数字量,减少了A/D转化环节,增加了系统的精度。
由DS18B20读出的温度再经过与上下限温度对比、PID运算调节之后,形成一系列的脉冲波形。
脉冲波形直接输送到加热(输出)模块,最终对温度进行调节。
由于本系统既要显示、报警、键盘输入,又要进行控制,故系统需选用扩展芯片。
本系统选用8255A来扩展单片机的I/O接口,使系统能够驱动LED及键盘电路,完成设定功能。
其中,硬件系统主要包括五大模块:
各个指示灯、加热(输出)模块、接口芯片的扩展、温度的检测与控制和键盘与显示模块。
软件系统包括管理程序和控制程序两部分。
管理程序是对LED显示刷新、控制指示灯、处理键盘的扫描和响应、执行中断服务操作等。
控制程序是对被控过程进行采样、数据处理,根据控制算式进行计算和输出等。
为了便于编写、调试、修改和增删,系统程序的编制采用了模块化的结构,即整个控制软件由许多独立的小模块组成,它们之间通过软件接口连接,原则是模块内数据关系紧凑,模块间数据关系松散,按功能形成模块化结构。
主控程序主要包括条件判断和子程序调用等关键部分。
上述这些将分别在下面的第二章和第三章中作出详细阐述。
2.2.2所设计系统的原理图
所设计系统的原理图共分为六大模块:
主模块、各指示灯、加热(输出)模块、温度的测量模块、键盘模块和报警模块。
如下图2-2所示。
图2-2系统硬件原理图
2.3系统中所用到各芯片的简要介绍
2.3.1单片机80C51
系统采用MCS-51系列的单片机80C51,这是Intel公司推出的8位计算机。
它有4个双向口,其中,P0与P2是地址/数据专用口,P3为双功能口,包括中断申请信号、读/写信号及通信信号等。
这样,实际上只留下P1口可供用户使用。
因此,必须再扩充I/O口用于输入输出以及键盘和显示扫描。
从应用角度来看,它有以下优点:
1)集成度高:
单芯片的80C51内部含有128B的RAM,4个8位并行口,一个全双工的串行口,两个16位定时/计数器,片内的时钟震荡器、两种优先级的五个中断源的中断机构、64KB的程序存储器的地址空间和64KB的数据存储器的地址空间。
并且,由于集成度高、焊点少、可靠性也大大提高。
2)速度快、处理能力强:
80C51指令系统含有大量的算术运算、布尔运算和逻辑判断、转移指令,并且有丰富的位操作功能。
在采用12MHZ晶振时,它执行一条单字节的乘法指令仅需4微秒,这个速度足以满足工业过程控制系统的要求。
3)可扩充性好,寻址范围大:
80C51还具有特殊的多机通信功能,很适合于用作分级分布式控制系统中的直接控制级。
4)80C51采用了CHMOS半导体工艺生产,除了能保持HMOS高速度和高密度的特点外,还具有CMOS低功耗的特点。
[2]
5)单片机80C51还具有低成本、体积小、高抗干扰性等优点
80C51芯片的各引脚及其功能如下:
电源引脚VSS和VCC—VSS为电压接地端,VCC为+5V电源端;XTAL1和XTAL2是外接晶体引线端,当使用芯片内部时钟时,此二引线用于外接石英晶体和电容;当使用外部时钟时,用于接外部时钟脉冲信号;ALE/PROG引脚是低8位地址锁存控制信号;PSEN是片外程序存储器选通信号,低电平有效;EA/VPP引脚是访问外部程序存储器的控制信号,低电平有效;RST/VPD引脚是复位信号,高电平有效;P0口是一个漏极开路的8位双向I/O口,每位能驱动8个LS型TTL负载;P1口是一个带内部上拉电阻的8位准双向I/O口,每位能驱动4个LS型TTL负载;P2口也是一个带内部上拉电阻的8位准双向通用I/O口,每位也能驱动4个LS型TTL负载;P3口为双功能口,P3.0(RXD)引脚为串行数据接收信号;P3.1(TXD)引脚为串行数据发送信号;P3.2(INT0)引脚为外部中断0申请信号;P3.3(INT1)引脚为外部中断1申请信号;P3.4(T0)引脚为定时器/计数器0计数输入信号;P3.5(T1)引脚为定时器/计数器1计数输入信号;P3.6(WR)引脚为外部RAM写选通信号;P3.7(RD)引脚为外部RAM读选通信号。
2.3.2温度传感器DS18B20
DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式[13]。
DS18B20的性能特点如下:
●独特的单线接口仅需要一个端口引脚进行通信;
●多个DS18B20可以并联在惟一的三线上,实现多点组网功能;
●无须外部器件;
●可通过数据线供电,电压范围为3.0~5.5V;
●零待机功耗;
●温度以9或12位数字;
●用户可定义报警设置;
●报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;
●负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;
DS18B20采用3脚PR-35封装或8脚SOIC封装,其内部结构框图如图2-3所示。
Vdd
I/O
图2-3DS18B20内部结构
64位ROM的结构开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前面56位的CRC检验码,这也是多个DS18B20可以采用一线进行通信的原因。
温度报警触发器TH和TL,可通过软件写入户报警上下限。
DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的EERAM。
高速暂存RAM的结构为8字节的存储器,结构如图2-4所示。
温度LSB
温度MSB
TH用户字节1
TL用户字节2
配置寄存器
保留
保留
保留
CRC
图2-4DS18B20字节定义
图2-4中,头2个字节包含测得的温度信息,第3和第4字节TH和TL的拷贝,是易失的,每次上电复位时被刷新。
第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。
DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值。
该字节各位的定义如图2-4所示。
低5位一直为1,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式,DS18B20出厂时该位被设置为0,用户要去改动,R1和R0决定温度转换的精度位数,来设置分辨率。
DS18B20完成温度转换后,就把测得的温度值与RAM中的TH、TL字节内容作比较。
若T>TH或T因此,可用多只DS18B20同时测量温度并进行报警搜索。
DS18B20的测温原理是这样的,器件中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入。
器件中还有一个计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲进行计数进而完成温度测量。
计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55oC所对应的一个基数分别置入减法计数器1、温度寄存器中,计数器1和温度寄存器被预置在-55oC所对应的一个基数值。
减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时,温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器计数到0时,停止温度寄存器的累加,此时温度寄存器中的数值就是所测温度值。
其输出用于修正减法计数器的预置值,只要计数器门仍未关闭就重复上述过程,直到温度寄存器值大致被测温度值。
另外,由于DS18B20单线通信功能是分时完成的,它有严格的时隙概念,因此读写时序很重要。
系统对DS18B20的各种操作按协议进行。
操作协议为:
初使化DS18B20(发复位脉冲)→发ROM功能命令→发存储器操作命令→处理数据。
2.3.3I/O扩展芯片8255A
8255A是可编程I/O接口电路,它有8条数据线和24条I/O扩展线,并分为A、B、C三个端口,每个口8位,且各端口的功能可由程序设定为输入、输出、位控或双向等4种工作方式,并且可不附加逻辑电路而直接与CPU接口。
这里选用A口作为LED显示器的字型口,决定LED显示的数字。
B口作为LED显示器的字位口,决定LED显示位。
同时B4~B7口为键盘电路的列数接口。
C口仅用C0~C3来连接键盘电路的行数接口。
8255A与RAM统一编址,A0与A1接在74LS373的Q0与Q1上,片选信号为Q2,执行上电复位。
它的地址安排为:
A口--0000H;B口--0001H;C口--0002H;控制字--0003H。
在本系统中8255A的A、B、C都设置在方式0工作,其中A、B口为输出口,C口为输入口。
(1)
(2)每个通道都提供状态查询功能,芯片又一定得中断管理功能,既可以使用同步转送,也便于使用查询或中断方式。
2.3.4锁存器74LS373
74LS373为透明的带有三态门的8D锁存器。
当三态门的使能信号线OE为低电平时,三态门处于导通状态,允许1Q~8Q输出到OUT1~8;当OE端为高电平时,输出三态门断开,输出线OUT1~8处于浮空状态。
G成为数据打入线。
当74LS373用作地址锁存器时,首先应使三态门的使能信号OE为低电平。
这时,当G输入端为高电平时,锁存器输出(1Q~8Q)状态和输入端(1D~8D)状态相同;当G端从高电平返回到低电平(下降沿)时,输入端(1D~8D)的数据锁入(1Q~8Q)到8位锁存器中。
本系统用74LS373来所存LED所要传输到8255A的数据,使LED能够正确,清晰的显示数据。
图2-5为74LS373的引脚图。
20
19
18
17
16
15
14
13
12
11
图2-5为74LS373的引脚图
2.4系统各个模块硬件设计
2.4.1温度测量电路
本系统采用三个DS18B20并联,仅用了80C51的一个引脚就能够读取三个DS18B20上的温度,这个是DS18B20的一大优点。
三个温度传感器可以分布在不同的地方,测量不同区域的温度值。
这能够增加测量的准确度,提高系统的精准性。
DS18B20可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。
另一种是寄生电源供电方式,如图2-6所示单片机端口接单线总线,为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个电阻来完成对总线的上拉。
当DS18B20处于写存储器操作和温度A/D转换操作时,总线上必须有强的上拉,上拉开启时间最大为10us。
采用寄生电源供电方式时VDD端接地。
由于单线制只有一根线,因此发送接口必须是三态的。
+5V
图2-6DS18B20与单片机的接口电路
2.4.2温度显示和键盘输入电路
显示和键盘电路是在80C51拓展的可编程并行接口芯片8255A的基础上面连接出来的。
8255A是一个可编程的并行接口芯片,能够很好的配合80C51工作。
为了减少硬件的开销,提高系统的可靠性和减低成本,采用动态扫描显示。
A口和所有的LED八段引线相连,各LED的控制端G和8255A的B口相连,所以A口为字形口,B口为字位口,80C51可以通过B口来控制LED是否点亮,通过A口显示字符。
显示电路主要用来显示即时温度和设定的上下限温度。
最低显示分辨率达到0.1oC,能够满足系统的要求。
图2-7为系统显示电路图。
键盘输入电路,采用4X4的按钮矩阵,按键内容分别的是0~9,+、-键和其他自定义功能键。
这样能够任意设定上下限温度值,能够满足不同场合的应用。
在判断键盘上有无按键输入时,可以使8255A的B4~B7口全为“0”,读C0~C3口的状态。
若C0~C3中的全为“1”,则键盘上没有键闭合;若C0~C3上不全为“1”,则有按键闭合。
另外在80C51的P2.1引脚上面还连接一个按键,这是用来控制LED显示内容。
当P2.1为高电平时,显示DS18B20的温度,低电平时,则显示按键有效,可以直接输入设定的温度值。
在判断按键输入的同时,应该设法去除按键的机械抖动的干扰。
图2-8为键盘电路图。
图2-7系统显示电路图
图2-8键盘电路图
2.4.3温度加热模块
温度加热模块,也就是系统的输出电路,这里用的是调功原理。
即通过调节电功率来控制被加热物体的温度。
通过控制开关每秒闭合的次数来改变功率。
本系统是通过PWM技术来实现调功的。
脉宽调制(PulseWidthModulation)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。
PWM是通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。
PWM信号仍然是数字的,因为在给定的任何时刻,满幅值的直流供电要么完全有(ON),要么完全无(OFF)。
电压或电流源是以一种通(ON)或断(OFF)的重复脉冲序列被加到模拟负载上去的。
通的时候即是直流供电被加到负载上的时候,断的时候即是供电被断开的时候。
PWM的一个优点是从处理器到被控系统信号都是数字形式的,无需进行数模转换。
让信号保持为数字形式可将噪声影响降到最小。
噪声只有在强到足以将逻辑1改变为逻辑0或将逻辑0改变为逻辑1时,也才能对数字信号产生影响。
另外一个优点是对噪声抵抗能力的增强,而且这也是在某些时候将PWM用于通信的主要原因。
从模拟信号转向PWM可以极大地延长通信距离。
在接收端,通过适当的RC或LC网络可以滤除调制高频方波并将信号还原为模拟形式。
在本系统的加热电路中,固态继电器算是一个开关。
当80C51的P1.6引脚给出高电平的时候,发光二极管没有导通,固态继电器断开,加热模块处于停止状态。
当P1.6引脚给出的是低电平时,发光二极管导通,导致固态继电器接通,使加热模块进行加热。
固态继电器接通就等于加热电热丝接通了,所以控制固态继电器在一个控制周期内通断的次数,就等于可控制电炉的输出功率,从而达到控制温度的目的。
图2-9为加热模块的原理图。
图中用电机代表加热电阻丝进行仿真。
2.4.4报警模块
报警电路由一个三极管和蜂鸣器组成。
当温度值在设定的范围时,系统80C51的P1.5引脚始终保持高电平;当系统温度超过了设定的温度限度的时候,系统80C51的P1.5引脚会发出低电平信号,使三极管接通,蜂鸣器被接通后会发出警报提醒操作人员。
这样可实现报警功能并防止出现事故。
图2-10为报警电路的电路图。
2.4.5指示灯模块
系统中共有三个指示灯,分别与80C51的P2.0,P2.1,P2.2相连。
当接在P2.0的LED导通时,说明系统正处于加热状态。
LED不导通时,则处于冷却状