毕业论文-抗酸染色实验恒温箱温控系统设计_第1页
毕业论文-抗酸染色实验恒温箱温控系统设计_第2页
毕业论文-抗酸染色实验恒温箱温控系统设计_第3页
毕业论文-抗酸染色实验恒温箱温控系统设计_第4页
毕业论文-抗酸染色实验恒温箱温控系统设计_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业设计(论文)题目抗酸染色实验恒温箱温控系统设计专业电子信息工程学生姓名邹海军学号07082232指导教师66论文字数19298完成日期20101225师范学院教务处印制抗酸染色实验恒温箱温控系统设计摘要为了实现抗酸染色实验的恒温控制,本文以STC89C52单片机为主控制器,采用DS18B20检测温度,利用数字PID算法和PWM输出控制双向可控硅通断,来驱动加热器工作,从而实现温度的控制。该系统经过实验验证,在抗酸染色实验恒温箱中得到了良好的应用。具有稳定,易控制,操作简便等优点。关键词单片机,DS18B20,可控硅,PIDTHEDESIGNOFTEMPERATURECONTROLSYSTEMOFACIDFASTSTAININGEXPERIMENTTHERMOTANKABSTRACTINORDERTOCOMPLETECONSTANTTEMPERATURECONTROLOFACIDFASTSTAININGEXPERIMENT,THISARTICLETAKESSTC89C52MICROCONTROLLERUNITASMAINLYCONTROLLER,USESDS18B20TODETECTTEMPERATURE,USESADIGITALPIDALGORITHMANDPWMOUTPUTTOCONTROLTRIACONANDOFF,TODRIVETHEHEATERINORDERTOACHIEVETEMPERATURECONTROLTHESYSTEMISVERIFIEDBYEXPERIMENTS,ANDGETSAGOODAPPLICATIONONACIDFASTSTAININGEXPERIMENTTHERMOTANKSTABLE,EASYTOCONTROL,EASYOPERATION,ETCKEYWORDSMICROCONTROLLERUNIT,DS18B20,TRIAC,PID目录第一章绪论111选题的意义1111课题来源1112研究意义112研究现状及发展趋势1121研究现状1122发展趋势213论文研究的目标及主要内容2131研究的目标2132研究的主要内容314本章总结3第二章系统硬件电路设计421系统方案设计与论证422系统整体框图523STC89C52单片机简介624键盘控制电路设计725彩灯与LED数码管显示电路设计7251彩灯状态显示电路7252LED数码管显示电路826报警电路设计927温度采集电路设计928温度控制电路设计1029电源电路设计10210本章总结11第三章系统软件设计1231系统总体程序流程图1232按键功能程序设计1233LED显示程序设计1534温度采集程序设计1635温度控制程序设计19351PID简介19352温度控制程序设计2136定时和报警程序设计2437系统调试2538本章总结25第四章总结及实验结果2641设计总结2642实验结果26参考文献27结束语28致谢29附录30第1章绪论11选题的意义111课题来源本课题为与医学院的合作研究项目“抗酸染色实验装置”的子课题。该装置可用于生产、科研、医院和计量部门等实验室做恒定温度实验和检定温度。本文针对课题中的温度控制部分进行研究。112研究意义在抗酸染色实验中,需要对涂有细菌的玻片进行恒温加热。温度对实验结果具有重要作用,过高或者过低的温度都会影响实验数据的精确性,从而得到错误的结论,影响实验进程21。因此,研究高性能的恒温控制系统对于抗酸染色实验具有重要意义。温度是工业生产和科学实验中至关重要的一个因素,在医药、冶金、航空和化工中都起着重要的作用,温度的高低可以影响着许多产品的质量和使用的寿命以及科学实验数据的精确性。在现代的各种工业生产中,很多地方都需要用到温度控制系统,而传统的温度控制系统控制精度低,控制能力较弱,故智能化的控制系统成为一种发展的趋势。恒温箱控制系统有着广泛的用途,可供医疗卫生、生物、科研中用做储存菌种,细胞培养,制药行业药品检测,医院临床检验,也可在农业中作为育种、发酵、育雏菌种培养以及其他恒温实验和恒温培养,是进行科研的必需设备。因此,研究高性能的温度控制系统具有一定的现实意义。12研究现状及发展趋势121研究现状实验室在进行抗酸染色实验的过程中,所使用的传统恒温箱对温度的控制响应慢、超调大、精度低,其采用模拟电路方法,温度漂移及元器件的参数误差对温度的设定及控制精度影响较大,自动化程度低,成本高。而且这类恒温箱大都采用机械触点控温,以电阻丝、电热管为发热源,靠风机或水循环热量,保持箱内温度。这类恒温箱存在以下问题机械触点控温,调温钮易松动指示不准,传感器灵敏度差,温差范围误差大,变化幅度正负35;机械式传感器触点易打火炭化,时常出现接触不良或粘连。严重时引起电路、箱体内胆、热源、待测样品烧坏,器皿炸裂。造成分析结果的偏差、实验失败和经济损失;热源热效率低,工作时间长。电阻丝、电热管长时间工作易蒸发老化寿命短;设备故障率高,技术含量虽不高,但维修过程复杂。维修机械温控,更换电阻丝、电热管、水箱补漏等故障,几乎要分解箱体,不方便维修;无超温、漏电保护装置,采用电阻丝热源的箱体存在明火,有安全隐患3。恒温箱控制系统有着广泛的用途,可供医疗卫生、生物、科研中用做储存菌种,细胞培养,制药行业药品检测,医院临床检验,也可在农业中作为育种、发酵、育雏菌种培养以及其他恒温实验和恒温培养,是进行科研的必需设备。随着电子和计算机技术的发展,智能控制越来越普遍,具有简单、精确、可靠以及智能化等特点。电加热设备温度特性复杂,其温度的测量和控制亦显得尤为重要和复杂。多年来,研究人员一直不断地把各种新方法和新技术应用于电加热设备温度的测量和控制中,并获得了许多的经验和一定的成果。随着计算机、智能控制理论技术的飞速发展,加热设备参数的测量和控制已进入微机化、智能化的新时代。122发展趋势在现代生产过程的检测和控制中,温度参数的测控量是最重要最普遍的测控项目之一,温度也是日常生活中接触最多的。随着微电子技术的发展,特别是单片微型计算机的出现,体积小、成本低、精度高的单片机温度控制装置已经实现。单片机是一种高集成度的、可产生智能的芯片,其内部结构组成是一台完整的微型计算机,更由于其体积小,所以在控制领域得到广泛应用。由于单片机是按工业标准设计的,因此,它通常有很好的环境适应能力和抗干扰能力,故有很好的可靠性。随着超大规模集成电路,单片机的速度、内存量、位数等硬件性能也大为提高,采用单片机对温度控制具有控制方便、简单和灵活性大等优点。因此,以单片机为核心组成的温度控制系统是一种必然的结构形式。随着各种应用对温度控制精度的要求不断提高,传统的模拟式仪表已经较难达到目标控制要求。各种新的控制理论和经典的控制方法在温度控制中的研究与应用也在不断发展,新型的、现代化的测温技术不断出现;温度信号的转化与处理趋于数字化、微机化和智能化;智能控制理论与技术日渐成为温度控制的基本理论与技术。文献【4】介绍了传统神经网络PID和柔性神经网络PID分别应用于恒温箱温度控制不同之处。文献【5】介绍了基于模糊神经网络的PID温度控制系统的优点。文献【6】介绍了模糊PID的控制原理,以及在恒温箱温度控制中的应用。文献【7】介绍了利用位置式PID控制算法实现对恒温箱温度的控制。因此,在抗酸染色实验装置中采用基于数字PID算法和单片机的恒温控制系统必然会成为一种发展趋势。13论文研究的目标及主要内容131研究的目标本课题研究的目标是以STC89C52单片机为核心器件,设计一款抗酸染色实验恒温箱的温度控制系统,主要完成对抗酸染色实验过程的恒温加热的控制,同时具有报警、定时加热等功能。课题研究的主要目标及技术参数有以下几点(1)通过按键设定加热目标温度和恒温时间;(2)通过LED数码管显示温度和时间,当目标温度到达时,倒计时;(3)通过绿、黄、红彩灯显示正在加热、定时倒计时、加热停止报警;(4)红灯闪烁报警的同时,结合蜂鸣器发出声音报警;(5)应用PID算法提高控制精度;温度误差小于02摄氏度;(6)系统加热温度小于100摄氏度。132研究的主要内容该系统由STC89C52单片机控制实现对抗酸染色实验过程的定时恒温加热,通过按键可以设定目标温度和恒温时间,然后通过数码管显示,配以LED彩灯显示实验处于哪一阶段。课题研究的内容主要有以下几点(1)研究单片机的工作原理(2)研究各种PID算法及其在温度控制中的应用(3)研究抗酸染色实验的特点及要求指标(4)研究大功率加热管的驱动原理及其控制方式(5)研究系统按键、显示、报警等模块电路的设计及其与单片机接口电路设计(6)研究系统整体硬件电路及其程序设计。14本章总结本章对课题的选题意义、研究现状及发展趋势和论文研究的目标及主要内容做了比较简单的介绍。加热温度和加热时间是影响抗酸染色实验的重要因素,因此,研究高性能的温度控制系统具有重要意义。第2章系统硬件电路设计21系统方案设计与论证系统主要模块设计方案比较论证如下1测温模块方案一采用铂热电阻采集温度数据,通过A/D转换,将模拟信号转换成数字信号,送给单片机8。大多数金属导体的电阻率随温度升高而增大,具有正的温度系数,这就是热电阻测温的基础。一般热电阻的测量范围可达200500,测量精度高,稳定性好,适宜于测低温9。热电阻测得的信号需要经过A/D转换,才能送给单片机。原理框图如图21所示。图21测温方案一原理框图方案二采用数字温度传感器DS18B20采集温度数据进行转换,直接送给单片机10。DS18B20的测温范围是55125,精度为05。该传感器将半导体温敏器件、A/D转换器、存储器等做在了一个很小的集成电路芯片上,传感器直接输出的就是温度信号数字值。信号传输采用单总线结构,大大提高了系统的抗干扰能力。原理框图如图22所示。图22测温方案二原理框图比较方案一与方案二,优缺点如下虽然热电阻测量范围宽,精度高,但是测量方法复杂,成本较高;而DS18B20数字温度传感器虽然测量范围小,但已经能够满足本系统的测量范围要求和精度要求,而且测量方法简单,无需进行A/D转换,成本也低。故选择方案二。2温度控制模块方案一采用继电器驱动电加热管加热升温。通过单片机I/O口控制电平转换,触发继电器线圈的的通断,来驱动加热管进行加热。继电器是一种电子控制器件,通常应用于自动控制电路中,它实际上是用较小的电流去控制较大电流的一种“自动开关”。原理框图如图23所示。图23温控方案一原理框图方案二采用双向可控硅驱动电加热管加热升温。通过单片机I/O口的电平转换控制双向可控硅的通断,驱动加热管加热。双向可控硅是在普通可控硅的基础上发展而成的,它不仅能代替两只反极性并联的可控硅,而且仅需一个触发电路,是比较理想的交流开关器件。原理框图如图24所示。单片机继电器加热管热电阻PT100放大电路A/D转换单片机DS18B20数字温度传感器单片机图24温控方案二原理框图比较方案一与方案二,优缺点如下虽然继电器控制电路简单,但是加热过程加热管通断频繁,继电器的触点容易损坏;而双向可控硅用隔离器件实现了控制端与负载端的隔离,以小功率控制大功率,具有反应快,在微秒级内开通、关断;无触点运行,无火花,无噪音;效率高,成本低等优点。故选择方案二。3显示模块方案一采用LCD1602液晶显示器。1602液晶显示器,每行显示16个字符,共显示2行,并行接口。其体积小、功耗低、显示操作简便。方案二采用LED数码管显示器。8段LED数码管,内部由8个发光二极管组成,能显示数字09和部分字母。比较方案一与方案二,优缺点如下1602液晶显示器显示内容多,人机交互性好,但是成本较高;而本系统只需显示温度和定时时间,数码管就能很好的实现这一功能,且成本低。故选择方案二。22系统整体框图在用89C52单片机设计系统时,首先要构成一个最小系统,单片机才能正常工作,即将单片机接上时钟(晶振)电路和复位电路。经过细致的分析与论证,我将本系统进行细化,分为几个简单的模块,再将各个模块进行统筹结合,最终构成了完整的一个系统,如图25系统整体框图所示。电源电路给整个系统提供5V电源,通过温度传感器采集到的温度信号送给单片机,然后单片机模拟PWM控制可控硅的通断来驱动加热管加热或关断。通过键盘设定相应的参数,LED显示,并提供声光报警。图25系统原理框图单片机双向可控硅加热管23STC89C52单片机简介STC89C52RC单片机是宏晶科技推出的新一代超强抗干扰、高速、低功耗的单片机,它是一种高性能CMOS8位微控制器,器件采用STC公司的高密度、非易失性存储技术生产,完全兼容传统8051单片机的指令系统。89C52单片机的片内结构如图26所示。它由如下功能部件组成1(1)微处理器(CPU)89C52单片机中有1个8位的CPU,包括了运算器和控制器。(2)数据存储器RAM片内512B的RAM以高速RAM的形式集成在单片机内,可以加快单片机的运行速度,而且这种结构的RAM还可以降低功耗。(3)程序存储器8KBFLASHROM89C52片内集成有8KB的FLASH存储器,用来存储程序。(4)中断系统8个中断源,4级中断优先权。(5)定时器/计数器片内有3个16位的定时器/计数器,具有4种工作方式。(6)串行口1个全双工的串行口,具有4种工作方式。(7)4个8位可编程并行I/O口(P0口、P1口、P2口、P3口)(8)特殊功能寄存器(SFR)共有21个特殊功能寄存器,用于CPU对片内个功能部件进行管理、控制和监视。图26STC89C52单片机片内结构目前89C52单片机多采用40只引脚的双列直插封装方式,如图27所示。图2789C52双列直插封装方式的引脚24键盘控制电路设计键盘在单片机应用系统中能实现向单片机输入数据、传送命令等功能,是人工干预单片机的主要手段。常用的键盘接口分为独立式键盘接口和行列式键盘接口。1独立式键盘接口独立式键盘就是各键相互独立,每个按键各接一条输入线,通过检测输入线的电平状态可以很容易地判断哪个按键被按下。在按键数目较多时,独立式键盘电路需要较多的输入口线,故此种键盘适用于按键较少或操作速度较高的场合。2行列式键盘接口行列式(也称矩阵式)键盘用于按键数目较多的场合,它由行线和列线组成,按键位于行、列的交叉点上。如图2所示,一个44的行列结构可以构成16个按键的键盘。很明显,在按键数目较多的场合,行列式键盘与独立式按键盘相比,要节省很多的I/O口线。本设计中所需按键较少,故选择独立式键盘,如图28所示。通过设置键可以设定目标温度和定时时间,加减键来增加和降低温度和时间的设定值。S1SWPBS2SWPBS3SWPBP30P16P17上上上上图28按键电路25彩灯与LED数码管显示电路设计251彩灯状态显示电路彩灯显示电路如图29所示,发光二极管阳极接5V电源,阴级与470欧姆电阻连接,再连到单片机I/O口。通过I/O口输出的电平高低来控制彩灯亮灭,当输出为低电平时,对应的发光二极管点亮,对实验进行的阶段作出显示,分别是正在加热、报警、定时倒计时。D2LEDD3LED5VR18470上上上上上上R17470RLEDYLEDD1LED上上上R16470BLED图29彩灯状态显示电路252LED数码管显示电路LED显示器是由发光二极管构成的,常用的为8段数码管,每一个段对应一个发光二极管。这种显示器有共阳极和共阴极两种。共阴极数码管的发光二极管的阴极连接在一起,当某个发光二极管的阳极为高电平时,发光二极管点亮,相应的段被显示。同样,共阳极数码管的发光二极管的阳极连接在一起,当某个发光二极管的阴极为低电平时,发光二极管点亮,相应的段被显示。8段共阳极LED数码管的段码如表21所示。显示字符0123456789共阳极段码C0HF9HA4HB0H99H92H82HF8H80H90H显示字符ABCDEF灭共阳极段码88H83HC6HA1H86H8EHFFH表218段LED段码在多位LED显示时,通常将所有位的段码线的相应段并联在一起,由一个8位的I/O口控制,而各位的共阳极或共阴极分别由相应的I/O口线控制,形成各位的分时选通。若要各位LED能够同时显示不同字符,就必须采用动态显示方式。即在某一时刻,只让某一位的位选线处于选通状态,而其他各位的位选线处于关闭状态,同时,段码线上输出相应位要显示的字符的段码。这样,在同一时刻,3位LED中只有选通的那一位显示字符,而其他三位则是熄灭的。如此循环,就可以使各位显示将要显示的字符。虽然这些字符实在不同时刻出现的,而在同一时刻,只有一位显示,其他各位熄灭,但由于LED显示器的余辉和人眼的“视觉暂留”作用,只要每位显示间隔足够短,则可以造成“多位同时亮”的假象,达到同时显示的效果。数码管显示部分如图210所示,此数码管为共阳级数码管,所以需要外部低电平才能使相应的内部二极管点亮。数码管的8个脚ADP接到单片机的P0口,位选控制端1H6H分别接三极管Q1Q6的集电极,三极管的基极分别接到单片机的P10P15口,三极管的发射极连接在一起接5V电源。通过P1口可以使相应的数码管位被选中,然后通过P0口送入相应的段码显示。左边的数码管显示温度,右边显示定时时间。E2C3B1Q1PNPQ2PNPQ3PNPR11KR21KR31K1H2H3HP10P11P121H2H3H4H5H6HQ4PNPQ5PNPQ6PNPR41KR51KR61K4H5H6HP13P14P155VABCDEFGDPABCDEFGDPE1D246C4A11B73829F10112H3G5ABCU5LED3DE1D246C4A11B73829F10112H3G5ABCU6LED3D图210LED显示电路26报警电路设计报警电路分为声音报警和发光二极管闪烁报警,即声光报警。光报警在前文阐述过,这里讨论声音报警。报警电路如图211所示。采用蜂鸣器发出蜂鸣的声音来达到报警的功能。由于蜂鸣器的工作电流一般比较大,以致于单片机的I/O口是无法直接驱动的,所以要利用放大电路来驱动,一般使用三极管来放大电流就可以了。LS1SPEAKERVCCR22200RLEDE2C3B1Q8PNP图211报警电路27温度采集电路设计温度采集电路原理图如图212所示。温度传感器采用单总线方式的集成数字温度传感器DSL8B2012。DSL8B20数字温度计提供9位二进制温度读数,指示器件的温度。信息经过单线接口送入DSL8B20或从DSL8B20送出,因此从主机CPU(单片机)到DSL8B20仅需一条线和地线,DSL8B20的电源可以由数据线本身提供而不需要外部电源。DSL8B20的测量范围从一55摄氏度到125摄氏度,增量值为05摄氏度。可在1S典型值内把温度变换成数字。123DS3DS18B20R2447KVCCP21图212温度采集电路DS18B20测温原理如图213所示,图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化,其振荡频率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在55所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值见到0时,温度寄存器的值将加1,计数器1的预置值将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环知道计数器2技术到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值13。图213DS18B20测温原理图28温度控制电路设计在本课题研究的抗酸染色实验恒温箱中,要求试样的温度恒定保持在5085,因此这里只需考虑加热控制而不考虑制冷。由于电加热管需要220V供电,因此不能直接连接单片机。温度控制电路如图214所示,由双向可控硅BTA12600B和光电耦合器MOC3062组成加热管驱动电路。双向可控硅和加热管串接在交流220V供电回路中,单片机经运算输出模拟PWM,经过光电耦合器,控制双向可控硅的通断,从而实现控制电加热管的加热。本温度控制系统采用通断控制,通过温度传感器测得的实际温度与设定温度值进行比较,然后改变给定控制周期内加热管的导通和关断时间,达到调节温度的目的14。当单片机的P20口输出低电平时,MOC3062输出端的双向可控硅导通,加热管通电加热;当P20口输出高电平时,MOC3062输出短的双向可控硅关断,加热管断电。A1K2A/K3A/K4U2MOC3062Q7BTA12600BR20200R23200R2539R16470L1上上上C3001UFVCCV1220VP20上上上上上上上上上图214温度控制电路29电源电路设计如图215所示电路为输出电压5V、输出电流15A的稳压电源电路。它由电源变压器T1,桥式整流电路D5,滤波电容C5、C8,防止自激电容C6、C7和一只固定式三端稳压器7805组成。220V交流市电通过电源变压器变换成交流低压,再经过桥式整流电路D5和滤波电容C5的整流和滤波,在固定式三端稳压器LM7805的VIN和GND两端形成一个并不十分稳定的直流电压该电压常随市电电压的波动或负载的变化等原因而发生变化。此直流电压经过LM7805的稳压和C8的滤波便在稳压电源的输出端产生了精度高、稳定度好的直流输出电压。本稳压电源可作为TTL电路或单片机电路的电源。三端稳压器是一种标准化、系列化的通用线性稳压电源集成电路,以其体积小、成本低、性能好、工作可靠性高、使用简捷方便等特点,成为目前稳压电源中应用最为广泛的一种单片式集成稳压器件。T1TRANS1AC1AC2D5BRIDGE1C52200UFC8100UFC601UFC701UF132VVGNDINOUTU378L0512J1CON25VGND220V图215电源电路210本章总结本章首先介绍了系统方案的设计与论证,比较了不同设计方案的优缺点,择优选之,确定整体的系统设计方案。介绍了STC889C52单片机片内硬件的总体结构以及管脚分布等基本知识。然后详细介绍了系统各模块的设计原理,分别是键盘控制、LED显示、声光报警、温度采集、温度控制、电源电路等模块。独立键盘各按键相互独立,控制简单,方便各项参数的是设定。8段LED数码管显示器内部由8个发光二极管组成,能显示数字09和部分字母。LED发光二极管发出闪烁光,结合蜂鸣发出蜂鸣响声,可以实现声光报警功能。温度信号的采集选用数字温度传感器DSL8B20,DS18B20的测温范围是55125,精度为05,抗干扰能力强。温度控制采用双向可控硅驱动加热管加热,双向可控硅是一种理想的交流开关器件,它能很好的实现控制端与负载端的隔离,以小功率控制大功率。电源电路用整流桥堆结合三端稳压器LM7805将220V交流转为5V电源,为系统供电。第3章系统软件设计31系统总体程序流程图软件是系统设计的重要组成部分15,本系统采用DS18B20数字温度传感器采集温度数据,存入STC89C52单片机的内部数据存储器,经处理后送LED显示,并将测量值与设定值进行比较,经过PID运算得到控制量并经单片机输出去控制加热器。系统软件设计总流程图如图31所示,其中包括了系统初始化、温度测量、LED显示、按键处理程序、PID运算程序、声光报警等。图31系统软件设计总流程图32按键功能程序设计除系统复位键外,还有3个用于人工控制的按键。一个是菜单功能键,进入设定目标温度和定时时间,以及确认完成设定;另外2个按键分别是加减键,增加或减少设定值。按键功能程序流程图如图32所示。图32按键功能程序流程图按键功能部分程序如下VOIDKEY_SCAN/按键扫描IFKEYSET0DELAY110IFKEYSET0KEYSETNUM/设置键按下次数自增WHILEKEYSETIFKEYSETNUM1/设置键按下第1次,设定温度个位IFKEYUP0DELAY110IFKEYUP0TEMP_GEIFTEMP_GE10TEMP_GE0WHILEKEYUPIFKEYDOWN0DELAY110IFKEYDOWN0TEMP_GEIFTEMP_GE1TEMP_GE9WHILEKEYDOWNIFKEYSETNUM2/设置键按下第2次,设定温度十位IFKEYUP0DELAY110IFKEYUP0TEMP_SHIIFTEMP_SHI10TEMP_SHI0WHILEKEYUPIFKEYDOWN0DELAY110IFKEYDOWN0TEMP_SHIIFTEMP_SHI1TEMP_SHI9WHILEKEYDOWNIFKEYSETNUM3/设置键按下第3次,设定定时时间IFKEYUP0DELAY110IFKEYUP0TIME_SUMIFTIME_SUM100TIME_SUM0WHILEKEYUPIFKEYDOWN0DELAY110IFKEYDOWN0TIME_SUMIFTIME_SUM1TIME_SUM99WHILEKEYDOWNIFKEYSETNUM4/设置键按下第4次,退出设置,开始加热KEYSETNUM0T1_FLAG1SET_TEMPTEMP_SHI10TEMP_GE33LED显示程序设计LED显示程序流程图如图33所示,根据传感器测得的温度数据,经单片机运算后,查表得当前温度所对应的段码(表21),送数码管显示。定时时间默认为0,由人工设定。图33LED显示程序流程图LED显示部分程序如下UCHARCODEDIS_7120X90,0XF6,0X8C,0XA4,0XE2,0XA1,0X81,0XF4,0X80,0XA0,0XFF/共阳LED段码表“0“1“2“3“4“5“6“7“8“9“不亮“DISDATADIS_7DISPLAY2/温度十位DISCAN0XF7DELAY80DISCAN0XFFDISDATADIS_7DISPLAY1/温度个位DIN0/点亮小数点位DISCAN0XEFDELAY80DISCAN0XFFDISDATADIS_7DISPLAY0/温度小数位DISCAN0XDFDELAY80DISCAN0XFFDISDATADIS_7TIME0/定时时间显示DISCAN0XFBDELAY80DISCAN0XFFDISDATADIS_7TIME1DISCAN0XFDDELAY80DISCAN0XFF34温度采集程序设计由于DS18B20外接电路极为简单,所以电路连接没有问题,但是在软件编程上,就要求严格按照时序进行读写操作。具体操作如下对DS18B20操作时,首先要将它复位。将DQ线拉低480S至960S,再将DQ拉高15S至60S,然后DS18B20发出60S至240S的低电平作为应答信号,这是主机才能对它进行其它操作。写操作将数据线从高电平拉至低电平,产生起始信号。从DQ线的下降沿起计时,在15S到60S这段时间内对数据线进行检测,如数据线为高电平则写1;若为低电平,则写0。至此,完成了一个写周期。在开始另一个写周期前,必须有1S以上的高电平恢复期。每个写周期必须要有60S以上的持续期。读操作主机将数据线从高电平拉至低电平1S以上,再使数据线升为高电平,从而产生读起始信号。从主机将数据线从高电平拉至低电平15S到60S,主机数据读取。每个读周期最短的持续期为60S。两个周期之间必须有1S以上的高电平恢复期。温度采集程序流程图如图34所示。图34温度采集程序流程图温度采集部分程序如下/DS18B20复位函数/OW_RESETVOIDCHARPRESENCE1WHILEPRESENCEWHILEPRESENCEDQ1_NOP_NOP_/从高拉倒低DQ0DELAY50/550USDQ1DELAY6/66USPRESENCEDQ/PRESENCE0复位成功,继续下一步DELAY45/延时500USPRESENCEDQDQ1/拉高电平/DS18B20写命令函数/VOIDWRITE_BYTEUCHARVALUCHARIFORI8I0IDQ1_NOP_NOP_/从高拉倒低DQ0_NOP_NOP_NOP_NOP_/5USDQVAL/最低位移出DELAY6/66USVALVAL1/右移1位DQ1DELAY1/DS18B20读1字节函数/UCHARREAD_BYTEVOIDUCHARIUCHARVALUE0FORI8I0IDQ1_NOP_NOP_VALUE1DQ0_NOP_NOP_NOP_NOP_/4USDQ1_NOP_NOP_NOP_NOP_/4USIFDQVALUE|0X80DELAY6/66USDQ1RETURNVALUE/读出温度函数/UINTREAD_TEMPUCHARI,JET00OW_RESET/总线复位DELAY100WRITE_BYTE0XCC/跳过ROMWRITE_BYTE0X44/发转换命令,开始温度转换OW_RESET/重新复位DELAY1WRITE_BYTE0XCC/跳过ROMWRITE_BYTE0XBE/读取内部RAM的内容JREAD_BYTE/读温度值的低字节IREAD_BYTE/读温度值的高字节TEMP1ITEMP14TEMPI|J/获取的温度放在TEMP中ET01RETURNTEMP1/返回温度值/温度数据处理函数/WORK_TEMPUINTTEMDISPLAY3TEM/取小数部分的值DISPLAY0DITABDISPLAY3/存入小数部分显示值DISPLAY3TEM4/取中间八位,即整数部分的值DISPLAY1DISPLAY3100/取后两位数据暂存DISPLAY2DISPLAY1/10/取十位数据暂存DISPLAY1DISPLAY110IFDISPLAY2DISPLAY20X0A/最高位为0时不显示35温度控制程序设计本控制系统中,采用的是数字PID控制算法。PID控制器是一种线性控制器,它将设定值与测量值之间偏差的比例(P)、积分(I)、微分(D)通过线性组合构成控制量,对被控对象进行控制。351PID简介1基本原理在模拟控制系统中,控制器最常用的控制规律是PID控制。PID控制系统原理框图如图35所示。图35PID控制系统原理框图PID控制是一种线性控制方法,它根据给定值RT与实际输出值YT构成控制偏差ET,即ETRTYT。对偏差ET进行比例、积分、微分运算,将三种运算的结果相加,就得到PID控制器的控制输出UT。在连续时间域中,PID控制器算法的表达式如下10DTTTEITKPTUT31式中KP为比例系数;TI为积分时间常数;TD为微分时间常数。2基本概念基本偏差ET表示当前测量值与设定目标之间的偏差。设定目标是被减数,结果可以是正或负,正数表示还没有达到,负数表示已经超过了设定值,这是面向比例(PROPORTIONAL)17用的一个变动数据。累计偏差ETETET1ETN这是我们每一次测量得到偏差值的总和,是代数和,要考虑正负号运算的。这是面向积分项(INTEGRAL)用的一个变动数据。基本偏差的相对量ETET1用本次的基本偏差减去上一次的基本偏差,用于考察当前控制对象的趋势,作为快速反应的重要依据,这是面向微分项(DERIVATIVE)用的一个变动数据。三个基本参数KP、KI、KD这是做好一个控制器的关键常数,分别称为比例常数、积分常数和微分常数。不同的控制对象需要选取不同的值,经过现场调试才能获得较好的效果。标准的直接计算公式如下1TEKDTEITEKPTU(32)式(32)中的U(T)直接提供了执行机构的位置,故称为位置式PID算式或点位型PID算式16。3三个基本参数KP、KI、KD在实际控制中的作用比例环节即时成比例地反映控制系统的偏差信号ET,偏差一旦产生,调节器立即产生控制作用以减小偏差。比例作用大,可以加快调节,减少误差,但过大比例会使系统稳定性下降。积分环节主要用于消除静差,提高系统的无差度。积分作用的强弱取决于积分时间常数TI。TI越大,积分作用越弱,反之则越强。微分环节能反应偏差信号的变化趋势变化速率,并能在偏差信号的值变得过大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减小调节时间。PID运算程序流程图如图36所示。图36PID运算程序流程图PID运算部分程序如下STRUCTPIDUNSIGNEDINTSETPOINT/设定目标DESIREDVALUEUNSIGNEDINTPROPORTION/比例常数PROPORTIONALCONSTUNSIGNEDINTINTEGRAL/积分常数INTEGRALCONSTUNSIGNEDINTDERIVATIVE/微分常数DERIVATIVECONSTUNSIGNEDINTLASTERROR/ERROR1UNSIGNEDINTPREVERROR/ERROR2UNSIGNEDINTSUMERROR/SUMSOFERRORSSTRUCTPIDSPID/PIDCONTROLSTRUCTUREUNSIGNEDINTROUT/PIDRESPONSEOUTPUTUNSIGNEDINTRIN/PIDFEEDBACKINPUTUNSIGNEDCHARHIGH_TIME,LOW_TIME,COUNT0/占空比调节参数UNSIGNEDINTS/PID初始化/VOIDPIDINITSTRUCTPIDPPMEMSETPP,0,SIZEOFSTRUCTPID/PID计算部分/UNSIGNEDINTPIDCALCSTRUCTPIDPP,UNSIGNEDINTNEXTPOINTUNSIGNEDINTDERROR,ERRORERRORPPSETPOINTNEXTPOINT/偏差PPSUMERRORERROR/积分DERRORPPLASTERRORPPPREVERROR/当前微分PPPREVERRORPPLASTERRORPPLASTERRORERRORRETURNPPPROPORTIONERROR/比例项PPINTEGRALPPSUMERROR/积分项PPDERIVATIVEDERROR/微分项352温度控制程序设计对于加温的温度控制,可以采用调节供电电压或在一定的时间循环周期内的供电时间比例来实现。一般以调节加温时间比例比较简单,也是控制上比较常用的方法,本文正是选用这种方法。温度比较在主程序中进行,当系统加热器启动加热后,先是迅速升温阶段,当温度比较当前值与设定值小于1度时,启动PID控制,调节PWM输出,控制加热器通断时间比例,抑制升温过快。温度比较子程序流程图如图37所示。图37T0温度比较子程序流程图温度比较处理子程序如下COMPARE_TEMPUNSIGNEDCHARIIFSET_TEMPTEMPIFSET_TEMPTEMP1HIGH_TIME100/全速加热LOW_TIME0ELSEFORI0I1HIGH_TIME0/停止加热LOW_TIME100ELSEFORI0I10IREAD_TEMPRINS/READINPUTROUTPIDCALC/PERFORMPIDINTERATIONIFHIGH_TIME100HIGH_TIMEUNSIGNEDCHARROUT/10000ELSEHIGH_TIME0LOW_TIME100HIGH_TIME加热器的启停工作是在定时器T0中断子程序中完成的。定时器0中断服务子程序如下VOIDTIME0INTERRUPT1TH06553610000/256TL06553610000256IFHEAT_FLAG0IFCOUNTHIGH_TIMEJIARE0GLED0YLED1ELSEIFCOUNT100JIARE1GLED1YLED0ELSECOUNT036定时和报警程序设计当前温度到达设定值后,就启动定时器,开始倒计时。同时,当定时时间到,就执行声光报警。程序流程图如图38所示。图38定时报警程序流程图定时和报警部分程序如下IFTIME_SUM0ET10YLED1T1_FLAG0FORI0I20IBEEPLED0DELAY1100BEEPLED1DELAY110037系统调试首先是系统硬件调试,在硬件调试中,分别对各个模块进行调试。在驱动电路的调试中,滤波电容发生炸裂。首先检查电路连接是否出错或是外围电路元器件是否损坏,结果并未发现任何差错。于是考虑去掉滤波电容调试,结果证明这一方案可行,并且对整个系统并无影响。系统软件的调试主要在KEILVISION3软件中进行,待编译无错后,再下载到单片机中进行整体调试。经逐步调试,DS18B20能正常进行温度采集,LED显示正常,温度控制良好,也能很好的实现定时时间到的报警功能。PID控制最困难的部分就是比例、积分、微分三个参数的设置与调整。编程时只是设定大概的数值,然后通过反复的现场调试才能找到相对比较理想的参数值。而且,面向不同的控制对象时,参数也都各不相同。但是,可以根据这些参数在整个PID过程中的作用原理,来制定相应对策。通过以下对策可以避免盲目的修改参数调试。加温迅速达到目标值,但温度过冲很大。比例系数太大,致使在未达到设定温度前加热比例过高;微分系数过小,对对象反应不敏感。加温经常达不到目标值,小于目标值时间多。比例系数过小,加温比例不够;积分系数过小,对静差补偿不足。基本在控制温度内,但上下偏差大,经常波动。微分系数小,对及时变化反应慢;积分系数过大,使微分反应被钝化。受环境影响较大微分系数小,对及时变化反应慢;设定的基本定时周期过长,不能得到及时修正。38本章总结本章首先介绍了系统软件设计的总流程。然后分模块介绍了各部分功能的程序设计,分别是键盘控制、LED显示、温度采集、温度控制等。简要介绍了DS18B20测温时的读写时序操作,以及对数字PID控制做了简单介绍。PID控制器是一种线性控制器,它将设定值与测量值之间偏差的比例(P)、积分(I)、微分(D)通过线性组合构成控制量,对被控对象进行控制。第4章总结及实验结果41设计总结本文研究了抗酸染色实验恒温箱的温度控制系统。首先,研究了抗酸染色实验的特点及要求指标,确定系统整体方案。由于被控对象恒温箱的温度具有一阶惯性纯滞后的特点,并且干扰较多。针对这一特点,论文提出了数字PID控制方案,以有效的对恒温箱内的温度进行控制。论文以STC89C52单片机为主控制器,DS18B20数字温度传感器为测温器件,和以双向可控硅为加热器件的温度驱动电路,设计了一套完整的恒温箱温度控制系统。硬件设计结构合理,而且全部采用常规器件,成本较低,工作可靠,是一款高性价比的温度控制系统。该系统的一大特点就是可以在规定时间内进行恒温控制,而且目标温度和定时时间都可以由人工设置。与传统的温控系统相比,具有响应快,超调小,精度高,稳定性好等特点,使用按键可以人工设定参数,操作方便,具有报警、定时加热控制等基本功能。可以供生产、科研、医院和计量部门等实验室作恒定温度试验和鉴定温度之用。42实验结果对软硬件进行了整体调试后,基本实现了所有功能。最终进行实验,进一步检测所有功能,以及指标测试。系统硬件和恒温箱实物图分别如图41和图42所示。图41硬件实物图图42恒温箱实物图经过一系列实验数据测试,数据结果记录如表41所示。设定温度/稳定时间/MIN稳定下限/稳定上限/5014995026035986027056987028087998028510848852表41数据结果记录表从测定数据分析可以得出该系统测量的温度误差保持在02左右,而且非常稳定,能够达到系统控制精度的要求。参考文献1何凤珍温度对萋尔_尼尔氏染色镜检找抗酸杆菌方法的影响J临床医药实践,2010125262汤思萍等结核分枝杆菌抗酸染色法影响因素分析J医技与临床,2010,1443503513张方林医用恒温箱干燥箱的改进探讨与应用J医疗卫生装备,2004361624陈乐医用恒温箱控温系统D北京北京交通大学,20075李英顺等基于模糊神经网络的PID温度控制系统J鞍山钢铁学院学报,200264084116邓恩强等利用位置式PID控制算法实现对恒温箱的控制J电子元器件应用20061239407杨树亮等模糊PID在恒温箱温度控制中的应用J自动化仪表,200651491518徐国林基于单片机的保温箱智能温度控制系统J潍坊学院学报,2007420219陈杰等传感器与检测技术M北京高等教育出版社,200216817010李善寿等基于单片机的恒温控制器的设计和实现J计算机技术与发展,20081219719911张毅刚等单片机原理与应用设计M北京电子工业出版社,200812DALLASSEMICONDUCTORDS18B20PROGRAMMABLERESOLUTIONWWWMAXIMICCOM13余瑾等基于DS18B20测温的单片机温度控制系统J200932105106,11214刘小兵等基于51单片机的水温自动控制系统J兰州工业高等专科学校学报,20083495115求是科技8051系列单片机C程序设计完全手册M北京人民邮电出版社,200616王万良自动控制原理M北京高等教育出版社,2008,26126817MOHAMMADAKALIA,MOHAMMADKABUZALATAACLOSEDLOOPTEMPERATURECONTROLSYSTEMBYUTILIZINGALABVIEWCUSTOMEDESIGNPIDCONTROLLERJFACULTYOFENGINEERINGTECHNOLOGYALBALQAAPPLIEDUNIVERSITY,2004结束语几个月的毕业设计结束了,此次毕业设计工作,通过理论联系实际,实践推动理论创新,巩固了我在单片机应用方面的实践技能;进一步增强了自己的动手实践能力,勤动手多动脑;提高我自学能力的同时,也锻炼了我分析问题解决问题的能力;也让我深深体会到实践的乐趣与成功的兴奋。在整个毕业设计的过程中,我困惑过,郁闷过,也烦躁过,但是从一次次的失败中走来,我深深体会到其实,每一次的失败都是为下一次的成功带来曙光总而言之,学习、钻研、创新是一种乐趣由于本人才疏学浅,以及时间紧迫,此篇论文定有很多错误及疏漏之处,敬请老师们批评指正。致谢随着毕业设计的结束,毕业的钟声即将敲响。大学四年来,在母校湖州师范学院培养下,老师们悉心栽培下,同学们的关怀下,我收获良多。在此,让我满怀深情地道声母校,谢谢老师们,您们辛苦了同学们,认识你们真好你们,让我的大学充满意义。为期六个月的毕业设计,导师蔡志端老师给予了我很大帮助。从毕业设计课题的选择到论文的最终完成,蔡老师始终给予我细心的指导和不懈的支持,对我的论文给予了正确的指导,使我能更好、更快地完成毕业论文的设计,衷心感谢我的导师蔡志端老师。导师创新的开拓精神,严谨认真的治学风范,勤奋谦逊的工作态度,以及忘我的工作精神是我终身的学习楷模。同时导师对我耐心的指导和严格的要求使我的学习有了不断提高和收获,并将继续激励我在今后的工作中克服困难,迎接挑战。真诚的向尊敬的导师致以崇高的敬意在实验室学习研究及撰写论文期间,杨颖杰、余思俊、孙雨明等同学对我的研究工作给予了热情帮助,在我遇到很多实际困难的时候能够积极帮助我解决困难,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论