完整word版微波炉控制设计Word下载.docx

上传人:b****6 文档编号:21587453 上传时间:2023-01-31 格式:DOCX 页数:25 大小:473.69KB
下载 相关 举报
完整word版微波炉控制设计Word下载.docx_第1页
第1页 / 共25页
完整word版微波炉控制设计Word下载.docx_第2页
第2页 / 共25页
完整word版微波炉控制设计Word下载.docx_第3页
第3页 / 共25页
完整word版微波炉控制设计Word下载.docx_第4页
第4页 / 共25页
完整word版微波炉控制设计Word下载.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

完整word版微波炉控制设计Word下载.docx

《完整word版微波炉控制设计Word下载.docx》由会员分享,可在线阅读,更多相关《完整word版微波炉控制设计Word下载.docx(25页珍藏版)》请在冰豆网上搜索。

完整word版微波炉控制设计Word下载.docx

其功能和市场竞争力更强,不该把它们直接称呼为MCS-51系列单片机,因为MCS只是Intel公司专用的单片机系列型号。

MCS-51系列及80C51单片机有多种品种。

它们的引脚及指令系统相互兼容,主要在内部结构上有些区别。

目前使用的MCS-51系列单片机及其兼容产品通常分成以下几类:

基本型、增强型、低功耗型、专用型、超8位型、片内闪烁存储器型。

1.2课题来源

在日常生活和工作中,我们常常用到定时控制,如扩印过程中的曝光定时等。

早期常用的一些时间控制单元都使用模拟电路设计制作的,其定时准确性和重复精度都不是很理想,现在基本上都是基于数字技术的新一代产品,随着单片机性能价格比的不断提高,新一代产品的应用也越来越广泛,大可构成复杂的工业过程控制系统,完成复杂的控制功能。

小则可以用于家电控制,甚至可以用于儿童电子玩具。

它功能强大,体积小,质量轻,灵活好用,配以适当的接口芯片,可以构造各种各样、功能各异的微电子产品。

随着电子技术的飞速发展,家用电器和办公电子设备逐渐增多,不同的设备都有自己的控制器,使用起来很不方便。

根据这种实际情况,设计了一个单片机多功能定时系统,它可以避免多种控制器的混淆,利用一个控制器对多路电器进行控制,同时又可以进行时钟校准和定点打铃。

它可以执行不同的时间表(考试时间和日常作息时间)的打铃,可以任意设置时间。

这种具有人们所需要的智能化特性的产品减轻了人的劳动,扩大了数字化的范围,为家庭数字化提供了可能。

1.3文本的研究工作

本文的主要工作是掌握单片机应用技术,显示技术,电子技术等相关知识,设计制作一个微波炉控制器电路,具有三档微波加热功能,分别表示微波加热为烹调、烘烤、解冻,试验中用LED模拟。

实现工作步骤:

复位待机——〉检测显示电路——〉设置输出功能和定时器初值——〉启动定时和工作开始——〉结束烹调、音响提示。

在上电或手动按复位键时,控制器输出的微波功率控制信号为0,微波加热处于待机状态,时间显示电路显示为00.00。

具有4位时间预置电路,按键启动时间设置,最大预设数为99分59秒。

设定初值后,按开启键,一方面按选择的挡位启动相应的微波加热;

另一方面使计时电路以秒为单位作倒计时。

当计时到时间为0则断开微波加热器,并给出声音提示,即扬声器输出2~3s的双音频提示音。

具体的问题有:

(1)如何进行时间设置(分、秒)和时钟倒计时功能;

(2)如何设计智能火力控制

(3)如何设计显示模块显示时间;

(4)如何设计按键设置。

第2章系统总体概述

2.1工作原理

微波炉工作分四个步骤分别为:

系统待机—用户设定—微波炉加热—加热完成响音提示。

具体流程如下图2.1.1。

系统上电自检后,数码管显示零分,档位通过三个发光二极管显示(分别表示低档、中档、高档)。

键盘分按键K0,K1,K2,K3,REST五个按键。

K0键为微波炉的计时开始键。

K3键为档位选择选择键,选择后相应的发光二极管会发亮。

K1,K2键为时间设定键。

REST为复位键。

微波炉启动数码管开始倒计时,当倒计时到零分,微波炉会自动关闭,此时发光二极管会闪烁发出提示。

各功能实现如下图2.1.2。

图2.1.2系统功能图

注:

高中低三个火力大小用三个发光二极管模拟。

2.2电路设计

系统以STC89C52单片机为核心,连接各外部电路完成人机交互等各功能的控制。

系统的总体框图如下图2.2.1。

电路设计部分以单片机控制电路为核心由定时器电路,显示电路,键盘电路,门电路,电源电路,音响发声电路,火力输出电路,档位显示电路共同组成微波炉控制系统电路。

2.3本章小结

经过对整个系统概述的分析,可以得到一个大致的系统设计框架,对整个系统设计有个一个大致方向,并根据系统的框架进行各模块的细分与方案论证。

第3章各模块方案比较与论证

系统设计包含显示电路,键盘电路,计时控制电路,档位输出电路,报警闪烁电路等多个部分,每个部分都可以采用不同的方案来实现,但不同的方案有实现的难易的不同,所以通过思考分析,最终做出最好的选择,使之更加科学和合理。

下面对各部分设计方案做分析和选择。

3.1档位显示部分方案

方案一:

通过单片机的一个I/O端口经A/D转换器,转换成三个输出端口进行档位控制。

如图3.1.1这种方案可以节省单片机接口资源。

方案二:

直接利用单片机的三个I/O端口进行档位控制。

如图3.1.2这种方案电路简单。

由于在本设计系统中单片机有充足的I/O端口资源,为了保证系统的稳定性和电路的简单化,采用方案二进行档位显示。

3.2计时控制部分方案

使用专用时钟芯片。

使用微控制器控制专用时钟芯片实现计时控制,这种方案有着计时精度

高、控制简单的优点,而且更易于实现日期/时间显示、定时烹调等计时扩

展功能。

采用单片机内部定时器。

51单片机内部含有3个定时器,可以利用一个定时器与程序计数器相结

合的方式,在系统晶振的驱动下,产生标准时钟频率。

由于方案二具有较好的灵活性、较少的电路器件和较高的性价比,而且

通过精确的软件补偿使精度完全可以满足控制需要,所以我们选择该方案完成设计。

3.3键盘和显示部分方案

(1)、键盘

采用阵列式键盘。

此类键盘是采用行列扫描方式,优点是当按键较多时可以降低占用单片机的I/O口数目,缺点是电路复杂且会加大编程难度。

采用独立式按键电路。

每个键单独占有一根I/O接口线,每个I/O口的工作状态互不影响,此类键盘采用端口直接扫描方式。

缺点是当按键较多时占用单片机的I/O数目较多,优点是电路设计简单,且编程极其容易。

由于该系统采用了常规钟表式的校对方式,用键较少,系统资源足够用,故采用了方案二。

(2)显示

采用数码管显示。

数码管通过设置可以完成制作任务,经济耐用,但其显示不够直观、提供信息量少、不易理解等缺点。

采用液晶显示。

液晶特别是具有汉字显示功能的液晶显示器,来实现显示功能,不仅可以实现基本的显示信息,而且可以显示丰富的符号指示信息以及文字指示信息,如AM/PM,闹钟符号等,信息量丰富且直观易懂。

而且液晶显示有功耗低,体积小,重量轻,寿命长,不产生电磁辐射污染等优点。

由于此系统只用到2位数字显示,考虑实用问题,故采用方案一。

3.4本章小结

经过比较和分析,得出了较理想的方案:

(1)计时单元由软件编程来实现。

定时采用单片机内部定时器来实现,即通过单片机内部定时器产生中断,再通过软件编程实现进行计数,从而实现分的倒计时。

(2)时间显示采用两位LED数码管显示分。

档位显示采用3个发光二极管显示。

(3)键盘采用单片机四个端口输入电平,通过单片机扫描相应四个端口电平来判断按键的抬起与按下。

通过方案的比较和论证之后,明确了各个模块的实现方案。

然后,对整个系统总体进行设计,形成一个清晰的设计方向,并构思出系统总体设计的工作原理和系统的框图,使整个设计方案具有总体性。

第4章系统硬件设计

4.1门电路的设计

在微波炉工作过程中如果突然打开微波炉炉门,微波炉将根据当时的工作状态停止加热并报警。

这样可以有效避免非法操作带来的后果。

电路图如下图4.1.1。

当微波炉炉门打开时开关断开,当炉门关闭时开关接通。

4.2时钟电路设计

计时控制模块是系统设计的核心,用来完成基本功能中的加热倒计时,以及时间显示和定时烹调两项扩展功能。

定时烹调会根据用户设定的烹调属性,在预定的时间启动烹调任务。

为了实现上述功能,在设计中,我们采用STC89C52的内部定时器2与软件计数器相结合的方式获得1Hz的时钟。

定时器2自动装入模式以保证精度。

这时定时器周期T可由下式表示:

CLK

T=(28−K)×

12/CLK…

(1)

其中K为定时器初值、CLK为系统晶振。

考虑到串口通信,我们选定CLK为11.0592MHz,K为27。

从式

(1)中不难看出,这时要获取1Hz的时钟,

计数器的预置数N应对T/1取整,即:

N=[22118400/12×

(256-27)]=8049…

(2)

则系统获取的时钟频率即为:

f=12/22118400×

(28-27)×

8049≈1.000011Hz

完全可以满足系统的计时要求。

4.3键盘模块电路设计

在按键设计中K0,K1,K2,K3分别连入单片机I/O接口的P3.0,P3.1,P3.2,P3.3。

通过单片机内部判断这4个I/O接口来确定按键是否被按下。

为了防止电路出现异常而无法控制特设计了一个复位按键。

键盘电路设计如图4.3.1和如图4.3.2所示

图4.3.1控制按键电路

图4.3.2复位按键电路

4.4档位显示电路设计

档位显示模块由三个发光二极管显示,分别代表“低档”、“中档”、“高档”三个档位,直接将发光二极管接至单片机I/O接口通过单片机发送低电平使发光二极管发光。

如下图4.4.1。

图4.4.1档位显示模块

4.5显示电路设计

动态驱动是将所有数码管的8个显示笔划"

a,b,c,d,e,f,g,dp"

的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。

通过分时轮流控制各个数码管的COM端,就使各个数码管轮流受控显示,这就是动态驱动。

在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能节省大量的I/O端口,而且功耗更低。

用单片机的P2口连接2位数码管的段端口,用P3.4/P3.5通过三极管后连接数码管的位端口。

如下图4.5.1

图4.5.1LED显示电路

4.6火力输出控制设计

通过单片机的三个I/O端口输出信号控制火力大小,接收端用发光二极管模拟。

电路图如图4.6.1。

第一个发光二极管亮时火力为“小火”,第二个发光二极管亮时火力为“中火”,第三个发光二极管亮时火力为“大火”。

4.7本章小结

各模块电路分析完成之后对整个电路已经有了一个很清晰的电路设计思路,将各模块电路整合成整体电路图,并经行检查修改,检查无误后进行电路板的焊接。

具体电路图见附件一:

系统电路图。

第5章系统软件设计

系统程序总体可以分成主程序,和其它模块程序。

主程序跟据系统的工作流程,系统共分为四个状态,分别是:

系统待机状态,用户设置状态,微波炉加热状态和加热完成响音提示状态。

其他模块程序包括显示程序,计时程序等。

下面分别对这这些程序进行详细设计。

5.1显示程序设计

显示程序通过分时轮流控制各个数码管的COM端,使各个数码管轮流受控显示,流程图如下图5.1.1

图5.1.1显示程序

5.2计时程序设计

通过单片机内部定时器2进行时间控制,单片机外接11.0592M晶振,在主程序中设置定时器初值来获得1Hz的中断。

流程图如下5.2.1:

5.3系统待机状态设计

接通电源后系统进入待机状态,此时显示器显示待机画面,当打后系统将进入用户设置状态。

如图如下5.3.1。

系统通过判断单片机P3.2接口的输入电压来判断微波炉炉门是否开启,

通过判断单片机P3.3接口的输入电压来判断按键是否按下,具体流程图如下图5.3.2。

5.4用户设定状态设计

在用户设定状态用户通过按键进行档位和时间的设定,再微波炉炉门关闭的状态按下K0建则进入加热状态,按K1键用户可以在三个档位上进行切换,按K2和K3键进行时间加减设定。

如下图5.4.1

图5.4.1用户设定状态图

系统根据按键对应的单片机I/O接口的电平变化判断用户所进行的设置。

具体流程图如下图5.4.2所示。

5.5微波炉加热状态

微波炉加热状态有三种,分别为烹调、烘烤、解冻。

跟据用户之前设置的档位系统会进入相应的加热状态。

系统进入加热状态之后会根据每个档位对大火,中火,小火的时间比的不同进行加热。

具体状态图如下图5.5.1所示。

由上图可以看出根据用户设置的时间可以进行各阶段火力大小的输出。

系统将根据用户设置的时间计算出要更换火力的时间点,然后判断当前时间是否为要更换火力的时间点,若是则进入下一个火力阶段,若否将继续判断下个时间,除了判断时间还要判断微波炉门是否开启,K0键是否被按下,计时器是否倒计时到00。

这三个条件有一个满足系统将进入停止加热并响铃状态。

具体流程图如下图5.5.1。

(以烹调档位流程图为例)

将用户设置的时间标记为“SJ”。

5.6加热停止状态设计

加热停止后系统将关闭火力输出,完毕后系统自动进入待机状态,具体状态图如下图5.6.1所示。

图5.6.1加热停止状态图

进入加热停止状态后系统首先关闭火力输出,系统向火力输出系统发送关闭信号。

发生结束后系统自动进入系统待机状态。

5.7本章小结

对各模块和各状态的软件分析之后可以利用伟福6000进行各模块和各状态的软件编程并整合成整体系统,并进行软件仿真对编程过程中产生的错误进行修改,仿真测试无误之后讲源程序进行编译并通过ISPlay将编译好的程序写入单片机中。

进行整体调试。

具体程序见附件二:

软件设计程序。

第6章系统测试

软件系统在本设计中尤其重要,基本功能大部分是由软件完成的,发挥功能的关键控制部分同样需要软件的密切配合才能顺利实现。

鉴于软件设计的精确性和高效性,我们采用汇编语言编写程序。

整个软件系统采用模块化的程序设计方法,共分为初始化,显示程序,准备程序,运行程序,定时器程序,声音发声程序等。

软件系统的主要特点是整个过程完全在键盘的控制之下,实现了完全的友好的人机交互功能。

主程序通过判断键盘的输入情况调用不同的子程序。

子程序的功能实现也是在键盘的配合之下完成的。

6.1测试及制作所用仪器

数字万用表

直流稳压电源

PROTEUS软件

微机

烙铁等

6.2测试结果

(1)基本要求

1上电复位后,显示器显示00分,档位显示为“烹调”;

、烘烤、解冻

2按“K3”键,可进行档位的切换,用户可以在“烹调”、“烘烤”、“解冻”这三个档位之间任意切换。

3按下“K1”键,显示器时间增加1分钟,按下“K2”键显示器时间增加10分钟。

4按“K0”键,微波炉变为运行状态,显示器开始倒计时,此时再按下“复位”键微波炉返回准备状态,显示器清0,若没有按“复位”显示器倒计时到0分或微波炉炉门被打开微波炉也会返回准备状态。

(2)误差分析

从功能分析,该系统的误差主要是加热倒计时器的计时误差与日期/时钟系统的走时误差。

而由于加热倒计时器与日期/时钟系统都是由MCU定时器产生的1Hz时钟脉冲驱动,所以该时钟是误差的最主要来源。

如(式1,2)所示,由于选用的晶振数值为11.0592Mhz,定时器周期和1Hz的标准时钟不成整数倍比关系,计数器预制数的近似选择,势必引入计算误差。

根据所选择的参数不难算出系统产生时钟与标准1Hz时钟之间存在的误差Δ为:

Δ=12/22118400×

(28−27)×

8049–1≈0.000011Hz……(式4)

对于加热倒计时器,以99分59秒计算,累计误差为:

(99×

60+59)×

0.000011=0.039589秒

尽管上述误差的影响不可避免,但是通过适当选择计算参数,以及对日期/

时间系统采用时钟同步措施,是完全可以满足设计要求的。

6.3本章小结

通过系统的测试,查出每个模块的错误,并且尽量简化硬件电路设计和软件程序设计,使得测试结果达到论文设计的目的和要求。

结论

经过一段时间以来的学习,不断的从设计中总结和修改,并按着预期的要求反复的论证和测试。

本着学习的态度,以完善设计的可靠性和稳定性,将整个设计分模块化的进行,并将每个模块加以分析和论证,成功后再联系再一起,最终达到总体效果。

主要完成了以下几个方面的内容:

1.制定一个在不同功能时火力的控制时序表。

具有三档微波加热功能,分别表示微波炉工作状态为烹调、烘烤、解冻,试验使用LED模拟。

2.实现工作步骤:

复位待机——〉检测显示电路——〉设置输出功能和定时器初值——〉启动定时和工作开始——〉结束烹调。

3.在上电或手动按复位键时,控制器输出的微波功率控制信号为2,微波加热处于中火状态,时间显示电路显示为00。

4.具有2位时间预置电路,按键启动时间设置,最大预设数为99分。

5.设定初值后,按开启键,一方面按选择的挡位启动相应的微波加热;

另一方面使计时电路以分为单位作倒计时。

当计时到时间为0则断开微波加热器。

附录一:

系统电路图

附录二:

软件设计程序

/*

1、按键可以调整功率

2、按键可以调节定时时间

3、定时时间到继电器吸合

*/

#include<

reg52.h>

sbitKEY1=P3^0;

sbitKEY2=P3^1;

sbitKEY3=P3^2;

sbitKEY4=P3^3;

sbitled1=P1^4;

sbitled2=P1^5;

sbitled3=P1^6;

sbitw1=P3^4;

sbitw2=P3^5;

codeunsignedchartable[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

//共阳数码管0-9

unsignedcharStrTab[2];

unsignedchara1=0,a2=0;

unsignedcharflag1,flag2,b;

voidDelay(unsignedintdel)

{

unsignedinti,j;

for(i=0;

i<

del;

i++)

for(j=0;

j<

400;

j++)

;

}

voidDisplaypro(unsignedchara1,unsignedchara2)

{

w2=1;

w1=0;

P2=table[a1];

Delay

(1);

w1=1;

w2=0;

P2=table[a2];

main()//主函数

TMOD=0x11;

//定时器010msin12Mcrystal用于计时

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

ET0=1;

TR0=0;

//定时器1用于动态扫描

TH1=0xF8;

TL1=0xf0;

ET1=1;

TR1=1;

EA=1;

flag1=1;

flag2=0;

Displaypro(a1,a2);

while

(1)//主循环

{

if(flag1==0)

led1=0;

else

led1=1;

if(flag1==1)

led2=0;

led2=1;

if(flag1==2)

led3=0;

led3=1;

/////////////////////////////////////////////////////////////////

if(!

KEY1)//按键1去抖以及动作

{

Delay

(1);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 成人教育 > 远程网络教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1