基于单片机的电加热恒温箱控制器设计.docx
《基于单片机的电加热恒温箱控制器设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的电加热恒温箱控制器设计.docx(54页珍藏版)》请在冰豆网上搜索。
基于单片机的电加热恒温箱控制器设计
基于单片机的电加热恒温箱控制器设计
摘要:
恒温箱作为一种重要的工具广泛地应用于医疗、工业生产和食品加工等领域。
在常规的环境参数中,由于温度受其它因素影响较大,且难以校准,温度也是最难准确测量的一个参数。
因此,恒温箱的性能在很大程度上取决于对温度的控制性能。
本设计采用单片机对恒温箱的温度进行PID控制,使其温度稳定在某一个设定值上。
并且具有键盘输入温度给定值、定时时间,LED数码管显示温度值/时间和定时报警的功能,实现了自动控制温度的目的。
基于P89V51RD2的恒温箱温度控制系统主要实现了温度采集、A/D转换、软件滤波、温度控制及定时等功能。
首先,介绍了恒温箱设计的课题背景及意义,并结合设计要求和实际情况选择了设计所涉及到的主要功能器件,同时重点介绍了P89V51RD2、ADC0809、Pt100的主要功能。
其次,阐述了系统的工作原理,完成了系统结构图的设计,把系统划分为5大模块并完成了各大模块的设计工作,同时附以系统硬件电路原理图。
最后,设计了系统的软件。
系统软件是用C语言进行软件设计的,C语言具有指令简单,数据量小等特点。
关键词:
恒温箱;温度控制;单片机;PID控制
TheDesignofElectricityHeatingIncubatorControlSystemBasedontheMCU
Abstract:
Incubatorsasanimportanttoolwidelyusedinmedical,industrialproductionandfoodprocessinginareassuchas.Temperatureisaffectedbyotherfactorsintheconventionalenvironmentalparameters,andalsodifficulttoproofreading;therefore,thetemperatureisoneofthemostdifficulttomeasureaccuratelyparameters.So,Theperformanceoftheincubatortoalargeextentdependsonthetemperaturecontrolperformance.
ThedesignusessinglechipmicrocomputertocontroltheoventemperaturethroughthePIDcontrol,causingitstemperaturecontrolintosupposeinthedefinitevalueinsome.Andthesystemhasthekeyboardentrytemperatureandtimegivenvalue,LEDdisplaystemperature/timingvalueandsurmountingboundaryofthetimereportsoutside.Itrealizestemperaturecontrolautomatically.
BasedonP89V51RD2,theoventemperaturecontrolsystemmainrealizestemperaturecollection,A/Dconversion,softwarefiltering,PIDcontrolandtimingfunctions.
First,thepaperintroducesthebackgroundofthesubject.Combinedwiththedesignrequirementsandtheactualsituationofthedesign,themaindevicesthatrelatedtosubjectareconfirmed.AtthesametimethemainfunctionsofP89V51RD2,ADC0809,Pt100iswrittendown.
Secondly,itdescribestheprincipleofthesystem,andachievestheconcretestructurephotoofthedesign.Thesystemisdividedintofivemodulesandeverymajormoduleofthedesigniscompleted.Thehardwarecircuitschematicsofthesystemisattachedatlast.
Finally,thesoftwareofthesystemisdesigned.ThesystemsoftwareiswrittenbyClanguage,itisbecausetheprogrammerunsfaster,andsavesstoragespace.
KeyWords:
incubator;temperaturecontrol;single-chipmicrocontroller;PIDcontrol
基于单片机的电加热恒温箱控制器设计
1概述
1.1课题研究背景
二十一世纪是科技高速发展的信息时代,电子技术、微型单片机技术的应用更是空前广泛,是随着超大规模集成电路技术的发展而诞生的。
由于它具有体积小、功能强、性价比高等特点,所以广泛应用于电子仪表、家用电器、节能装置、军事装置、机器人、工业控制等诸多领域,使产品小型化、智能化,既提高了产品的功能和质量,又降低了成本,简化了设计。
它迅猛发展到了各个领域,人们也越来越感到应用单片机技术的优越性,因而单片机也得到了广泛的应用。
同时,它也在不断地完善和发展。
电加热恒温箱的温度是医疗、工业生产和食品加工等领域的关键,因此对温度的测量及控制始终占据着重要的地位。
市场上常见的温度传感器以电压输出为主要形式,不同的传感器其非线性曲线也各不相同,缺乏一个产品应具备的通用性和互换性。
温度传感器应用范围很广、使用数量很大,但是在常规的环境参数中,由于温度受其它因素影响较大,而且难以校准,因此,温度也是最难准确测量的一个参数。
常规方法测量温度误差大、准确度低、测量滞后的时间长。
近年来,国内传感器正向着集成化、智能化、网络化和单片系统化的方向发展,为开发新一代温度测量系统创造了有利条件。
在电加热恒温箱控制器系统的设计中,由电阻式温度传感器测量温度值并转换成电压信号,由变送器转换成标准的电压信号,经A/D转换器进行模数转换并读入单片机,经单片机处理后的温度数值,一方面送LED数码管显示;另一方面与给定值进行比较,并判断是否超限,将发出报警信号,提醒人注意并采取相应措施;否则正常显示温度数值,然后根据偏差值进行控制计算。
从而进行温度的调节,使其达到指定要求。
实践证明,现在采用电阻丝加热,不仅有利于避免在常规测温方法中测量误差大、准确度低、测量滞后时间长等问题,而且在节约能源和改善环境方面本设计显示出一定的优越性。
恒温箱主要是用来控制温度,它为农业研究、生物技术、测试提供所需要的各种环境模拟条件,因此可广泛适用于药物、纺织、食物加工等无菌试验、稳定性检查以及工业产品的原料性能、产品包装、产品寿命等测试。
随着单片机的飞速发展,通过单片机对被控对象进行控制日益广泛,具有体积小、功能强、性价比高等特点,把单片机应用于温度控制系统中可以起到更好的控温作用,恒温箱是使用单片机进行温度控制的典型应用,采用单片机做主控单元,可完成对温度的采集和控制等的要求。
1.2课题研究意义
恒温箱的性能在很大程度上取决于对温度的控制性能,本课题采用单片机为主控制器,通过传感器测得箱内温度,再通过A/D转换器将采样输入的模拟量转换成数字量送入主控制器,来完成恒温箱的温度控制系统的硬件。
箱内温度可保持在设定的温度范围内,当设置的温度低于当前的温度时,单片机通过双向晶闸管控制加热电路连通,温度慢慢升高;当设置的温度高于当前的温度时,单片机通过双向晶闸管控制加热电路断开,温度慢慢下降。
本课题在原有普通传感器的基础上,经单片机处理而成新一代测量控制仪器,具有以下显著特点:
A.多功能的智能化测控系统,以最简单方式构成高性价比;
B.在硬件基础上通过软件实现测控功能,其智能化程度取决于软件的开发水平;
C.留有通信端口,可以将信息进行远距离传输,便于形成分布式控制系统。
1.3课题研究内容
产品的工艺不同,控制温度的精度也不同,因而所采用的控制算法也不同。
就温度控制系统的动态特性来讲,基本上都是具有纯滞后的一阶环节,当系统精度及温控的线性性能要求较高时,多采用PID算法或达林顿算法来实现温度控制。
单片机外围电路包括传感器电路、键盘电路、数码显示电路、定时报警电路、和加热电路。
系统工作流程为:
开机后,用户通过按键设定定时时间和需加热到的温度,默认先输入的为时间。
温度传感器Pt100采集当前温度的模拟信号,信号经过运算放大器两级放大后送给A/D转换器,经A/D转换成数字量再送给单片机,单片机通过PID算法计算发出控制指令控制晶闸管的通断,根据晶闸管的通断的时间长短来控制电加热器加热的功率,使温度达到用户设定值上,且误差不超过2℃。
在这个过程中,定时时间一到,蜂鸣器发出声音进行报警。
完成的工作内容:
A.在明确恒温箱温度控制系统功能要求的前提下绘制出系统的结构图;
B.根据恒温箱温度控制系统工作原理框图和系统的结构图以P89V51RD2芯片为核心,选择控制系统所需的硬件并画出硬件电路原理图;
C.了解基于P89V51RD2的恒温箱温度检测控制系统的C51部分软件程序,并编写软件程序;
D.总结在设计过程中所出现的错误,避免将来在工作中出现同样的问题。
2总体设计方案
2.1课题要求
恒温箱在日常生活和工业生产中都有着广泛的应用。
本课题采用单片机实现对温度的控制,对温度的控制精度有较高的要求。
该系统具体需要满足的要求如下:
A.温度控制范围:
室温~250℃,控制精度(±2℃);
B.定时时间:
0~24小时范围内灵活定时或长期定时;
C.显示:
采用4位LED七段码显示恒温箱内温度和定时时间;
D.提示功能:
定时时间到,进行声音提示。
2.2系统总体设计
系统整体硬件结构框图如图2-1所示,采用P89V51RD2作为主机;由电阻式温度传感器测量温度值并转换成电压信号经过放大,再经A/D转换器进行模数转换,由I/O接口读入CPU,CPU进行数据处理。
处理后的数据,一方面送LED数码管显示;另一方面与检测开关设定的温度控制值进行比较,并判断是否超限,通过PID控制算法进行调节,运算结果返回单片机,现在采用电阻丝加热,从而进行温度的调节,以保持恒定的温度。
图2-1系统硬件结构框图
2.3系统功能模块方案设计
2.3.1单片机的选择
单片机的种类繁多,Intel公司的MCS-518位单片机系列、MCS-9616位单片机系列;Atmel的AT89、AVR系列;Philips的P89V51、LPC700/9008位单片机系列、LPC200016/32系列;Motorola公司的MC68HC9088位单片机系列、DSP型16位单片机。
方案一:
选择8031单片机
8031单片机是Intel公司生产的MCS-51系列单片机中的一种,除无片内ROM外,其余特性与MCS-51单片机基本一样。
采用40个引脚的8031芯片。
该芯片有4个8位并行I/O接口:
P0、P1、P2、P3,128个字节的片内数据存储器,但没片内程序存储器,需扩展,价格便宜。
方案二:
选择P89V51RD2单片机
采用有40个I/O口的P89V51RD2。
P89V51RD2是Philips公司新推出的一款功能非常强大的微处理器。
P89V51RD2采用51内核,内部集成了64kBFlashROM和1024字节的数据RAM,5V工作电压,操作频率为0~40MHz,并且支持12时钟(默认)或6时钟模式(每个机器周期包含6个时钟),选择6时钟模式时可在相同时钟频率下获得2倍的吞吐量,同时,另一个好处在于,可以在保证处理速度不变的情况下,将时钟频率减半,这样可以极大地降低系统的EMI。
P89V51RD2还集成了SPI(串行外围接口),增强型UART,PCA(可编程计数器阵列),具有PWM和捕获/比较功能,尤其是P89V51RD2支持在系统软件调试和在系统编程的功能,这使得我们在用其开发产品时可以完全抛开仿真器和编程器,进而大大减少了产品开发的成本和时间。
对于恒温箱这一控制对象来说,芯片的性能比8031,8051等单片机要优越的多,其劣势在于价格较贵。
但是可以实现在线仿真,用起来比较方便。
方案三:
选择AT89C51单片机
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMb-FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用Atmel高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,Atmel的AT89C51是一种高效微控制器。
使用P89V51RD2单片机,完全可以抛开仿真器和编程器,简化了设计,所以本次设计采用方案二。
P89V51RD2的典型特性是它的X2方式选项。
利用该特性,设计工程师可使应用程序以传统的80C51时钟频率(每个机器周期包含12个时钟)或X2方式(每个机器周期包含6个时钟)的时钟频率运行,选择X2方式可在相同时钟频率下获得2倍的吞吐量。
从该特性获益的另一种方法是将时钟频率减半而保持特性不变,这样可以极大地降低电磁干扰(EMI)。
Flash程序存储器支持并行和串行在系统编程(ISP)。
并行编程方式提供了高速的分组编程(页编程)方式,可节省编程成本和上市时间。
ISP允许在软件控制下对成品中的器件进行重复编程。
应用固件的产生/更新能力实现了ISP的大范围应用。
P89V51RD2也可采用在应用中编程(IAP),允许随时对Flash程序存储器重新配置,即使是应用程序正在运行也不例外。
2.3.2显示电路的选择
在单片机系统中常用的显示电路有LED显示、LCD显示。
方案一:
选择LED显示
采用七段码显示时,数码管中的每一段相当于一个发光二极管。
对于共阳极的数码管,内部每个发光二极管的阳极被连在一起,成为该各段的公共选通线,发光二极管的阴极则成为段选线。
对于共阴极数码管,则正好相反,内部发光二极管的阴极接在一起,阳极成为段选线。
这两种数码管的驱动方式是不同的。
当需要点亮共阳极数码管的一段时,公共段需接高电平,该段的段选线接低电平。
从而该段被点亮。
当需要点亮共阴极数码管的一段时,公共段需接低电平,该段的段选线接高电平,该段被点亮。
方案二:
选择LCD显示
C系列LCD显示可以显示字母、数字符号、中文字型及图形,具有绘图及文字画面混合显示功能。
提供三种控制接口,分别是8位微处理器接口,4位微处理器接口及串行接口(OCMJ4X16A/B无串行接口)。
所有的功能,包含显示RAM,字型产生器,都包含在一个芯片里面,只要一个最小的微处理系统,就可以方便操作模块。
内置2M-位中文字型ROM(CGROM)总共提供8192个中文字型(16x16点阵),16K-位半宽字型ROM(HCGROM)总共提供126个符号字型(16x8点阵),64x16-位字型产生RAM(CGRAM),另外绘图显示画面提供一个64x256点的绘图区域(GDRAM),可以和文字画面混和显示。
提供多功能指令:
画面清除(Displayclear)、光标归位(Returnhome)、显示打开/关闭(Displayon/off)、光标显示/隐藏(Cursoron/off)、显示字符闪烁(Displaycharacterblink)、光标移位(Cursorshift)、显示移位(Displayshift)、垂直画面卷动(Verticallinescroll)、反白显示(By_linereversedisplay)、待命模式(Standbymode)。
为了较方便的显示LED,本系统采用了直接三极管驱动LED,然后再接到单片机上去,这大大的降低了成本,也节省了元器件。
它还具有可用程序来实现多种功能、通用性强、使用灵活的特点。
如果使用LCD显示在经济上不能降低成本,编程也比较繁琐,反而显得不合理。
故选择用LED作为显示电路。
2.3.3键盘电路的选择
一般键盘电路有两种:
独立式键盘和矩阵式键盘。
方案一:
选择独立式键盘
独立式键盘中,各按键相互独立,每个按键各接一根输入线,每根输入线上的按键工作状态不会影响其它输入线上的工作状态。
因此,通过检测输入线的电平状态就可以很容易的判断按键是否被按下了。
独立式键盘电路配置灵活,软件结构简单。
但每个按键需占用一根输入线,在按键数量较多时,输入口浪费大,电路结构显得很繁杂,故此种按键适用于按键较少或操作速度较高的场合。
方案二:
选择矩阵式键盘
矩阵式键盘由行线和列线组成,按键位于行、列的交叉点上,分别连接到按键开关的两端。
行线通过上拉电阻接到VCC上。
平时无按键动作时,行线处于低电平状态,而当有按键按下时,列线电平为低,行线电平为高。
这一点是识别矩阵式是否被按下的关键所在。
因此,各按键彼此将相互影响,所以必须将行、列线信号配合起来并作适合的处理,才能确定闭合键的位置。
很明显,在按键数量较多的场合,矩阵式键盘与独立式键盘相比,要节省很多的I/O口。
由于本系统只有两个按键,故选择独立式键盘。
2.3.4温度采集电路的选择
传感器的选择:
目前,温度传感器没有统一的分类方法。
按输出量分类有模拟式温度传感器和数字式温度传感器。
按测温方式分类有接触式温度传感器和非接触式温度传感器。
按类型分类有分立式温度传感器(含敏感元件)、模拟集成温度传感器和智能温度传感器(即数字温度传感器)。
温度传感器的从测量原理分为,体积热膨胀,电阻变化,热电效应(热电偶),压电效应频率变化,光学反应等温度传感器,它们各自有自己的优缺点,利用体积热膨胀的温度传感器,不需要用电。
电阻温度传感器分为铜电阻,中等精度价格低;铂电阻高精度价格高;热敏电阻,精度低灵敏度高。
热电效应温度传感器,温度范围宽,测量精度高但需要冷端补偿。
利用压电效应和频率变化改变输出值的温度传感器可以作为标准使用。
利用光学变化改变温度传感器适合高温非接触测量。
温度传感器是最早开发,应用最广的一类传感器。
常用的温度传感器有热电阻、热敏电阻和热电偶。
在半导体技术的支持下,本世纪相继开发了半导体热电偶传感器、PN结温度传感器和集成温度传感器。
与之相应,根据波与物质的相互作用规律,相继开发了声学温度传感器、红外传感器和微波传感器。
方案一:
选择热电偶传感器
热电偶作为测温原件具有结构简单、较高的精准度、测量范围宽、具有良好的敏感度等优点,在温度测量中应用最为广泛。
热敏电阻是用一种半导体材料制成的敏感原件,其特点是电阻随温度变化而显著变化,能直接将温度的变化转换为能量的变化,具有灵敏度高、体积小、较稳定、动态特性好等优点,常用于远距离测量和控制中。
方案二:
选择热电阻传感器
热电阻在工业上广泛应用于测量-200~+500℃范围的温度,随着科技的发展热电阻温度计的测量范围低温端可达-272.5℃左右,高温端可测到1000℃。
热电阻温度传感器的特点是精度高,适宜测低温。
在560℃以下的温度测量中,它的输出信号比热电偶容易测量。
恒温箱的温度一般在室温~250℃范围内,范围比较窄,也比较低,对精度的要求也比较低,综合考虑热电阻、热电偶和热敏电阻的特点,选用热电阻比较好。
另外,热电阻又有铂电阻、铜电阻、铁电阻和镍电阻等,各有其特点,由于铂电阻稳定性好,性能可靠,所以本设计选用了常用的铂电阻Pt100作为温度传感器。
方案三:
选择MAX6577作为传感器
MAX6577作为温度传感芯片,这是一种将温度转换为均衡频率方波的传感器(温度→频率),其主要特点如下:
A.方波输出,无需A/D转换与单片机计数端直接相连。
B.温度测量范围-40~+125℃。
C.较低的测量误差。
测量温度是+25℃时,误差范围为±0.8℃;测量温度是+125℃时,误差范围为±0.5℃。
D.不需外接元件,体积小(最大3mm×3mm),适合用作温度测量探头。
需要注意的是,该传感芯片将温度转换为频率是以绝对温度(K)为前提,因此对频率的计数结果应减去273才能得到摄氏温度,这当然可以在软件编写时方便地做运算处理。
由于本设计的控制温度范围在室温~250℃,除了方案二的铂电阻,其他的都达不到要求,所以本设计选择方案二。
A/D转换芯片的选择:
A/D转换器把传感器采集的模拟量输入转换成单片机所能识别的数字量信号。
A/D转换器的种类分为双积分A/D转换器如ICL7109,逐次逼近型A/D转换器如ADC0809和并型A/D转换器。
双积分A/D转换器的精度高,抗干扰性好,价格便宜,但是速度较慢,逐次逼近型A/D转换器的精度,价格,速度适中,并型A/D转换器,速度快价格也昂贵,本设计综合考虑采用逐次逼近型A/D转换器ADC0809。
单片机与A/D转换器接口电路的主要功能是:
A.通过I/O输出通道启动转换或直接输出指令启动转换。
启动转换的方式完全由A/D内部电路结构而定。
B.把转换好的数据送入CPU。
C.当确定使用A/D转换器以后,按下列原则选择A/D转换器芯片。
A)根据前向通道的总误差,选择A/D转换器精度及分辨率。
B)根据信号对象的变化率及转换精度要求,确定A/D转换速度,以保证系统的实时性要求。
C)根据环境条件选择A/D转换芯片的一些环境参数要求,如工作温度、功耗、可靠性等级性能。
D)根据单片机接口特征,考虑如何选择A/D转换器的输出状态。
其它,还要考虑到成本、资源、是否是流行芯片等因素。
由于各A/D转换器的性能指标不一样,速度相差很大,一般需要有数10uS以上的转换时间,因此在单片机发出转换命令后,需等待转换结束方可读取数据。
常用的有程序查询输入方式和中断方式。
INT7和INT6两个输入端分别接地和AD参考电源,是为了实现数字自动调零和抑制电源波动对转换的影响,并可供微机仪表实现自校用。
ADC0809的内部结构框图如图2-2所示,本系统采用ADC0809构成A/D转换电路。
ADC0809是CMOS单片型逐次逼近式A/D转换器,内部结构它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型D/A转换器、逐次逼近寄存器、三态输出锁存器等其它一些电路组成。
因此,ADC0809可处理8路模拟量输入,且有三态输出能力,既可与各种微处理器相连,也可单独工作。
输入输出与TTL兼容。
由于ADC0809的片内无时钟,它的时钟频率在10KHZ—1280KHZ之间。
可利用AT89C52提供的地址锁存允许信号ALE经D触发器二分频所得,ALE脚的频率是AT89C52单片机时钟频率的1/6。
由于ADC0809具有输出三态锁存器,故