1、题目:智能微波炉控制系统及设计题目:智能微波炉控制系统及设计一、大作业摘要一、大作业摘要 我设计的是微波炉的控制系统,主要解决的是微波炉的定时功能,各种功能转换,比如说,加热食物都需要哪些步骤。首先要启动开始状态,其次设定时间,然后是火力档位的选择,最后是烹饪的方式选择。 我设计的微波炉可以对食物进行不同火力档位的加热,每种档位加热的时间可以不同。 我的设计存在的问题是,每次加热的时间最多99秒,没有检查功能。二、设计的背景、目的和意义二、设计的背景、目的和意义 随着控制技术和智能技术的发展,微波炉也向着智能化、信息化发展。而现有市售的微波炉其主要弊端:不能按既有程序进行烹调,需要使用者根据食
2、物的类型、数量、温度等因素去设定微波炉的工作时间,若设定的工作时间过长,含水分较多的食物可能会产生过热碳化的现象,若时间过短则达不到预期的烹调效果。针对这些问题,我认为有必要研制一种操作简单且烹调效果好的微波炉,根据一些家常菜按固定程序烹调的现象,可采取分时、分档火力加热,节时又节能。 本设计采用EDA技术用VHDL设计语言,设计一种微波炉控制器该控制器具有系统复位、状态控制、时间设定、火力档位选择、等功能,基于FPGA芯片实现 三、设计任务及要求三、设计任务及要求 本课题是基于FPGA的微波炉控制器设计,即设一个具备定时,温控,烘烤,计时显示功能的微波炉控制器,实现一些功能: 1,该微波炉控
3、制器能在任意时刻取消当前工作,复位为初始状态。 2,可以根据需要设定火力及每种火力的加热时间,可供火力选择的档位有大火档,中火档,小伙档,三种档位。 3,定时器需要与BCDto7SEG译码器连接,再通过数码管显示倒计时过程。四、确定输入和输出变量输入变量输入变量8 8个:个:nRST:清零 i1,i2,i3:输入信号Clk:时钟DIN:定时器输入Load:同步加载控制信号Count:计数控制端输出变量输出变量2 2个:个:Q:状态输出 B:计数器输出端五、确定输入状态(五、确定输入状态(9个)个)START:开始S1:解冻S2:定时S3:大火档S4:中火档S5:小火档S6:加热S7:烘烤S8:
4、停止六、整体设计框图开始时间设定火力档选择(大,中,小)烹饪功能选择(加热,烘烤)停止十、状态机设计(状态转换图)十一、状态机设计(状态编码)十一、状态机设计(状态编码)moduleMicrowave(nRST,clk,i1,i2,i3,Q,B,load,DIN,count);inputnRST,clk,load,count;inputi1,i2,i3;input7:0DIN;output7:0B;outputQ;wire7:0B;reg7:0B1;reg7:0Q;reg7:0CS,NS;parameter7:0START=8b00000000,S1=8b00000001,S2=8b00000
5、010,S3=8b00000100,S4=8b00001000,S5=8b00010000,S6=8b00100000,S7=8b01000000,S8=8b10000000;always(posedgeclk,negedgenRST)beginif(!nRST)CS=START;elseCS=NS;endalways(CS,i1,i2,i3)begincase(CS)START:beginif(i1)NS=S2;if(i2)NS=S1;endS1:beginif(i3)NS=S2;if(i2&i3)NS=S8;endS2:beginif(count&!nRST)B1=8b00000000;e
6、lsebeginif(load)B14b0000|B17:44b0000)beginB13:0=9;B17:4=B17:4-1;endelsebeginB1=0;endendelsebeginB13:0=B13:0-1;endendendelsebeginif(i1)NS=S3;if(i2)NS=S4;if(i3)NS=S5;endendS3:beginif(i1&i2)NS=S6;if(i1&i3)NS=S7;endS4:beginif(i2&i3)NS=S6;if(i1&i2)NS=S7;endS5:beginif(i1&i3)NS=S6;if(i2&i3)NS=S7;endS6:begi
7、nif(i1&i2)NS=S2;if(i1&i3)NS=S8;endS7:beginif(i1&i2)NS=S2;if(i1&i3)NS=S8;enddefault:beginNS=START;endendcaseendassignB=B1;always(posedgeclk,negedgenRST)beginif(!nRST)Q=8b00000000;elsebegincase(NS)START:Q=8b10000000;S1:Q=8b01000000;S2:Q=8b00100000;S3:Q=8b00010000;S4:Q=8b00001000;S5:Q=8b00000100;S6:Q=8
8、b00000010;S7:Q=8b00000001;S8:Q=8b11111111;default:Q=8b00000000;endcaseendendendmodulemoduleBCDto7SEG(B3,B2,B1,B0,a,b,c,d,e,f,g);inputB3,B2,B1,B0;outputa,b,c,d,e,f,g;reg3:0BCD;rega,b,c,d,e,f,g;always(B3,B2,B1,B0)beginBCD=B3,B2,B1,B0;case(BCD)4b0000:g,f,e,d,c,b,a=7b1000000;4b0001:g,f,e,d,c,b,a=7b11110
9、01;4b0010:g,f,e,d,c,b,a=7b0100100;4b0011:g,f,e,d,c,b,a=7b0110000;4b0100:g,f,e,d,c,b,a=7b0011001;4b0101:g,f,e,d,c,b,a=7b0010010;4b0110:g,f,e,d,c,b,a=7b0000010;4b0111:g,f,e,d,c,b,a=7b1111000;4b1000:g,f,e,d,c,b,a=7b0000000;4b1001:g,f,e,d,c,b,a=7b0010000;default:g,f,e,d,c,b,a=7b1111111;endcaseendendmodu
10、le十二、状态机设计VCCnRSTINPUTVCCclkINPUTVCCi1INPUTVCCi2INPUTVCCi3INPUTVCCloadINPUTVCCDIN7.0INPUTVCCcountINPUTa0OUTPUTb0OUTPUTc0OUTPUTd0OUTPUTe0OUTPUTf0OUTPUTg0OUTPUTa1OUTPUTb1OUTPUTc1OUTPUTd1OUTPUTe1OUTPUTf1OUTPUTg1OUTPUTQ0OUTPUTQ1OUTPUTQ2OUTPUTQ3OUTPUTQ4OUTPUTQ5OUTPUTQ6OUTPUTQ7OUTPUTSTART00000000 Unsigned
11、BinaryS100000001 UnsignedBinaryS200000010 UnsignedBinaryS300000100 UnsignedBinaryS400001000 UnsignedBinaryS500010000 UnsignedBinaryS600100000 UnsignedBinaryS701000000 UnsignedBinaryS810000000 UnsignedBinaryParameterValueTypenRSTclki1i2i3loadDIN7.0countQ7.0B7.0Microwaveinst1B3B2B1B0abcdefgBCDto7SEGin
12、stB3B2B1B0abcdefgBCDto7SEGinst10B3B2B1B0B7.0B7B6B5B4Q7.0十三、RTL图IN3.0OUT15.0DECODERWideOr1WideOr3B1abdfgWideOr0WideOr2eWideOr6Decoder0cWideOr4WideOr5B0B2B3十四、仿真时序图Start转移至state2,并设定时间State2至state3State3至state6State6至state2State2至state4State4至state6State6至state8注释:(食物两次加热的过程)Start2:设定时间state3:大火档state6:加热state8:停止十五、演示照片十六、设计结论及评价十六、设计结论及评价 优点:可以设定倒计时间,火力选择。 不足:每次设定的时间最多99秒,还需要改进,不具备检查功能。 结论:基本可以解决微波炉的控制问题,但仍需改进。谢谢大家!人有了知识,就会具备各种分析能力,明辨是非的能力。所以我们要勤恳读书,广泛阅读,古人说“书中自有黄金屋。”通过阅读科技书籍,我们能丰富知识,培养逻辑思维能力;通过阅读文学作品,我们能提高文学鉴赏水平,培养文学情趣;通过阅读报刊,我们能增长见识,扩大自己的知识面。有许多书籍还能培养我们的道德情操,给我们巨大的精神力量,鼓舞我们前进。