微波炉设计论文.docx
《微波炉设计论文.docx》由会员分享,可在线阅读,更多相关《微波炉设计论文.docx(21页珍藏版)》请在冰点文库上搜索。
![微波炉设计论文.docx](https://file1.bingdoc.com/fileroot1/2023-5/29/44ecda58-e675-4ba9-941c-f2886f1d19fa/44ecda58-e675-4ba9-941c-f2886f1d19fa1.gif)
微波炉设计论文
基于单片机的可编程
微波炉控制器系统设计报告
作者:
刘蓓辉、程澄、刘克厚
设计时间:
2011.04.15
第1章摘要
1.1课题设计来源
1.2主要研究的工作
2.3软件设计
第3章方案比较与论证
3.1主控制器选择方案
3.2时钟电路选择方案
3.3键盘部分选择方案
3.4档位和火力显示电路选择方案
3.5显示电路选择方案
3.6音响发生电路选择方案
3.7温度测量选择方案
4.1门电路设计
4.6温度测量电路设计
4.8DS1302时钟设计
第6章系统测试
6.1测试及制作所用仪器
6.2测试结果
6.3误差分析
----结论
附录二:
软件设计程序
第1章摘要
1.1课题设计来源
近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格便宜,工作可靠,使用方便等特点,因此特别适合于与控制有关的系统,越来越广泛地应用于自动控制,智能化仪器,仪表,数据采集,军工产品以及家用电器等各个领域,单片机往往是作为一个核心部件来使用,在根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。
在生活和生产的各领域中,凡是有自动控制要求的地方都会有单片机的身影出现;从简单到复杂,从空中、地面到地下,凡是能想像到的地方几乎都有使用单片机的需求。
现在尽管单片机的应用已经很普遍了,但仍有许多可以用单片机控制而尚未实现的项目,因此,单片机的应用大有想像和拓展空间。
单片机的应用有利于产品的小型化、多功能化和智能化,有助于提高劳动效率,减轻劳动强度,提高产品质量,改善劳动环境,减少能源和材料消耗,保证安全等。
由于数字集成电路技术的发展和采用了先进的石英技术,使自动控制具有计算准确、性能稳定、携带方便等优点。
单片机应用的意义绝不仅限于它的广阔范围以及所带来的经济效益上,更重要的意义还在于:
单片机的应用正从根本上改变着传统的控制系统设计思想和设计方法。
从前必须有模拟电路或数字电路实现的大部分功能,现在已能使用单片机通过软件(编程序)方法实现了。
这种以软件取代硬件并提高系统性能的控制系统“软化”技术,称之为微控制技术。
微控制技术是一种全新的概念,是对传统控制技术的一次革命。
随着单片机应用的推广普及,微控制技术必将不断发展、日益完善和更加充实。
随着电子技术的飞速发展,家用电器和办公电子设备逐渐增多,不同的设备都有自己的控制器,使用起来很不方便。
根据这种实际情况,设计了一个单片机多功能定时系统,它可以避免多种控制器的混淆,利用一个控制器对多路电器进行控制,同时又可以进行时钟校准和定点打铃。
它可以执行不同的时间表(考试和日常作息时间)的打铃,可以任意设置时间。
这种具有人们所需要的智能化特性的产品减轻了人的劳动,扩大了数字化的范围,为家庭数字化提供了可能。
微波炉控制系统设计采以微控制器(MCU)为核心,基于KeiluVision3编制软件系统,结合数码管(LED)或液晶(LCD1602或12864)显示以及必要的外围电路,比如温度检测,按键输入,时钟定时,温度显示,火力输出模拟和档位选择等等,完成微波炉的可编程智能控制。
系统由计时控制、档位选择、火力设定、用户界面、温度测试、音响发生几大模块组成。
能够根据键盘输入完成相应的功能,同时使用LED或LCD显示出系统当前的工作状态。
1.2主要研究的工作
本文的主要工作是掌握单片机应用技术,显示技术,电子技术等相关知识,设计制作一个微波炉控制器电路,具有三档微波加热功能,分别表示微波加热为烹调(cooking)、烘烤(barbecue)、解冻(unfreeze),具有三档火力选择功能,分别表示为大火、中火、小火,试验中用LED模拟。
示意图如图1:
图1.系统设计图
实现工作步骤:
复位待机——〉检测显示电路——〉设置输出功能和定时器初值——〉启动定时和工作开始——〉结束烹调、音响(蜂鸣器)提示。
在上电或手动按复位键时,控制器输出的微波功率控制信号为0,微波加热处于待机状态,时间显示电路显示为当前的时间日期。
具有4位时间预置电路,按键启动时间设置,最大预设数为99分99秒。
设定初值后,按开启键,一方面按选择的挡位启动相应的微波加热;另一方面使计时电路以秒为单位作倒计时并显示当前加热的温度值。
当计时到时间为0则断开微波加热器,并给出声音提示,即扬声器输出2~3s的双音频提示音。
然后系统回到待机状态。
具体的问题有:
(1)如何进行时间设置(分、秒)和时钟倒计时功能;
(2)如何设计火力档位控制;
(3)如何设置功能档位控制;
(4)如何设计显示模块显示时间;
(5)如何设计按键设置;
(6)如何设计音响(蜂鸣器)提示声音;
(7)如何设计加热温度的采集和显示;
第2章系统总体概述
2.1工作原理
微波炉工作分四个步骤分别为:
系统待机—功能选择—用户设定—微波炉加热—火力档位选择—开始倒计时加热—加热完成响音提示。
主要系统流程如下图2:
图2.主要系统流程图
系统上电自检后,LCD第一页第一行显示HNUSTXINXI(湖南科技大学信息学院)第二行显示microwave(微波炉)字样,LCD第二页显示当前的时间和日期,利用时钟芯片DS1302控制,掉电后数据不丢失,档位选择直接在液晶上显示出来(分别表示烹调(cooking)、烘烤(barbecue)、解冻(unfreeze)并通过三个不同的发光二极管LED1、LED2、LED3进行相应显示,火力档位通过三个发光二极管LED4、LED5、LED6显示(分别表示大火、中火、小火)。
键盘分按键K1、K2、K3、K4、K5、K6、K7、K8、K9、RST十个按键。
K1、K2、K3键主要用来对时间的设定,K1用来对分钟、秒的调节之间进行切换,K2用来进行时间的加法运算,K3用来进行时间的减法运算;K4键为火力选择键.选择之后会有相应火力的模拟LED显示;K5、K6、K7键为档位选择键,选择后会分别在液晶和相应的LED上显示相应的功能;K8键为检测显示电路,待机状态检测LED的好坏;K9为炉门检测键,当打开炉门时会让系统进入暂停状态,以完善微波炉的工作。
RST为复位键,选择之后会进入待机状态。
微波炉启动LCD开始倒计时并显示当前的温度,当倒计时到零分零秒时,微波炉会自动关闭,此时扬声器会发出提示声音。
系统回到待机状态。
2.2电路设计
系统以STC89C52单片机为核心,连接各外部电路完成人机交互等各功能的控制。
系统的总体框图如下图3:
电路设计部分以单片机控制电路为核心由定时器电路,显示电路,键盘电路,门电路,电源电路,音响发声电路,火力输出电路,档位显示电路,温度显示电路共同组成微波炉控制系统电路。
2.3软件设计
考虑到本系统所编程的数据量比较大并且要求系统有较高的灵活性故采用C语言进行程序的编写,利用KeiluVision3作为系统的仿真软件。
利用STC-ISP-V4.78-NOT-SETUP软件进行单片机程序的写入。
软件界面如图4和图5:
图4.KeiluVision3软件界面
图5.STC-ISP软件界面
第3章各模块方案比较与选择
系统设计包含显示电路,键盘电路,计时控制电路,档位选择火力输出电路,音响发生电路,温度检测等多个部分,每个部分都可以采用不同的方案来实现,但不同的方案有实现的难易的不同,所以通过思考分析,最终做出最好的选择,使之更加科学和合理。
下面对各部分设计方案做分析和选择。
3.1主控制器选择方案
方案一:
采用数字逻辑芯片。
本系统有功能设置、数据装入、定时、显示、音响控制多个功能模块。
各个状态保持或转移的条件依赖于键盘控制信号。
由于键盘控制信号繁多,系统的逻辑状态以及相互转移更是复杂,用纯粹的数字电路或小规模的可编程逻辑电路实现该系统有一定的困难,需要用中大规模的可编程逻辑电路。
这样,系统的成本就会急剧上升。
因此,本设计并未采用这种方案。
方案二:
采用单片机作为整个控制系统的核心。
鉴于市场上常见的51系列8位单片机的售价比较低廉,我们的设计采用了STC89C52单片机系统。
负责系统的控制与协调工作。
利用单片机多中断源的协调处理能力,通过中断接收键盘送来的信号,确认功能设置,实现数据装入,同时接收定时器的秒脉冲信号作为基准信号,完成计时任务。
综合考虑以上因素,我们采用了方案二。
3.2时钟电路选择方案
计时控制模块是系统设计的核心,用来完成基本功能中的加热倒计时,以及时间显示功能。
方案一:
使用专用时钟芯片。
使用微控制器控制专用时钟芯片实现计时控制,这种方案有着计时精度高、控制简单的优点,而且更易于实现日期/时间显示、定时烹调等计时扩展功能。
方案二:
采用单片机内部定时器。
51单片机内部含有3个定时器,可以利用一个定时器与程序计数器相结合的方式,在系统晶振的驱动下,产生标准时钟频率。
由于方案二具有较好的灵活性、较少的电路器件和较高的性价比,而且通过精确的软件补偿使精度完全可以满足控制需要,所以我们选择该方案二单片机内部的定时器完成微波炉的定时设计。
另外,利用时钟芯片进行硬件扩展,显示当前的时间日期,还可以防止掉电失去时间信息。
3.3键盘部分选择方案
方案一:
采用阵列式键盘。
此类键盘是采用行列扫描方式,优点是当按键较多时可以降低占用单片机的I/O口数目,缺点是电路复杂且会加大编程难度。
方案二:
采用独立式按键电路。
每个键单独占有一根I/O接口线,每个I/O口的工作状态互不影响,此类键盘采用端口直接扫描方式。
缺点是当按键较多时占用单片机的I/O数目较多,优点是电路设计简单,且编程极其容易。
由于该系统采用了常规钟表式的校对方式,用键较少,而且系统资源足够用,故采用了方案二。
3.4档位和火力显示电路选择方案
方案一:
通过单片机的一个I/O端口经译码器或转换器控制六个输出端口进行档位和火力显示控制。
这种方案可以节省单片机接口资源。
方案二:
直接利用单片机的六个I/O端口进行档位控制。
这种方案电路简单。
由于在本设计系统中单片机有充足的I/O端口资源,为了保证系统的稳定性和电路的简单化,采用方案二进行档位火力输出模拟显示。
3.5显示电路选择方案
方案一:
采用数码管显示。
数码管通过设置可以完成制作任务,经济耐用,但其显示不够直观、提供信息量少、不易理解等缺点。
通过分时轮流控制各个数码管的COM端,就使各个数码管轮流受控显示,在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。
方案二:
采用液晶1602显示。
液晶1602具有字母符号等显示功能,来实现显示功能,不仅可以实现基本的显示信息,而且可以显示丰富的符号指示信息,信息量丰富且直观易懂。
而且液晶显示有功耗低,体积小,重量轻,寿命长,不产生电磁辐射污染等优点。
综合考虑,考虑直观,美观等实用问题,故采用方案二。
另外在硬件方面也扩展数码管的显示电路,以用作备份使用。
3.6音响发生电路选择方案
方案一:
微控制器直接控制发生。
MCU直接输出两路不同频率的脉冲信号,叠加成为双音频信号,经三极管驱动后送扬声器。
方案二:
采用555振荡器实现双音频输。
采用两片555振荡器分别发生不同频率的音频,由单片机控制输出,在电阻上叠加后经功率放大电路推动扬声器发声。
但硬件较复杂。
由于MCU输出直接驱动扬声器的电路简单,故采用方案一。
3.7温度测量选择方案
方案一:
利用热敏电阻或者热电偶等传感器进行测量。
该方案对于测量精度要求高,测量温度范围宽的场合应用比较广泛。
但硬件软件都比较复杂。
方案二:
利用集成温度传感器DS18B20进行测量。
DS18B20测温范围为-55-100摄氏度。
而且测量的温度直接转化为数字量,使用非常方便。
但精度不如前者。
由于对环境温度测量,只是一种辅助功能,而且对温度的精度要求不高,所以我们采用了方案二。
第4章系统硬件设计
4.1门电路设计
在微波炉工作过程中如果突然打开微波炉炉门,微波炉将根据当时的工作状态停止加热并报警。
这样可以有效避免非法操作带来的后果。
电路图如下图5:
VCCC
图6.门电路
当微波炉炉门打开时开关断开,当炉门关闭时开关接通。
在设计中使用外部中断进行控制:
当开关一直按下时,电路进入暂停状态,等待放入或拿出物品;当松开按键则恢复到中断前的状态继续进行各种功能,设计人性化。
4.2时钟电路设计
时间显示功能被用来在待机状态显示当前的时间。
允许手动调教,为了实现上述功能,在设计中,我们采用STC8C52的内部定时器2与软件计数器相结合的方式获得1Hz的时钟。
定时器2自动装入模式以保证精度。
这时定时器周期T可由下式表示:
T=(28−K)×12/CLK
其中K为定时器初值、CLK为系统晶振。
我们选定CLK为12MHz,K为6。
从式中不难看出,这时要获取1Hz的时钟,计数器的预置数N应对T/1取整,即:
N=[12000000/12×(256-6)]=4000
则系统获取的时钟频率即为:
f=12/12000000×(28-6)×4000=1Hz
完全可以满足系统的计时要求。
4.3键盘模块电路设计
由于系统资源足够用,采用每个键单独占有一根I/O接口线,每个I/O口的工作状态互不影响.
在按键设计中K1,K2,K3,K4,K5,K6,K7,K8,K9分别连入单片机I/O接口。
通过单片机内部判断这9个I/O接口来确定按键是否被按下。
K1,K2,K3键分别为时间的加减设定;K4用来控制火力的档位选择;K5,K6,K7键为档位选择键,选择后会在液晶上显示出相应的档位;K8键为检测显示电路;K9键为中断键,用来进行炉门检测;为了防止电路出现异常而无法控制特设计了一个复位按键RST。
键盘电路设计如图7和如图8所示:
图7.控制按键电路
图8.复位按键电路
4.4档位和火力显示电路设计
功能选择档位显示由液晶1602直接显示并通过相应的LED二极管表示,分别代表“烹调(cooking)”、“烘烤(barbecue)”、“解冻(unfreeze)”三个档位;通过单片机的三个I/O端口输出信号分别模拟控制火力大小;三个发光二极管分别表示大火,中火,小火;电路图如图9:
图9.档位和火力显示电路
4.5LCD-1602电路设计
显示模块用液晶1602显示,液晶1602为工业字符型液晶,能够同时显示16x02即32个字符(16列2行),可以显示阿拉伯数字、英文字母的大小写、常用的符号,1602字符型LCD通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线。
电路图如图10:
图10.液晶1602引脚说明
4.6温度测量电路设计
温度测量利用集成温度传感器DS18B20进行测量,并在LCD上显示出当时的温度。
大约每秒钟测一次温度。
电路图如图11:
图1118B20温度测量电路
音响(蜂鸣器)发生部分利用微控制器直接控制。
MCU直接输出两路不同频率的脉冲信号,叠加成为双音频信号,经三极管驱动后送扬声器。
电路图如图4.7.1。
图12.音响发生电路
4.8DS1302时钟设计
DS1302是DALLAS公司推出的涓流充电时钟芯片,在此次微波炉设计中进行时间的核对的同时还可以用来显示时间(掉电自动走时)。
电路图如图13:
图13.时钟电路
4.9电源电路设计
为了更好的产一个稳定5V左右的电压,在此特用了一个改进的电源,通过220V交流电经充电器而变成一个稳定5V电压电源给电路提供电源。
第5章系统软件设计
系统程序总体可以分成主程序部分和其它模块程序部分。
主程序根据系统的工作流程,系统共分为四个状态分别是:
系统待机状态(初始化状态,主要由1602来显示相关状态),用户设置状态(功能档位和火力档位的选择),微波炉加热并显示当前温度状态(由温度传感器来不断刷新温度的变化)和加热完成响音(蜂鸣器进行相应反应)提示状态。
其他模块程序包括显示程序(1602部分),计时程序(有STC80C52内部的定时器来控制)等。
各个部位能够相互协调工作,下面分别对这这些程序进行详细设计。
系统模式整体流程图:
用户设定程序流程图
5.1显示程序设计
显示程序通过LCD液晶1602显示。
显示选择的档位,当前温度和时间和初始化部分。
5.2计时程序设计
通过单片机内部定时器2进行时间控制,单片机外接12M晶振,在主程序中设置定时器初值来获得1Hz的中断。
5.3系统待机状态设计
接通电源后系统进入待机状态,此时显示器显示待机画面,当打后系统将进入用户设置状态。
系统通过判断单片机P3.2接口的输入电压来判断微波炉炉门是否开启,具体流程图如图如下图14:
图14.系统待机状态图
5.4用户设定状态设计
在用户设定状态用户通过按键进行档位和时间的设定,再微波炉炉门关闭的状态下进入加热状态,按K4,K5,K6键用户可以在三个档位上进行切换,按K1,K2和K3键进行时间加减设定。
如下图15:
调整时间
图15.用户设定状态图
5.5微波炉加热状态
微波炉功能选择有三种,分别为烹调(cooking)、烘烤(barbecue)、解冻(unfreeze)。
跟据用户之前设置的档位系统会进入相应的加热状态。
系统进入加热状态之后可以对火力档位进行选择加热分别为大火、中火、小火,三种火力通过不同的LED来进行模拟。
具体状态图如下图16所示:
图16.微波炉加热状态图
5.6加热停止并响铃状态设计
加热停止后系统将关闭火力输出并进行响铃提示,响铃提示完毕后系统自动进入待机状态,具体状态图如下图17所示:
图17.加热停止并响铃状态图
第6章系统测试
整个软件系统采用模块化的程序设计方法,共分为初始化,显示程序,准备程序,运行程序,定时器程序,声音发声程序等。
软件系统的主要特点是整个过程完全在键盘的控制之下,实现了完全的友好的人机交互功能。
主程序通过判断键盘的输入情况调用不同的子程序。
子程序的功能实现也是在键盘的配合之下完成的。
对各模块和各状态的软件分析之后可以利用KeiluVision3进行各模块和各状态的软件编程并整合成整体系统,并进行软件仿真对编程过程中产生的错误进行修改,仿真测试无误之后讲源程序进行编译并通过STC-ISP-V4.78将编译好的程序写入单片机中,进行整体调试。
6.1测试及制作所用仪器
VC8045II数字万用表微机温度计、烙铁
KeiluVision3软件SK1731SL2A直流稳压电源等
6.2测试结果
上电复位后,显示LCD第一页第一行显示HNUSTXINXI第二行显示microwave字样,LCD第二页显示当前的时间和日期,通过按“K5,K6,K7”键,可进行档位的切换,用户可以在“烹调(cooking)”、“烘烤(barbecue)”、“解冻(unfreeze)”这三个档位之间任意切换。
进入不同的功能选择档之后可以通过K4键进行火力的选择大火、中火、小火加热。
按下第一次选择大火加热,第二次选择中火加热,第三次选择小火加热,第四次按下关掉火力的输出。
分别用不同二极管模拟。
按下“K1”键,进行时间的设置,第一次按下K1键对秒位进行调节,第二次按下K1键对分钟进行调节,第三次按下K1键进入倒计时模式;最大预设数为99分99秒,按下“K2”键时间先清零,之后按下进行加1分钟操作,当增加的时间大于99分99秒时时间变为0分0秒;按下“K3”键时间先清零,之后时间减少1分钟,当减少的时间小于0分0秒时显示的时间变为99分99秒。
并用温度传感器检测当前温度显示在倒计时时间的左侧,按键进行刷新温度;一方面按选择的挡位启动相应的微波加热;另一方面使计时电路以秒为单位作倒计时并显示当前加热的温度值,如果在微波炉工作过程中如果突然打开微波炉炉门,微波炉将根据当时的工作状态停止加热并报警。
当计时到时间为0则断开微波加热器,并给出声音提示,即扬声器输出2~3s的双音频提示音。
然后系统回到待机状态。
6.3误差分析
由于各元器件本身存在的误差以及板子焊接过程中各线路间有一定的干扰的存在导致各模块之间精度和灵敏度有些许的误差(主要表现在按键上)。
----结论
本系统以STC89C52芯片为核心部件,根据综合电子技术、信号与系统以及单片机原理的知识,通过软件实现了微波炉的可编程控制系统,各项功能达到了设计要求。
在系统的设计过程中,力求硬件线路简单,充分发挥软件编程方便灵活的特点,并最大限度挖掘单片机片内资源,来满足系统设计要求。
不断的从设计中总结和修改,并按着预期的要求反复的论证和测试。
以完善设计的可靠性和稳定性,将整个设计分模块化的进行,并将每个模块加以分析和论证,成功后再联系再一起,最终达到总体效果。
主要完成了以下几个方面的内容:
1.制定一个在不同功能时火力的控制时序表。
具有三档微波加热功能,分别表示微波炉工作状态为烹调、烘烤、解冻,试验使用液晶1602在液晶屏上显示出来。
2.实现工作步骤:
复位待机——〉检测显示电路——〉设置输出功能和定时器初值——〉启动定时和工作开始——〉结束烹调、音响提示。
3.在上电或手动按复位键时,控制器输出的微波功率控制信号为0,微波加热处于待机状态,时间显示电路显示为当前的时间和日期。
4.具有4位时间预置电路,按键启动时间设置,最大预设数为99分99秒。
5.在加热的过程中,通过温度传感器检测当时的温度并通过液晶1602显示出来。
6.设定初值后,按开启键,一方面按选择的挡位启动相应的微波加热;另一方面使计时电路以秒为单位作倒计时。
当计时到时间为0则断开微波加热器,并给出声音提示,即扬声器输出2~3s的双音频提示音。
然后回到系统待机状态。
附录一:
系统电路图
附录二:
软件设计程序