基于MCS-51单片机的电热锅炉水温控制器的设计摘要:在工业生产过程中,人们需要对各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测和控制。因为单片机具有低功耗、高性能、可靠性好、易于产品化等特点,因此采用单片机对温度进行控制不仅控制方便、简单和灵活,而且可以提高被控温度的技术指标,从而能够大大提高产品的质量。本论文介绍“电热锅炉水温控制器”的设计。单片机温度控制系统作为控制系统中的一个典型实验设计,综合运用了微机原理、自动控制原理、模拟电子技术、数字控制技术、键盘显示技术等诸多方面的知识。设计过程中,首先进行硬件的设计,其次进行软件设计和综合调试,最终使得此系统实现了温度的恒温控制智能化。关键词:MCS-51单片机,温度传感器,可控硅,温度控制ABSTRACT:Inindustrialproductionprogress,peopleneedtoheatingfurnace,heat-treatmentfurnaceandallkindsofresponsestoveandboilertemperaturemeasureandcontrol.AdoptSingle-ChipMicrocomputerisitcontrolconvenient,simple,flexibilityadvantagesuchasbeingheavytohavenotmerelytocontroltogoontotemperaturetocome,andcanraisebytechnicalindicatornottoaccuseoftemperaturebyalargemargin,thuscanbigimprovementqualityandthequantityofproducts.Thisthesisintroducesthedesignanddebuggingof“thetemperaturecontrolsystembymicrocomputer”.Asatypicalexperimentaldesignincontrolsystem,itusesmuchcontrolknowledgeandcomprehensivelytestsstudent’sabilityincontrolsystem.Thecontentofthisthesismainlyincludes:introduces,filteringware,keyboard,man-computerdialoguesupportedbyLEDindication,heatcontrolmethod,thedevelopmentofmicro-computerMCS-51andsystemicappliedsoftware.Keywords:MCS-51,temperaturesensor,siliconcontrol,temperaturecontrol第一章前言1.1课题背景温度是工业对象中主要的被控参数之一,如冶金、机械、食品、化工各类工业生产中,广泛使用的各种加热炉、热处理炉、反应炉等,对工件的温度处理要求严格控制,单片机温度控制系统使温度控制指标得到了大幅度提高。以单片机为核心设计的温度控制系统,可以同时采集多个数据,并根据实际要求进行相应的控制。那么无论是哪种控制,都希望水温控制系统能够有较高的精确度(起码在满足要求的范围内),从而实现了高精度的控制,解决身边的问题。1.2研究内容本温度控制系统以AT89S52单片机为控制核心,由一数字温度传感器DS18B20测量被控温度,电热炉执行水温上升环节,从而构成一个单闭环反馈控制系统。单片机外围电路包括人机接口按键与数码显示电路、温度读取与控制电路。用户通过按键设定欲加热温度后,启动400W电热炉进行烧水。当前水温经过DS18B20测量并送给单片机,单片机经过PID算法校正后输出信号控制可控硅进行热电炉烧水,最终使水温保持在用户的设定值上。第二章温度传感器选择温度是工农业生产和日常生活中经常要测量的一个物理量,科学家根据不同的测温要求研制出多种温度传感器,但多数温度传感器的输出都是一个变化的模拟电压量,不能与单片机采集系统直接接口,需要先进行转换,才能送入单片机。2.1DS18B20概述DS18B20是Dallas公司继DS1820后推出的一种改进型智能数字温度传感器,与传统的热敏电阻相比,只需一根线就能直接读出被测温度值,并可根据实际需求来编程实现9~12位数字值的读数方式。2.1.1DS18B20内部结构2.1.2DS18B20的测温原理其主要由斜率累加器、温度系数振荡器、减法计数器、温度存储器等功能部件组成。DS1820是这样测温的:用一个高温度系数的振荡器确定一个门周期,内部计数器在这个门周期内对一个低温度系数的振荡器的脉冲进行计数来得到温度值。计数器被预置到对应于-55℃的一个值。如果计数器在门周期结束前到达0,则温度寄存器(同样被预置到-55℃)的值增加,表明所测温度大于-55℃。同时,计数器被复位到一个值,这个值由斜坡式累加器电路确定,斜坡式累加器电路用来补偿感温振荡器的抛物线特性。然后计数器又开始计数直到0,如果门周期仍未结束,将重复这一过程。斜坡式累加器用来补偿感温振荡器的非线性,以期在测温时获得比较高的分辨率。这是通过改变计数器对温度每增加一度所需计数的的值来实现的。因此,要想获得所需的分辨力,必须同时知道在给定温度下计数器的值和每一度的计数值。DS18B20内部对此计算的结果可提供0.5℃的分辨率。温度以16bit带符号位扩展的二进制补码形式读出,表1给出了温度值和输出数据的关系。数据通过单线接口以串行方式传输。DS18B20测温范围-55℃~+125℃,以0.5℃递增。64位ROM和单线接口存储和控制逻辑高速缓存器温度传感器高温触发器TH低温触发器TL匹配寄存器8位CRC发生器电源检测CDQVDD内部电源VDD图1第三章系统硬件设计硬件是一个工程设计项目的主要组成部分,它支撑并构成一个完整的系统骨架,缺少这一骨架,就智只能纸上谈兵,虚无缥缈。因此,系统的硬件设计是设计中的首要考虑对象。3.1温度控制系统的整体设计对于温度控制,采用单片机AT89S52组成的自动控制系统,其系统硬件总体方框图如图所示:图2在图3.1中,温度传感器采用单总线数字温度传感器DS18B20;数码显示采用三位共阳LED,使用其动态显示方式,实时显示DS18B20采集到的水温温度。水箱的水大约为1升,电热炉功率为400W;按键设定分为设置按键(SET),+1(UP),-1(DOWN)功能,其特点是:按下SET键可进行水箱温度预设,预设值为所期望水箱水温值,按下SET键后,可通过UP和DOWN键进行温度闪烁加减设定;光耦采用MOC3021,可控硅采用BTA16;还有超温报警功能,鉴于使用蜂鸣器声音太小等原因,本功能采用市场上常用的音乐芯片进行设计,超温将会发出声光警声报警。3.2温度控制系统的基本组成主要由单片机、温度采集模块、温度显示模块、升温控制模块、按键设定模块和超温声光报警模块组成。AT89S52温度传感器人机按键设定数码显示水箱光耦双向可控硅电热炉超温声光报警系统主要组成部分:主要由单总线数字温度传感器DS18B20组成的温度采集模块,它通过温度信号采集并经温度转换后把信号输入单片机,然后送LED进行显示。LED是三位一体共阳型,并采用动态扫描显示方式进行显示。然后是温度控制模块,升温部分是通过光耦MOC3021控制可控硅BTA16的导通角来控制电热炉功率加热水箱内部水单片机是AT89S52。3.3温度显示模块此次设计中,我们要在同一时刻显示不同的字符,从电路上看,这是办不到的。因此只能利用人眼对视觉的残留效应,采用动态扫描的显示方法,逐个地循环点亮三个数码管,每位显示1ms左右,使人看起来就好像在同时显示不同的字符一样。这由调用延时1ms子程序DELY来实现。实践证明,当每位显示时间偏离1ms较多时,将会产生闪烁现象。3.4温度控制模块100K/1WR?1N4007TLP5211KR?4.7KR?VCCPortMOC3021BTA16热得快10K/5WR?360R?0.1uFC?9013330R?4.7KR?VCCP2.0图3过零检测部分由一个光耦隔离获得同步信号;控制部分由光耦MOC3021、可控硅BTA16、电热炉(热得快)组成。当温度低于下限温度时候,加热部分开始启动,温度升高到上限温度时候停止工作。3.5温度报警模块定做各专业论文,如需全文可联系QQ2438635173电路原理如图所示:RelayVCCVCCVCC7OUT3NC4REF29REF113GND1KD-TM019013100R2LED1Speaker270KR31KR4P2.4TLP521-1图4其中使用光耦TLP521-1进行单片机隔离,当加热水温超过预设值时,单片机口P2.4输出高电平,光耦导通,继电器开始动作,其常闭端闭合,+5V电源VCC接入,声光报警功能启动。音乐芯片采用市场上常用的警笛报警芯片,价格便宜,同时发出声音比蜂鸣器大许多。第四章系统软件设计4.1系统主程序主程序的流程图如图所示:图54.2PID控制算法加入PID运算可以提高温度测量的准确度和调节的质量,本设计采用PID运算正是为了提高运算结果,使之更精确,减少外界的干扰。定做各专业论文,如需全文可联系QQ2438635173下图为PID算法的流程图开始初始化DS18B20系统初始化读取温度数据等待定时中断键盘按下?显示温度自整定PID输出控制脉冲温度设定YN