基于单片机的水箱温自动控制系统设计张强.docx
- 文档编号:6250963
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:29
- 大小:549.32KB
基于单片机的水箱温自动控制系统设计张强.docx
《基于单片机的水箱温自动控制系统设计张强.docx》由会员分享,可在线阅读,更多相关《基于单片机的水箱温自动控制系统设计张强.docx(29页珍藏版)》请在冰豆网上搜索。
基于单片机的水箱温自动控制系统设计张强
毕业设计(论文)
机械与电气工程学院系电气自动化技术专业
毕业设计(论文)题目基于单片机的水箱温度自动控制系统设计
学生姓名张强
班级08电气自动化技术
学号2008010024
指导教师贾兴建
完成日期2011年6月14日
基于单片机的水箱温度自动控制系统设计
DesignforConstantTemperatureSystemOfIntelligent
BasedonMCUSystem
总计毕业设计(论文)31页
表格0个
插图25幅
摘要
随着时代的进步和发展,单片机技术已经普及到我们生活、工作、科研、各个领域,已经成为一种比较成熟的技术。
本文主要介绍了一个基于AT89C51单片机的恒温控制系统,详细描述了系统数学模型的建立过程和实现方法,画出了各个子程序的工作流程图。
该系统通过硬件系统和软件系统实现了对水箱温度进行实时监测、实时控制、实时显示及越限报警等功能。
DS18B20作为温度传感器与AT89C51结合实现温度检测系统,该系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,有广泛的应用前景。
关键词:
AT89C51DS18B20恒温水箱PID
Abstract
Withtheeraofprogressanddevelopment,microcontrollertechnologyhasspreadtoourlives,work,researchinvariousfields,hasbecomearelativelymaturetechnology.Inthispaper,basedonAT89C51microcontroller,atemperaturecontrolsystem,adetaileddescriptionoftheprocessofbuildingmathematicalmodelandmethod,drawaflowchartofthevariousroutinesofwork.Thesystemhardwareandsoftwaresystemstoachieveareal-timemonitoringofwatertemperature,real-timecontrol,real-timedisplayandalarmfunctionmorelimited.AT89C51DS18B20asatemperaturesensorcombinedwiththerealizationofthetemperaturedetectionsystem,thesystemissimple,anti-interferenceability,suitableforharshenvironmentsspottemperaturemeasurement,awiderangeofapplications.
Keywords:
AT89C51;PID;constanttemperaturewatertank;DS18B20
第一章绪论
1.1课题背景
温度是工业上常见的被控参数之一,特别是在冶金、化工、建材、食品加工、机械制造等领域,恒温控制系统被广泛应用于加热炉、热处理炉、反应炉等。
在一些温控系统电路中,广泛采用的是通过热电偶、热电阻或PN结测温电路经过相应的信号调理电路,转换成A/D转换器能接收的模拟量,再经过采样/保持电路进行A/D转换,最终送入单片机及其相应的外围电路,完成监控。
但是由于传统的信号调理电路实现复杂、易受干扰、不易控制且精度不高。
本文介绍单片机通过数字温度传感器检测外部温度对水箱进行恒温控制的设计,采用PID算法来控制PWM波形的产生,进而控制电炉的加热来实现恒温控制。
因此,本系统采用一种新型的可编程温度传感器(DS18B20),不需复杂的信号处理电路和A/D转换电路就能直接与单片机完成数据采集和处理,实现方便、精度高,可根据不同需要用于各种场合。
在日常生活中,也经常用到电烤箱、微波炉、电热水器、烘干箱等需要进行温度检测与控制的家用电器。
采用单片机实现温度控制不仅具有控制方便、简单、灵活等优点,而且可以大幅度地提高被控温度的技术指标,从而大大提高产品的质量,现以恒温水箱控制系统的设计进行介绍。
1.2国内外恒温控制技术发展现状及趋势
随着计算机控制技术的发展,恒温控制己在工业生产领域中得到了广泛应用,并取得了巨大的经济和社会效益。
在不同的领域内,由于控制环境、目标、成本等因素,需要针对具体情况来设计系统结构和功能,以取得最佳的控制效果。
其中,恒温环境的自动化控制技术在工业生产、商业运营中是一个重要研究课题。
1.2.1国外恒温控制的发展现状及趋势
自70年代以来,由于工业过程控制的需要,特别是在微电子技术和计算机技术的迅猛发展,以及自动控制理论和设计方法发展的推动下,国外恒温控制系统发展迅速,并在智能化,自适应参数的自整定等方面取得了很大的科技成果。
在这方面以日本、美国、德国、瑞典等国技术领先,并且都生产出了一批商品化的性能优异的温度控制器及仪器仪表。
目前,国外温度控制系统及仪表正朝着高精度智能化、小型化等方面快速发展。
虽然温度控制系统在国内各行各业的应用已经十分广泛,但从国内生产的温度控制器及技术来讲,其总体发展水平仍然不高,同国外的日本、美国、德国等先进国家相比,仍然有着较大的差距。
1.2.2国内恒温控制的发展现状及趋势
我国目前在恒温控制技术这方面总体技术水平处于20世纪80年代中后期水平,成熟产品主要以“点位”控制及常规的PID控制器为主,它只能适应一般温度系统控制,难于控制滞后、复杂、时变的温度系统控制。
在适应于较高控制场合的智能化、自适应控制仪表领域内,国内技术还不十分成熟,形成商品化并广泛应用的控制仪表较少。
因此,我国在恒温控制等控制仪表行业与国外还有着一定的差距。
从过程量的检测角度出发,温度是最常见的过程变量之一,它是一个非常重要的过程变量,因为它直接影响燃烧、化学反应、发酵、烘烤、煅烧、蒸馏、浓度、挤压成形,结晶以及空气流动等物理和化学过程。
而恒温控制技术在工业领域应用非常广泛,由于其具有工况复杂、参数多变、运行惯性大、控制滞后等特点,它对控制调节器要求较高。
其温度控制不好就可能引起生产安全,产品质量和产量等一系列问题。
尽管恒温控制很重要,但是要控制好温度常常会遇到意想不到的困难。
随着嵌入式系统开发技术的快速发展及其在各个领域的广泛应用,人们对电子产品的小型化和智能化要求越来越高,作为高新技术之一的单片机以其体积小、价格低、可靠性高、适用范围大以及本身的指令系统等诸多优势,在各个领域、各个行业都得到了广泛应用。
第二章恒温水箱控制系统总体方案设计
本章提出了对恒温控制的几种方案,根据恒温水箱控制系统的控制要求及技术指标,结合这几种方案的性能特点,最后选定以单片机为主控制器,增量式的PID算法进行调整控制PWM波形产生的方案三作为本控制系统的总体方案。
2.1系统方案选择与论证
2.1.1一位式的模拟控制方案
此方案是传统的一位式模拟控制方案,选用模拟电路,用电位器设定给定值,反馈的温度值和设定值比较后,决定加热或不加热。
其特点是电路简单,易于实现,但是系统所得结果的精度不高并且调节动作频繁,系统静差大,不稳定,受环境影响大,不能实现复杂的控制算法,难以用数码管显示,难以用键盘设定,其方案一框图如图2.1所示。
2.1.2二位式的模拟控制方案
此方案采用单片机系统来实现。
单片机软件编程灵活、自由度大,可用软件编程实现各种控制算法和逻辑控制。
单片机系统通过温度传感器(ADC590)对水箱内水温进行检测,得到模拟的温度信号,在经过A/D转换成数字信号之后,则可用数码管来显示水温的实际值,还能用键盘输入设定值,也可实现打印功能。
本方案还可选用51单片机(内部含有4KB的EEPROM),不需要外扩展存储器可使系统整体结构较为简单。
但是它是一种传统的模拟控制方式,而模拟控制系统难以实现复杂控制规律,控制方案的修改也比较麻烦,其方案二框图如图2.2所示。
加热装置
上限比较
温度预置
信
号
放
大
信
号
采
集
固
态
继
电
器
信
号
处
理
下限比较
图2.2二位式模拟控制方案框图
2.1.3PID算法控制方案
此方案采用单片机为控制核心的控制系统,尤其对温度控制,它可达到核心的控制作用,并且可方便实现数码显示、键盘设定及利用PID算法来控制PWM波形的产生,进而控制电炉的加热来实现恒温控制,其所测结果精度也大大的得到了提高,在利用PID算法来控制PWM波形的产生,是有效的控制数字脉冲的输出宽度,使固态继电器得到有效和有序的逻辑控制,不会使固态继电器产生误动作。
因此利用PWM技术进行脉宽调制的优点是:
(1)从处理器到被控系统信号都是数字形式的,无需进行数模转换。
(2)让信号保持为数字形式可将噪声影响降到最小,并且噪声只有在强到足以将逻辑“1”改变为逻辑“0”或将逻辑“0”改变为逻辑“1”时,才能对数字信号产生影响。
(3)对噪声抵抗能力的增强也是PWM相对于模拟控制的另外一个优点,而且这也是在某些时候将PWM用于通信的主要原因。
(4)PWM经济、节约空间、抗噪性能强,是一种值得广大工程师在许多设计应用中使用的有效技术。
再加上单片机的软件编程灵活、自由度大,可用软件编程实现各种控制算法和逻辑控制。
它可以通过用数字温度传感器采集到的实际水温温度直接进行数码管显示,还能用键盘输入设定值,并且内部含有4KB的EEPROM,不需要外扩展存储器,可使系统整体结构更为简单,其方案三框图如图2.3所示。
由于方案一和方案二是传统的模拟控制方式,而模拟控制系统难以实现复杂控制规律,控制方案的修改也比较麻烦,而方案三是采用单片机为控制核心的控制系统,利用PID控制原理和PWM技术实现对水箱内水温的控制。
基于这样的控制原理和PWM技术的优越性,在对温度控制的系统中,它可达到采用其他控制系统所达不到的控制效果,并且可方便实现数码实时显示、键盘设定、直接可以驱动固态继电器,其测量结果的准确性和精度是非常高的,故经过对三种方案的比较论证,本设计采用方案三,利用单片机按增量式的PID控制算法对采集的温度数据进行处理,得到控制量,利用增量式的PID控制算法来控制PWM波形的产生进而控制固态继电器,从而达到控制电炉的功率进行加热,实现对水箱内水温的恒温控制。
2.2恒温水箱控制系统工作原理
根据恒温水箱控制系统的设计任务和要求,确定了系统总体方案之后,现对该方案的具体原理进行详细介绍,它是采用闭环控制结构进行控制的,其具体控制图如图2.4所示。
本系统是采用闭环负反馈的控制方式进行控制的,它通过数字温度传感器检测水箱内的水温温度,把采集到的数据直接送到单片机进行处理,由于数字式温度传感器能在极短时间内把采集到的模拟量转换成数字量,这样被它处理的数据直接送到数字PID模块进行调整和控制PWM波形的产生。
然后,把检测到的数据与预先设定的温度值进行比较,根据不同的差值去控制控制固态继电器的通断,以采取不同的加热方式进行加热升温。
另外,还设置了温度实时显示的装置,可以同时显示预先设定的温度值和实际检测到的温度值。
第三章恒温水箱控制系统硬件设计
恒温水箱控制系统主要由八部分组成:
单片机主控制模块、主电源电路、温度采集模块、按键输入电路、继电器控制模块、显示模块、越限报警模块、串行通信接口模块。
本章对各模块的硬件电路设计作了详细说明。
3.1单片机主控模块
单片机主控制模块采用AT89C51芯片,把数字温度传感器采集到的温度信号与原预先设定值进行比较,然后根据其差值通过PID调节整定,控制继电器的通断进行不同加热方式,能用键盘进行输入数据的处理以及温度信号的实时显示。
3.1.1 AT89C51单片机简介
AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
AT89C51是一种带4K字节闪存可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪速存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
3.1.2AT89C51各引脚功能说明
VCC:
供电电压。
Vdd:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
RST:
复位输入。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出
电平用于锁存地址的低位字节。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储
器取指期间,每个机器周期两次/PSEN有效。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存
储器(0000H-FFFFH),不管是否有内部程序存储器。
当/EA端保持高电平时,从内部程序存储器开始读取。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
图3.140引脚双列直插封装图
3.1.3AT89C51单片机主要性能参数
(1)与MCS—51产品指令系统完全兼容;(7)32个可编程I/O口线;
(2)4K字节可重复擦写Flash闪速存储器;(8)2个16位定时/计数器;
(3)1000次擦写周期;(9)6个中断源;
(4)全静态操作:
0Hz~24MHz;(10)可编程串行UART通道;
(5)三级加密程序存储器;(11)低功耗空闲和掉电模式。
(6)128×8字节内部RAM;
3.1.4AT89C51单片机最小系统
单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统.对51系列单片机来说,最小系统一般应该包括:
单片机、晶振电路、复位电路.
下面给出一个51单片机的最小系统电路图3.2.
3.2AT89C51单片机的最小系统电路图
说明
复位电路:
由电容串联电阻构成,由图并结合"电容电压不能突变"的性质,可以知道,当系统一上电,RST脚将会出现高电平,并且,这个高电平持续的时间由电路的RC值来决定.典型的51单片机当RST脚的高电平持续两个机器周期以上就将复位,所以,适当组合RC的取值就可以保证可靠的复位.一般教科书推荐C取10u,R取8.2K.当然也有其他取法的,原则就是要让RC组合可以在RST脚上产生不少于2个机周期的高电平.至于如何具体定量计算,可以参考电路分析相关书籍.
晶振电路:
单片机内部带有时钟电路,只需要在片外通过XTAL1、XTAL2引脚接入定时控制单元(晶体振荡和电容),即可构成一个稳定的自激振荡器。
振荡器的工作频率一般在1.2~12MHz之间,当然在一般情况下频率越快越好,可以保证程序运行速度即保证了控制的实时性。
一般采用石英晶振作定时控制元件,在不需要高精度参考时钟时,也可以用电感代替晶振,有时也可以引入外部时钟脉冲信号。
接在晶振上的电容虽然没有严格要求,但电容的大小会影响振荡器的稳定性和起振的快速性。
因此,通常选择在10~30pF左右,在此次设计时钟电路时,晶振频率选用(12MHz),电容选用(30pF),并且它们应尽可能靠近芯片,以减小分布电容,保证振荡器振荡的稳定性
3.2主电源模块
控制系统主控制部分电源需要用5V直流电源供电,其电路如图3.3所示,把频率为50Hz、有效值为220V的单相交流电压转换为幅值稳定的5V直流电压。
其主要原理是把单相交流电经过电源变压器、整流电路、滤波电路、稳压电路转换成稳定的直流电压。
由于输入电压为电网电压,一般情况下所需直流电压的数值和电网电压的有效值相差较大,因而电源变压器的作用显现出来起到降压作用。
降压后还是交流电压,所以需要整流电路把交流电压转换成直流电压。
由于经整流电路整流后的电压含有较大的交流分量,会影响到负载电路的正常工作。
需通过低通滤波电路滤波,使输出电压平滑。
稳压电路的功能是使输出直流电压基本不受电网电压波动和负载电阻变化的影响,从而获得稳定性足够高的直流电压。
本电路使用集成稳压芯片7805解决了电源稳压问题。
图3.3主电源电路
3.3温度采集模块
由于在传统的模拟信号远距离温度测量系统中,需要很好的解决引线误差补偿问题、多点测量切换误差问题和放大电路零点漂移误差问题等技术问题,才能够达到较高的测量精度。
而且一般监控现场的电磁环境都非常恶劣,各种干扰信号较强,模拟温度信号容易受到干扰而产生测量误差,影响测量精度。
因此,在本设计中的温度测量系统中,采用美国Dallas半导体公司的DS18B20温度芯片对水箱内的水温进行采集温度数据,并且由于它抗干扰能力强,是解决这些问题的最有效方案。
3.3.1温度传感器DS18B20的测温原理
DS18B20的测温原理用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。
计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55℃所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55℃所对应的一个基数值。
减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度,由于它内部的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值,其内部测温电路图3.4所示。
3.3.2DS18B20与单片机的接口电路
DS18B20的引脚图及与AT89C51的接口电路如图3.5所示,其中DS18B20工作在外部电源供电方式,AT89C51单片机采用P1.2和DS18B20通信。
图3.5DS18B20与AT89C51单片机的接口电路
3.4按键输入模块
本系统设计三个按键,采用查询方式,一个用于选择切换设置报警温度和当前温度,另外两个分别用于设置报警温度的加和减。
均采用软件消抖。
图3.6按键输入模块
3.5继电器控制模块
3.5.1固态继电器SSR工作原理
本系统采用固态继电器进行控制,它的控制原理是:
固态继电器只有两个输入端(“+”和“-”)及两个输出端,是一种四端器件。
工作时只要在“+”、“-”上加上一定的控制信号,就可以控制输出两端之间的“通”和“断”,实现“开关”的功能,其中耦合电路的功能是为“+”、“-”端输入的控制信号提供一个输入/输出端之间的通道,但又在电气上断开SSR中输入端和输出端之间的(电)联系,以防止输出端对输入端的影响,耦合电路用的元件是“光耦合器”,它动作灵敏、响应速度高、输入/输出端间的绝缘(耐压)等级高;由于输入端的负载是发光二极管,这使固态继电器的输入端很容易做到与输入信号电平相匹配,在使用可直接与计算机输出接口相接,即受“1”与“0”的逻辑电平控制。
触发电路的功能是产生合乎要求的触发信号,驱动开关电路工作,但由于开关电路在不加特殊控制电路时,将产生射频干扰并以高次谐波或尖峰等污染电网,为此特设“过零控制电路”。
所谓“过零”是指,当加入控制信号,交流电压过零时,固态继电器即为通态;而当断开控制信号后,固态继电器要等待交流电的正半周与负半周的交界点(零电位)时,固态继电器才为断态。
这种设计能防止高次谐波的干扰和对电网的污染。
吸收电路是为防止从电源中传来的尖峰、浪涌(电压)对开关器件双向可控硅管的冲击和干扰(甚至误动作)而设计的,一般是用“R-C”串联吸收电路或非线性电阻(压敏电阻器)。
下图为一种典型的交流型SSR的电路原理图,其内部结构图如图3.7所示。
图3.7继电器内部结构图
3.5.2继电器控制电路图
下图是一个控制电阻丝加热的电路图,单片机通过P3.1口的输出控制继电器的开合并进行通讯,当继电器的开关闭合时,晶闸管的门极触发电路导通,即晶闸管导通,220V的交流电压直接加在加热装置上进行全加热,其电路图如图3.8所示。
图3.8继电器控制模块及加热装置
3.6显示模块
在单片机控制系统中,常用LED显示器来显示各种数字或符号。
这种显示器显示清晰,亮度高,接口方便,广泛应用于各种控制系统中八段LED数码管连接电路。
图3.9实验板上所用共阳型LED数码管的电路原理图,从图中可以看出:
一个字块中的8个发光二极管的阳极都连在一起的,共阴和共阳结构的LED显示器各笔划段名的位置及名称是相同的。
当二极管导通时,相应的笔划段发亮,由发亮的笔划段组合而显示出各种字符。
如图3.10,8个笔划段hgfedcba对应于一个字节(8位)的D7D6D5D4D3D2D1D0,于是用8位二进制码就可以表示欲显示字符的字形代码。
数码管二极管的正极连在一起,构成公共端,即片选端,对于这种数码管的驱动,要求在片选端提供电流。
图3.9
图3.10
数码管除了与AT89C51原件的管脚直接相连外,还需要添加2个PNP三极管和2个二极管。
在片选端提供电流如图
图3.11
3.7越限报警报模块
报警电路如图3-11所示,该电路采用一个小功率三极管Q1驱动蜂鸣器BELL,当单片机接收到超额温度信号或危险信号时,输出脚BELL输出高点平,Q1导通,致使蜂鸣器BELL得电工作,发出报警声。
同时,电路中的发光二极管指示出电路的工作状态。
图3.11报警电路
3.8串行通信接口模块
AT89C51单片机通过管脚RXD(串行数据接收端)和管脚TXD(串行数据发送端)与外界通信。
SBUF是串行口缓冲寄存器,包括发送寄存器和接收寄存器。
它们有相同的名字和地址空间,但不会出现冲突,因为它们一个只能被CPU读出数据,一个只能被CPU写入数据。
AT89C51芯片虽然已有串行输入/输出管脚可以做串行通信,但为了使PC与AT89C51的电压保持一致,时通信距离更远、通信效果更好,所以还要加上MAX232芯片。
本设计中的串行接口是一个可编程的全双工串行通信接口。
它可用做异步通信方式,与串行传送信息的外部设备相连
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 水箱 自动控制系统 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)