水温控制系统.docx
《水温控制系统.docx》由会员分享,可在线阅读,更多相关《水温控制系统.docx(32页珍藏版)》请在冰豆网上搜索。
水温控制系统
目录
摘要:
1
第一章绪论3
第二章设计选用元器件介绍5
2.1MSC-51芯片简介6
2.274LS245芯片10
2.3ADC0809芯片10
第三章系统硬件设计14
3.1总体方案论证及设计要求14
3.2水温控制系统框图15
3.3水温控制电路原理图16
3.4水温控制PCB板17
第四章系统软件设计18
4.1定时器/计数器系统设计18
4.2程序流程图19
4.3程序20
总结28
致谢29
参考资料30
水温控制系统
摘要:
本文介绍了利用单片机进行水温测量和控制的智能化的方法。
对MCS-51单片机及其扩展系统的原理及结构进行了详尽论述。
测温系统温度传感器LM35,信号放大部分采用两级运放电路。
两部分电路制作在一块PCB板上,并封装在一屏蔽金属盒内,经调试性能很好。
本系统借助于传感器、ADC0809转换器、扩展的并行接口以及执行机构进行的。
在闭环过程控制中,过程的实时参数由传感器和A/D转换器实时采集,并由微型计算机自动记录、统计制表,然后再通过D/A转换器或并行接口输出控制信号,控制执行机构动作,进行调节和控制。
另外本系统还扩展了另外一个温度传感器及相关电路,利用它进行室温采集,并通过74LS245并行口扩展LED显示,这样能更清楚的看到当周围温度发生变化时水温的变化。
还详尽讨论了这部分电路与8051单片机系统的硬件接口问题。
关键词:
8051单片机,LM35温度传感器,ADC0809转换器
Controlsystemofwatertemperature
ABSTRACT:
Theintroductiontothistextutilizesthesinglecomputertocarryontemperaturemeasurementandcontrolintelligentmethod.AndexpandedsystematicprincipleandstructureanddescribetoMCS-51one-chipcomputerexhaustivly.ExaminingwarmsystemtemperaturesensorLM35,thesignalamplifiesandadoptsandtransportsandputscircuitandtwostepsesofvoltage-controlledLPFthreetimesaccuratelypartly.TwopartsofcircuitaremadeonaPCBboard,andsealtheforminashieldingmetalbox,itisverygoodthroughdebuggingperformance.Systemthiswiththeaidofsensor,A/D,D/Aconverter,expandthattheinterfaceandexecutivebodygoon.Inthecourseoftheringclosingtypeiscontrolled,real-timeparameterofcoursegatherinrealtimebysensorandA/Dconverter,andbytheautomaticrecordofthemicrocomputer,countthetabulation,then or theinterfacerunssidebysidetoexportthecontrolsignalthroughD/Aconverter,controlmovementsofexecutivebody,regulateandcontrol.Thissystemhasalsoexpandedanothertemperaturesensorandrelevantcircuitinaddition,utilizeittocarryontheroomtemperaturetogather,andthemouthrunssidebysidetoexpandLEDandshow,canseethechangeofthetemperaturewhenchangeinenvironmenttemperatureclearerinthiswaythrough74LS245.Havealsodiscussedthehardwareinterfacequestionsofthispartofcircuitand8051one-chipcomputersystemsexhaustivly.ThisliterarygracecontrolsalgorithmsasthetemperaturecontrolalgorithmwithPID,adoptthesolidstaterelayandformandinchargeoftherelaxationonetoshakecircuitandcarryoutanddrivetheorganizationasitonly,havereachedthehigherprecisionofcontrollingthetemperature.
Keyword:
stionalIntegralDifferentialarithmetic;Solidelectronicpeeker;8051singlechipcomputer;TemperaturedetectingandcontrollingLM35;
第一章绪论
随着新技术的不断开发与应用,近年来单片机发展十分迅速,一个以微机应用为主的新技术革命浪潮正在蓬勃兴起,单片机的应用已经渗透到电力、冶金、化工、建材、机械、食品、石油等各个行业。
传统的温度采集方法不仅费时费力,而且精度差,单片机的出现使得温度的采集和数据处理问题能够得到很好。
单片机可用于水温控制系统的数据处理,这包括对温度测量结果经A/D转换后的处理、控制执行器的输出、将被测温度送到显示模块显示、接收从人机通道输入的信号等.单片机在温度测量与控制方面,控制简单方便,测量范围广,精度较高。
水在我们的生活中是必不可少的,因而水温不论是对于我们的生活还是工业生产都有着重要的意义。
在早期对水温的要求主要是在化工、冶炼生产上,比如在锅炉的水温控制就对某些特定的工业有不可替代的作用,但是那时对水温的控制主要是通过人工来完成,这不仅在控制精度上有很大的误差,而且在某些场合下人工是很难完成的。
现在,随着新技术的不断开发与应用,用单片机和相关的电子器件构成的水温控制系统在控制精度以及各项参数上有空前的提高,控制的领域也有很大的扩展,目前以单片机为核心的水温控制系统得到了广泛应用。
正因如此,对水温的控制到处可见,比如说公共浴室里的水温,电热水器,自动饮水机等都需要水温控制。
就连北京奥运的游泳场管,也要对水的温度进行严格的控制,才能确保达到最好的效果,以保证运动员的发挥。
在生产中,一些现代化生产车间里,尤其是在化工厂里,某些产品加工需要在一定的水温下才能进行。
随着电子技术的不断发展,水温控制系统设计的方法越来越多也越来越完善。
温度控制是无论是在工业生产过程中,还是在日常生活中都起着非常重要的作用,过低的温度或过高的温度都会使水资源失去应有的作用,从而造成水资源的巨大浪费。
特别是在当前全球水资源极度缺乏的情况下,我们更应该掌握好对水温的控制,把身边的水资源好好地利用起来。
在现代冶金、石油、化工及电力生产过程中,温度是极为重要而又普遍的热工参数之一。
例如:
在冶金工业、化工生产、电力工程、造纸行业、机械制造和食品加工等诸多领域中,人们都需要对各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测和控制。
采用MCS-51单片机来对温度进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量和数量。
在人类的生活环境中,温度扮演着极其重要的角色。
温度是工业生产中常见的工艺参数之一,任何物理变化和化学反应过程都与温度密切相关,因此温度控制是生产自动化的重要任务。
对于不同生产情况和工艺要求下的温度控制,所采用的加热方式,燃料,控制方案也有所不同。
无论你生活在哪里,从事什么工作,无时无刻不在与温度打着交道。
自18世纪工业革命以来,工业发展对是否能掌握温度有着绝对的联系。
在冶金、钢铁、石化、水泥、玻璃、医药等等行业,可以说几乎80%的工业部门都不得不考虑着温度的因素。
在环境恶劣或温度较高等场合下,为了保证生产过程正常安全地进行,提高产品的质量和数量,以及减轻工人的劳动强度、节约能源,要求对加热炉炉温进行测、显示、控制,使之达到工艺标准,以单片机为核心设计的炉温控制系统,可以同时采集多个数据,并将数据通过通讯口送至上位机进行显示和控制。
那么无论是哪种控制,我们都希望水温控制系统能够有很高的精确度(起码是在满足我们要求的范围内),帮助我们实现我们想要的控制,解决身边的问题。
第二章设计选用元器件介绍
单片机微型计算机是把中央处理器CPU、一定容量的随机存取存储器RAM、只读存储器ROM、定时器/计时器以及I/O接口电路等部件集中在一块芯片上的微型计算机。
单片机微型计算机简称单片机,特别适用于工业控制单元、过程控制、智能仪表、机电一体化和家用电器等重要领域,故又称为微控制器(MCU)。
通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:
中央处理器、存储器和I/O接口电路等。
因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。
单片机经过1、2、3、3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引角的多功能化,以及低电压底功耗。
2.1MSC-51芯片简介
MCS-51单片机内部结构
8051是MCS-51系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。
8051单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明:
a中央处理器:
中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。
b数据存储器(RAM)
8051内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。
图1
c程序存储器(ROM):
8051共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。
d定时/计数器(ROM):
8051有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。
e并行输入输出(I/O)口:
8051共有4组8位I/O口(P0、P1、P2或P3),用于对外部数据的传输。
f全双工串行口:
8051内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。
g中断系统:
8051具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。
h时钟电路:
8051内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但8051单片机需外置振荡电容。
单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的结构,即普林斯顿(Princeton)结构。
INTEL的MCS-51系列单片机采用的是哈佛结构的形式,而后续产品16位的MCS-96系列单片机则采用普林斯顿结构。
下图是MCS-51系列单片机的内部结构示意图2。
图2
MCS-51的引脚说明:
MCS-51系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。
现在我们对这些引脚的功能加以说明:
MCS-51的引脚说明:
MCS-51系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。
现在我们对这些引脚的功能加以说明:
如图3
图3
Pin9:
RESET/Vpd复位信号复用脚,当8051通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位。
初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,堆栈指针写入07H,其它专用寄存器被清“0”。
RESET由高电平下降为低电平后,系统即从0000H地址开始执行程序。
然而,初始复位不改变RAM(包括工作寄存器R0-R7)的状态,8051的初始态。
8051的复位方式可以是自动复位,也可以是手动复位,见下图4。
此外,RESET/Vpd还是一复用脚,Vcc掉电其间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。
Pin30:
ALE/
当访问外部程序器时,ALE(地址锁存)的输出用于锁存地址的低位字节。
而访问内部程序存储器时,ALE端将有一个1/6时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出。
更有一个特点,当访问外部程序存储器,ALE会跳过一个脉冲。
如果单片机是EPROM,在编程其间,
将用于输入编程脉冲。
·Pin29:
/PESN当访问外部程序存储器时,此脚输出负脉冲选通信号,PC的16位地址数据将出现在P0和P2口上,外部程序存储器则把指令数据放到P0口上,由CPU读入并执行。
·Pin31:
EA/Vpp程序存储器的内外部选通线,8051和8751单片机,内置有4kB的程序存储器,当EA为高电平并且程序地址小于4kB时,读取内部程序存储器指令数据,而超过4kB地址则读取外部指令数据。
如EA为低电平,则不管地址大小,一律读取外部程序存储器指令。
显然,对内部无程序存储器的8031,EA端必须接地。
在编程时,EA/Vpp脚还需加上21V的编程电压。
2.274LS245芯片
*74LS245是我们常用的芯片,用来驱动led或者其他的设备,用法很简单如上图,这里简单的给出一些资料,他是8路同相三态双向总线收发器,可双向传输数据。
*74LS245还具有双向三态功能,既可以输出,也可以输入数据。
*当8051单片机的P0口总线负载达到或超过P0最大负载能力时,必须接入74LS245等总线驱动器。
*当片选端/CE低电平有效时,DIR=“0”,信号由B向A传输;(接收)
*DIR=“1”,信号由A向B传输;(发送)当/CE为高电平时,A、B均为高阻态。
2.3ADC0809芯片
A/D转换器芯片ADC0809简介8路模拟信号的分时采集,片内有8路模拟选通开关,以及相应的通道抵制锁存用译码电路,其转换时间为100μs左右。
图9.8
1.ADC0809的内部结构
ADC0809的内部逻辑结构图如图9-7所示。
图9.7《ADC0809内部逻辑结构》
图中多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用一个A/D转换器进行转换,这是一种经济的多路数据采集方法。
地址锁存与译码电路完成对A、B、C3个地址位进行锁存和译码,其译码输出用于通道选择,其转换结果通过三态输出锁存器存放、输出,因此可以直接与系统数据总线相连,表9-1为通道选择表。
表9-1通道选择表
2.信号引脚
ADC0809芯片为28引脚为双列直插式封装,其引脚排列见图9.8。
对ADC0809主要信号引脚的功能说明如下:
IN7~IN0——模拟量输入通道
ALE——地址锁存允许信号。
对应ALE上跳沿,A、B、C地址状态送入地址锁存器中。
START——转换启动信号。
START上升沿时,复位ADC0809;START下降沿时启动芯片,开始进行A/D转换;在A/D转换期间,START应保持低电平。
本信号有时简写为ST.
A、B、C——地址线。
通道端口选择线,A为低地址,C为高地址,引脚图中为ADDA,ADDB和ADDC。
其地址状态与通道对应关系见表9-1。
CLK——时钟信号。
ADC0809的内部没有时钟电路,所需时钟信号由外界提供,因此有时钟信号引脚。
通常使用频率为500KHz的时钟信号
EOC——转换结束信号。
EOC=0,正在进行转换;EOC=1,转换结束。
使用中该状态信号即可作为查询的状态标志,又可作为中断请求信号使用。
D7~D0——数据输出线。
为三态缓冲输出形式,可以和单片机的数据线直接相连。
D0为最低位,D7为最高
OE——输出允许信号。
用于控制三态输出锁存器向单片机输出转换得到的数据。
OE=0,输出数据线呈高阻;OE=1,输出转换得到的数据。
Vcc——+5V电源。
Vref——参考电源参考电压用来与输入的模拟信号进行比较,作为逐次逼近的基准。
其典型值为+5V(Vref(+)=+5V,Vref(-)=-5V).
第三章系统硬件设计
3.1总体方案论证及设计要求
3.1.1总体方案论证
根据题目的要求,我们提出了以下的两种方案:
方案1:
此方案是采用传统的二位模拟控制方法,选用模拟电路,用电位器设定给定值,采用上下限比较电路将反馈的温度值与给定的温度值比较后,决定加热或者不加热。
由于采用模拟控制方式,系统受环境的影响大,不能实现复杂的控制算法使控制精度做得较高,而且不能用数码显示和键盘设定。
方案2:
采用单片机AT89C51为核心。
采用了温度传感器AD590采集温度变化信号,A/D采样芯片ADC0809将其转换成数字信号并通过单片机处理后去控制温度,使其达到稳定。
使用单片机具有编程灵活,控制简单的优点,使系统能简单的实现温度的控制及显示,并且通过软件编程能实现各种控制算法使系统还具有控制精度高的特点。
比较上述两种方案,方案2明显的改善了方案1的不足及缺点,并具有控制简单、控制温度精度高的特点,因此本设计电路采用方案2。
3.1.2设计要求
设计制作一个水温控制系统,控制对象为1升净水,容器为搪瓷器皿,水温可以在范围内由人工设定如在40摄氏度至90摄氏度范围内设定控制水温静态控制精度为0.2摄氏度。
,并能在环境温度降低时,实现自动调整,并具有较好的快速性与较小的超调,以保持设定温度基本不变。
3.2水温控制系统框图
3.3水温控制电路原理图
3.4水温控制PCB板
第四章系统软件设计
4.1定时器/计数器系统设计
4.1.1定时器/计数器简介
定时器/计数器简称定时器,其作用主要包括产生各种时标间隔、记录外部事件的数量等,是微机中最常用、最基本的部件之一。
803l单片机有2个16位的定时器/计数器:
定时器0(T0)和定时器1(T1)。
T0由2个定时寄存器TH0和TL0构成,T1则由TH1和TL1构成,它们都分别映射在特殊功能寄存器中,从而可以通过对特殊功能寄存器中这些寄存器的读写来实现对这两个定时器的操作。
作定时器时,每一个机器周期定时寄存器自动加l,所以定时器也可看作是计量机器周期的计数器。
由于每个机器周期为12个时钟振荡周期,所以定时的分辨率是时钟振荡频率的1/12。
作计数器时,只要在单片机外部引脚T0(或T1)有从1到0电平的负跳变,计数器就自动加1。
计数的最高频率一般为振荡频率的l/24。
4.1.2计数器设计
计数器初值积算:
定时器工作时必须给计数器送计数器初值,这个值是送到TH和TL中的。
他是以加法记数的,并能从全1到全0时自动产生溢出中断请求。
因此,我们可以把计数器记满为零所需的计数值设定为C和计数初值设定为TC可得到如下计算通式:
TC=M-C
式中,M为计数器初值和计数器工作方式有关。
在方式0时M为213;在方式1时M的值为216;在方式2和3为28。
计算公式:
T=(M-TC)Tosc或TC=M-T/Tosc
Tosc是单片机时钟周期Tcont的12倍;TC为定时初值
如单片机的主脉冲频率为Tcont12MHZ ,经过12分频
方式0:
TMAX=213 *1微秒=8.192毫秒
方式1:
TMAX=216 *1微秒=65.536毫秒
方式2:
TMAX=28 *1微秒=0.256毫秒
定时器需定时50ms,T0采用方式1.
4.2程序流程图
4.3程序
ORG0000H
LJMPSTART
ORG0003H
LJMPINT0
ORG0030H
START:
MOVSP,#70H;置初值
CLRP1.7
MOVR0,#40H
SETBPSW.4
SETBPSW.3
SETBIT0
SETBEA
SETBEX0
MOVTMOD,#20H模式1
MOVTH1,#3CH
MOVTL1,#0B0H
SETBTR1
MOVSCON,#50H
SETBTI
CLR30H
CLR01H
SETBP1.7
CLRP1.6
CLRP1.5
MOVDPTR,#0BFFFH
MOVA,#00H
MOV2EH,#0
MOV2DH,#0
MOV2CH,#0
MOV2BH,#0
MOV2AH,#0
MOV29H,#0
MOV62H,#0
LOOP:
MOVDPTR,#0BFFFH
MOVX@DPTR,A;启动A/D转换
CLR00H
WAIT:
LCALLXUAN
CHAXUN:
JNBP1.3,LOOP1;调整
JNBP1.4,LOOP2
JNB00H,GG;判断是否再启动
LJMPLOOP
GG:
LJMPWAIT
;===========上限温度调整===========
LOOP1:
CLREX0
LCALLDELAY1
JNBP1.3,$
MOV62H,2EH
MOV61H,2DH
MOV60H,2CH
JBP1.2,M2
MOVA,2EH
ADDA,#01
DAA
MOV2EH,A
CJNEA,#10H,M1
MOV2EH,#00
M1:
JNBP1.2,$
M2:
JBP1.1,M4
MOVA,2DH
ADDA