基于单片机的洗衣机设计_第1页
基于单片机的洗衣机设计_第2页
基于单片机的洗衣机设计_第3页
基于单片机的洗衣机设计_第4页
基于单片机的洗衣机设计_第5页
免费预览已结束,剩余19页可下载查看

下载本文档

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

文档简介

1、单片机原理及系统课程设计评语:考勤10分守纪10分过程30分设计报告30分答其20分总成绩(100分)专 业:自动控制班 级:姓 名:学 号:指导教师:兰州交通大学自动化与电气工程学院2014年1月12日精品文档基于AT89C51单片机的全自动洗衣机设计1 设计目的及要求1.1 设计目的洗衣机已成为人们日常生活中必不可少的一部分,但是传统的基于继电器的控制, 已不能满足人们对洗衣机的要求。因此设计了基于单片机的洗衣机控制电路系统, 由单片机控制实现洗衣机的各项功能。单片机的体积小,控制功能灵活,因此, 设计出基于单片机的全自动洗衣机控制电路系统具有很强的实用性。由于个人能力有限,所设计的洗衣机

2、比前沿科技产品要差很远。所以这次课程设计的主要目的在于通过亲手操作,查找资料,培养自己的分析设计能力,把这学期课程中零散的知识进行整合,将理论的知识联系到实际的生活中,在实例中深入理解一些理论知识,并从中有所收获。1.2 设计要求模拟全自动洗衣机工作过程。以电机替代洗衣机电机。显示洗衣机工作的状态(进水、浸泡、洗衣、脱水、结束)。显示工作剩余时间(洗衣程序可自定义,时间精度:秒)。洗衣时交替正、反转。2 设计方案及原理2.1 设计方案利用AT89C51单片机的P0, P1, P2, P3用行口的输入输出功能,控制数码 管、电动机、发光二极管的工作状态,进而模拟洗衣机的基本工作过程。洗衣机的主要

3、工作过程是:进水洗涤漂洗换水漂洗换水漂洗换水脱水结束。上述工作过程中,包含三个过程:洗涤过程、漂洗过程、脱水过程。(1) 洗涤过程:放好待洗物,启动开关,进水阀通电,向洗衣机供水,供水结束后,洗涤电动机接通电源,通过电机不停的正转、反转,形成洗涤水对洗涤物产生强烈的翻滚作用;同时衣物之间、衣物与四周桶壁之间产生互相摩擦和撞击力,达到洗涤衣物的目的。(2) 漂洗过程:漂洗的目的在于清除衣物上的洗涤液,因此, 漂洗过程与洗涤过程的电机动作是完全相同的。(3) 脱水过程:漂洗过程结束后,电动机停止转动,排水阀通电,打开排水阀门排水。当排水到一定程度,满足安全条件时,脱水电动机接通,电机带动脱水桶高速

4、旋转,利用离心力把衣服上的水从桶壁的小眼里甩出。全部洗衣工作完成后,结束指示的LED丁点亮,表示衣物已经洗好,洗衣机 就会自动停止工作。2.2 设计原理系统设计包括晶振和复位模块,电机驱动模块,LED显示模块,按键控制模块以及数码管显示模块五部分。利用 AT89C51单片机芯片,芯片左排引脚外接晶 振和复位电路,通过74LS245锁存器连接至数码管,控制数码管稳定显示。右排 引脚外接电机驱动电路和各开关以及 LED灯。通过人工按压相应的开关,接通电 机驱动电路相应的接线端子,实现电机正反转以及LED显示。总体设计原理框图 如图1所示。图1系统原理框图通过对开关的操作实现选择想要进行的任何操作。

5、当选择好模式后进入该模 式。该模式的参数已装入在单片机中,在单片机中程序的控制下进行工作。程序实现的主要功能是洗涤,漂洗和脱水的控制。其中洗涤时间设初值为136s,由于洗衣过程中电机要不停的正反转,所以用 P3.2和P3.3控制。通过流 经电机两端电平的高低控制电流的流向, 从而改变电机的转向,实现正反转。漂 洗过程和洗涤过程较为相似,由于漂洗要多次进行,所以用进水次数标志位flagl控制,当flagl为2,3,4时为漂洗过程。脱水过程是在出水次数 flag2的 控制下进行。当flag2为4时脱水,当脱水时间到达0后,脱水结束,洗衣结束。 上述三个过程中电机工作利用晶体管组成的驱动电路进行驱动

6、。3硬件设计3.1 主要元器件在本设计中主要使用了以下元器件:AT89C511片机芯片、74LS245芯片、 晶体振荡器、数码管、发光二极管、直流电动机、三极管。3.2 硬件连接图该设计主要应用80C51单片机,外接一些必要的扩展电路,构成系统电路原 理图,如图2所示。C1R15LLOW221C2U21 18B0B1B2IX1CRYSTALU11918R1C310UF293031A0A1A21312B3B4A3A4B5B6B7A5A6A774LS245CE AB/BAQ10220NPNR6otherR7 antherQ9NPN"XTAL1XTAL2Q2Q6BC184BC184RSTP

7、2.0/A8Q1dQ5TIP31TIP31R5R30EA1k1kP1.0P3.0/RXD13BC184'ey15BC184TIP3217T89C51-REDkey1R10220R11key3R12key4220D5R13P04220R8LED-YELLOWP1.1P1.2P1.3P1.4P1.5P1.6P1.7P3.1/TXDP3.2/INT0P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.5

8、/T1P3.6/WRP3.7/RDP3.3/INT1P3.4/T0ALEA o m1 110 anther39P0038 P011k21 a” b'ey2«y3*ey4-LED-RED33P06 132Q7R41kQ8TIP32P01D2key2P02P03)R2R9D3D4R14图2硬件连接图3.3 系统设计原理该设计采用模块化的方法,系统原理图分为五个模块,分别为晶振和复位模 块,电机驱动模块,LED显示模块,按键控制模块以及数码管显示模块。晶振和复位模块主要通过51单片机的内部振荡方式,产生原始的时钟频率。电机驱动模块主要包含电阻、三极管放大器和一个电机,通过与 51单

9、片机的 P3.0-P3.3引脚连接,用于驱动相应的洗衣、漂洗和脱水程序。 LED显示模块主 要通过与51单片机的P0 口 8个引脚连接,当按下相应按键时,对应的LED旨示 灯点亮,实现对洗衣机控制过程的指示。按键控制模块,具连接于 P3 口部分引 脚上,实现对洗衣过程的选择及控制。数码管显示模块,具直接与单片机的P2口相连。4软件设计4.1 主程序流程图按下K1键,洗衣机进入待命状态;当按下K2键后,洗衣机才进入工作状态。 其主程序及流程图见附录2.1。4.2 洗涤过程流程图电机正反转均为15s,程序及流程图见附录2.2。4.3 漂洗过程流程图漂洗前先打开排水阀排水5s。然后启动电动机漂洗,一

10、次漂洗结束后,接 着判断漂洗次数即flag3的值,若flag3为3则漂洗结束,若flag3不为3,则 再次执行漂洗操作,进入下一循环。程序及流程图见附录2.3。5系统仿真及实际调试系统仿真结果图如图3所示。X1R151Q9antherNPNCRYSTALR4R21kXIAI2BC184TIP31R5R31kU2antherB0A0P1.0B1A123B4A46P3 7/RDB7A7P1774LS245<ey2<ey3P04220R8R14lED-YELLOWB2B3B5B6A2A3A5A6B m LED-RED30 能P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3

11、P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A151k1kQ6BC184Q51 18 曰 415 .12T一P3.0/RXD10P1.1'1.2'1.3P1.4'1.5'1.6P3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP01D2P02D3P03D4P00D5R9220R10_R11R12R132TLED-RED图3系统仿真结果图6总结经过一个学期的时间完成了基于单片机的洗衣机

12、控制系统的设计,本系统是基于单片机及其接口技术、计算机技术、微电子技术综合应用的设计。实现了对 洗衣机整个洗衣过程的控制包括用户参数输入、洗衣、脱水和结束演奏四个阶段。 控制系统主要由电源电路、控制电路两大模块构成。电源电路为控制电路提供稳 定的5V直流电压,为电动机提供电;控制电路负责控制洗衣机的工作过程,主 要由AT89C51单片机、四位共阳数码管、按键、LED旨示灯、电动机、进水排水 电磁阀组成。在系统设计中查阅了大量相关的中文和外文资料以及各芯片的厂家 技术资料手册借鉴了很多前人成熟的经验。对于以上之粗浅体会进一步的总结和提高,需要有更多的社会实践来提供, 我也相信在不久的将来踏入社会

13、,类似这样的设计绝不在少数,只要我们努力学 习、勇于实践、勤学好问我们就会懂得以前不明白或不懂的道理,就会很快地成4欢血下载精品文档长和成熟起来。我也相信凭着我自强不息勇于拼搏的精神一定能够很快的适应类似设计的需要,适应这个多变的社会,充分发挥长处朝我们的方向不断前进前进再前进! 参考文献1 王思明,张金敏,苟军年等单片机原理及应用系统设计M 科学出版社2012:176-1892 谭浩强 C 程序设计(第四版 ) M 清华大学出版社2010:36-60附录附录-源程序#include<reg51.h> #define uchar unsigned char#define uint

14、unsigned int /*/sbit mo_r=P3A2;/电机右控制线sbit mo_l=P3A3;/电机左控制线18欢迎下载 。/*/sbit key_menu=P3A4; /菜单按键sbit key_on=P3A5;/开始按键sbit key_off=P3A6; /结束按键sbit key_se=P3A7;/菜单选择按键/*/进水指示灯洗衣指示灯泡洗指示灯脱水指示灯出水指示灯洗衣结束指示灯电机工作指示灯脱水电源控制开关洗衣电源控制开关/*/ucharcodenum10=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;/*/char

15、sec=0;/char min=0;/uchar count=0;/uchar flag0=0;/uchar flag1=0;/uchar flag2=0;/uchar flag3=0;/uchar quan=0; /*时间秒 时间分 中断计数 洗衣机工作状态标志 进水次数标志 出水次数标志 泡洗次数标志正反转计数*/void delay(); /void in();/void out();void over(); /void xi();/void pao();void xx();/void on();/void se();/延时函数进水子程序/ 出水子程序结束子程序洗衣子程序/ 泡衣子程序脱

16、水子程序工作 on 处理子程序显示菜单选择sbit led_in=P0A0;/sbit led_xi=P0A1;/sbit led_pao=P0A2;/sbit led_xx=P0A3;/sbit led_out=P0A4; /sbit led_over=P0A5; /sbit led_work=P0A6; /sbit other=P3A1;/sbit anther=P3A0;/void SEG_display(); /void key_scan(); /void delay(uint i)显示时间子程序 按键扫描子程序/uint x,y;for(x=i;x>0;x-) for(y=12

17、0;y>0;y-);工作on 处理子程序/*/ void on()TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET0=1;TR0=1;P0 = 0xff;if(flag0=0)in();if(flag0=1)xi();if(flag0=2)pao();if(flag0=3)xx();if(flag0=4)out();结束子程序/ /*/ void over()other=0;anther=0;P0=0xff;mo_r=0;mo_l=0;led_over=0;EA=0;进水子程序/ /*/ void in()anth

18、er=0; other=0;P0=0xff; led_in=0; flag1+; mo_r=0; mo_l=0; min=0; sec=8;/洗衣子程序/*/ void xi()anther=1;other=0;P0=0xff;led_work=0;led_xi=0;mo_r=1;mo_l=0;min=1;sec=36;quan=0;/泡衣子程序/*/ void pao()anther=1; other=0;P0=0xff; led_pao=0; led_work=0; flag3+; mo_r=1;mo_l=0; min=1; sec=35; quan=0;/脱水子程序/*/ void xx

19、() other=1;anther=0;P0=0xff;led_xx=0;mo_r=0;mo_l=1;min=0;sec=50;/出水子程序/*/ void out()anther=0; other=0;P0=0xff; led_out=0; flag2+; mo_r=0; mo_l=0; min=0; sec=5;显示菜单选择/ /*/ void se()P0=0xff;if(flag0 >= 5)flag0=0;if(flag0=0)led_in=0;if(flag0=1)led_xi=0;if(flag0=2)led_pao=0;if(flag0=3)led_xx=0;if(fla

20、g0=4)led_out=0;菜单处理子程序/ /*/ void menu()min=0;sec=0;mo_r=0;mo_l=0;SEG_display();while(1)if(key_on=0)delay(5);if(key_on=0)while(!key_on);on();break;/*/if(key_off=0)delay(5);if(key_off=0)while(!key_off);over();break;/*/if(key_se=0) delay(5);if(key_se=0) while(!key_se);flag0+;se();/按键扫描子程序/*/ void key_s

21、can()if(key_menu=0)delay(5);if(key_menu=0)while(!key_menu);menu();/*/if(key_on=0)delay(5);if(key_on=0)while(!key_on);on();/*/if(key_off=0)delay(5);if(key_off=0)while(!key_off);over();/ 显示子程序/*/ void SEG_display()P1=0x01;P2=nummin/10;delay(10);P1=0x02;P2=nummin%10; delay(10);P1=0x04;P2=numsec/10;dela

22、y(10);P1=0x08;P2=numsec%10; delay(10);/ 主函数/*/void main()led_in=0;anther=0;other=0;while(1)SEG_display();key_scan();/ 定时器 0 中断处理程序/*/void timer0() interrupt 1TH0=(65536-50000)/256;TL0=(65536-50000)%256;count+;if(count=20)count=0;sec-;if(flag0=1)|(flag0=2)quan+;switch(quan)case 1:mo_r=1;mo_l=0;break;

23、case 10:mo_r=0;mo_l=0;break; case 15:mo_r=0;mo_l=1;break; case 25:mo_r=0;mo_l=0;break; default:;if(quan=30)quan=0;/*/ if(sec=0)&&(min != 0) min-;sec=59;/进水结束/*/ if(sec<0)&&(min=0)&&(flag0=0) switch(flag1)case 1:flag0=1;xi();break;case 2:flag0=2;pao();break;case 3:flag0=2;p

24、ao();break;case 4:flag0=2;pao();break;/*/ if(sec<0)&&(min=0)&&(flag0=1) flag0=4;out();/*/ if(sec<0)&&(min=0)&&(flag0=2) switch(flag3)/洗衣结束泡衣结束case 1:flag0=4;out();break;case 2:flag0=4;out();break;case 3:flag0=4;out();break;/*/ 出水结束if(sec<0)&&(min=0)&a

25、mp;&(flag0=4) switch(flag2)case 1:flag0=0;in();break;case 2:flag0=0;in();break;case 3:flag0=0;in();break;case 4:flag0=3;xx();break;/*/ if(sec<0)&&(min=0)&&(flag0=3) sec=0;over();附录 2.1 主程序void main()led_in=0;anther=0;other=0;while(1)SEG_display();key_scan();/ 定时器 0 中断处理程序/*/vo

26、id timer0() interrupt 1TH0=(65536-50000)/256;TL0=(65536-50000)%256;count+;if(count=20)count=0;sec-;if(flag0=1)|(flag0=2) quan+;switch(quan)case 1:mo_r=1;mo_l=0;break;case 10:mo_r=0;mo_l=0;break;case 15:mo_r=0;mo_l=1;break;case 25:mo_r=0;mo_l=0;break; default:;if(quan=30)quan=0;/*/if(sec=0)&&(min != 0)min-;sec=59;/*/if(sec<0)&&(min=0)&&(flag0=0)switch(flag1)case 1:flag0=1;xi();break;case 2:flag0=2;pao();break

温馨提示

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

评论

0/150

提交评论