芜湖职业技术学院毕业论文题目:基于单片机的智能洗衣机控制系统设计院系名称:芜湖职业技术学院信息工程系专业班级:嵌入式技术与应用学生姓名: XXXX学号: XXX指导教师: XXXX2012 年 5 月 6 日摘要本设计是利用89C51单片机微处理器来实现对智能洗衣机的控制,利用主程序选择按钮、启动按键和增减按键作为输入参数,通过Keil 软件编程来控制电机旋转、LED数码管显示等主要动作。
在实现具体的洗衣程序时通过洗涤和脱水子程序代码来完成整个过程的控制。
本设计可以实现洗衣代码选择显示、洗衣倒计时显示、进水指示、排水指示、电机旋转等主要显示过程。
关键词 89C51单片机智能洗衣机电机旋转目录第一章绪论 (5)1.1 研究目的 (5)1.2研究意义 (6)1.3研究价值与应用 (6)第二章系统总体设计 (8)2.1功能需求分析 (8)2.2硬件设计方案 (8)2.3软件设计方案 (9)第三章硬件电路设计 (11)3.1 基于AT89C51单片机控制的智能洗衣机原理 (11)3.2 原理图的说明 (11)3.2.1.主芯片电路 (11)3.2.2.LED数码管显示电路 (12)3.2.3.按键电路部分 (12)3.2.4蜂鸣电路和电机控制电路 (13)3.2.5指示灯电路 (14)第四章系统软件设计 (15)4.1 Keil c51集成开发环境 (15)4.2 仿真软件Proteus介绍 (19)4.3 Keil与Proteus的在线联合仿真 (20)4.4 主程序设计及各子程序模块 (20)4.4.1.主程序 (20)4.4.2. INT0中断模块 (22)4.4.3. 进入待机状态 (22)4.4.4. 设置洗涤次数模块 (23)4.4.5 设置洗涤时间模块 (23)4.4.6.设置脱水时间模块 (24)4.4.7. 开始脱水模块 (25)4.4.8. 开始洗涤模块 (25)第五章系统调试 (27)5.1硬件调试 (27)5.2 程序加载 (28)5.3系统调试结果 (28)结论 (30)致谢 (31)参考文献 (32)附录: (33)第一章绪论随着国民经济的发展,人民的生活水平不断提高,智能洗衣机作为人们从繁复的家务劳动中解放出来的好助手,越来越受到消费者的喜爱。
通过对于基于单片机控制的智能洗衣机的研究我们可以更清晰,更实际的掌握单片机的一些基本的控制和应用。
单片机在日常家电中的应用比较广泛,洗衣机智能控制系统就是一种以单片机为控制核心的系统,它把以往对洗衣机的繁琐的操作变得简单化,不但其机器性能显著提高,还增加了难以实现得功能,同时也提高了控制的精确度,硬件和软件相互配合实现洗衣机工作的智能化和自动化。
因此对于智能洗衣机的研究一方面可以让我们对于所学的单片机和电路有关知识有个更好的理解和巩固,一方面也锻炼了自身的动手能力,特别是能够实现软硬连调所具备的能力。
1.1 研究目的本文设计并实现了一种基于单片机的智能洗衣机控制系统。
该设计方案电路简单、可靠性强、价格便宜。
系统主要包括单片机控制电路、稳压电源电路、LED数码管显示电路、按键电路、蜂鸣电路和电机控制电路等。
(1).培养学生运用所学的单片机方面的知识的能力,熟练应用AT89C51单片机,更进一步的理解单片机精华;(2).让单片机方面的知识能够在日常生活中得以更广泛的实践和运用;(3).让自己的理论在实践中得到体验,巩固和加强之前所学的知识,使之前模糊的和不明白的地方得到更深刻的理解。
1.2研究意义以单片机AT89C51为核心,数码管显示实现电动机的自动控制,减少手动控制,并且由于该系统的设计在应用中可以提高工作强度,可以让人们放心使用,提高产品的安全性。
由于其功能简单,设备要求性能不高,可移植性比较强,此外,洗衣机的各项功能都是由单片机控制实现的,单片机体积小,控制功能灵活,因此,设计出基于单片机的洗衣机智能控制系统具有很强的实用性,可以广泛使用。
1.3研究价值与应用基于单片机的洗衣机智能控制系统具有精度高、功能强。
经济性好的特点。
无论在提高产品数量,节约能源还是改善劳动条件等方面都显示出无比的优越性。
对基于单片机的洗衣机智能洗衣机控制系统设计进行深入研究是我们掌握智能洗衣机这种重要家电的工作原理和控制系统,进一步了解单片机在不同领域的应用方法,学会单片机的洗衣机智能控制系统设计,同时也会为我们将来从事电子行业或在生活中得以运用打下一定基础,此外,将人们的需要变成现实,设计出更节能、功能更全面、更人性化的智能洗衣机,使人们的生活更方便、舒适。
智能洗衣机从结构上分有波轮式,搅拌式,滚筒式,目前,国内市场上销售的大都是波轮式和滚筒式。
智能洗衣机是集洗涤,脱水于一体,并且能自动完成洗衣全过程的洗衣机,真正做到了它工作,您休息。
智能洗衣机有各种洗涤程序,可供用户自由选择,工作时间可任意调节,工作状态及洗,脱时间在面板上都有显示,能自动处理脱水不平衡(具有各种故障和高低电压自动保护功能),工作结束或电源故障会自动断电,无需看管,确保安全。
波轮式智能洗衣机的特点是洗净率高,但对衣服的磨损很大,随着人们生活水平的不断提高,丝绸,毛料等大步走进普通家庭,厂商又适时地推出了滚筒洗衣机,它最大的优点是磨损率小,但洗净率比波轮式低。
如今,消费者已不满足于半自动洗衣机的洗涤方式,而改用智能洗衣机。
第二章 系统总体设计2.1功能需求分析能够实现基本功能,执行相应的按键操作,通过某个按键控制数码管显示相应的时间或次数,通过指示灯提示洗衣机进行到某个流程,蜂鸣器起提示和报警作用。
具体实现功能如下:1. 具备数码管显示功能,并且能够实现信息的显示2. 能够对洗涤时间和次数显示3. 能够实现洗衣代码选择显示、洗衣倒计时显示、进水指示、排水指示、电机旋转等主要显示过程功能。
4. 具备复位功能2.2硬件设计方案整个硬件系统主要包括如下几个部分:主控模块、按键控制模块、数码管显示模块、指示灯显示模块、电机控制和蜂鸣器模块。
如图: 按键控制At89c51 为主控芯片 按键控制模块 数码管显示模块 指示灯 显示模块电机控制和蜂鸣器模块采用AT89C51单片机作为主控单元,对整个系统进行控制,按键控制模块起到开启,选择次数和时间,关闭整个系统作用;数码管显示模块起到显示系统的功能;指示灯模块起到显示系统的工作状态;电机控制和蜂鸣器起到洗衣和报警作用;通过按键作为系统的输入,当按下开关按钮时,其对应的指示灯亮,选择适当的时间和次数,电动机工作,数码显示其对应的工作状态和时间或次数。
2.3软件设计方案单片机C51语言兼备高级语言与低级语言的优点。
语法结构和标准C语言基本一致,语言简洁,便于学习。
运行于单片机平台,支持的微处理器种类繁多,可移植性好。
对于兼容的8051系列单片机,只要将一个硬件型号下的程序稍加修改,甚至不加改变,就可移植到另一个不同型号的单片机中运行。
具有高级语言的特点,尽量减少底层硬件寄存器的操作。
单片机C51语言提供了完备的数据类型、运算符及函数。
C51语言是一种结构化程序设计语言,可以使用一对花括号“{}”将一系列语句组合成一个复合语句,程序结构清晰明了。
C51语言代码执行的效率方面十分接近汇编语言,且比汇编语言的程序易于理解,便于代码共享。
在本设计中,鉴于C51语言的优势,本文的软件部分设计采用单片机C51语言编写程序。
我们用Keil c51软件对设计中的程序进行调试。
用Protel软件对原理图进行绘制,用Proteus和Keil c51共同完成本设计的仿真。
第三章硬件电路设计3.1 基于AT89C51单片机控制的智能洗衣机原理控制板电路使用AT89C51芯片,时钟电路采用6MH晶振。
输入信号有:设置洗涤次数,洗衣时间和脱水时间。
输出信号包括:一个8位LED数码管动态显示(洗衣或脱水剩余时间)和蜂鸣器鸣叫、进排水、电机旋转信号。
其中+5V电压由线性稳压电源得到。
3.2 原理图的说明3.2.1.主芯片电路主芯片电路如图3-1所示,控制电路采用AT89C51芯片,时钟电路采用6HZ晶振,主芯片左边部分电路即为晶振和复位电路。
作为控制中心的单片机,在进入工作之前应预先清零复位,给单片机初始化,以清除由于某种原因引起内部程序紊乱的状态。
在系统控制电路中,复位电路是靠电容充放电完成的。
图 3-1主芯片及晶振和复位电路3.2.2.LED 数码管显示电路如图3-2所示,输出口P1.0-P1.7控制8位LED 数码管显示电路。
它可用来显示时间(即洗衣时间、脱水时间、洗衣剩余时间和脱水剩余时间);显示主程序控制过程(即洗涤时间设置、洗涤次数设置、脱水时间设置等)。
ALE30EA 31PSEN P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXP3.1/TXP3.2/INTP3.3/INTP3.4/TP3.7/R P3.6/WP3.5/TP2.7/A1P2.3/A1P2.4/A1P2.5/A1P2.6/A1AT89C51图3-2LED 数码管显示电路3.2.3.按键电路部分按键主控开关,如图3-3所示,为主程序控制选择键,当洗衣机接通电源后,处于待机状态(SET=0),数码管显示A ,按下按键主控开关(SET=1),LED 数码管显示为b,按下加时间或次数或减时间或次数设置洗涤次数;再按下主控开关(SET=2),LED 数码管显示为C ,设置洗涤时间;再次按下主控开关(SET=3),LED数码管显示为d,设置脱水时间;最后按下主控开关(SET=4),LED数码管显示为F,表示等待洗涤。
此时按下按键S1,洗衣机开始工作。
若只进行脱水工作,再按下主控开关(SET=5),进入脱水流程。
洗衣机工作结束后,再按下启动开关,进入待机状态。
加时间或次数减时间或次数主控开关启动开关图3-3控制电路中的按键3.2.4蜂鸣电路和电机控制电路蜂鸣器在洗衣机中起提示和报警作用。
P2.7口输出电机控制信号,由继电器触发电路完成电机的驱动。
另外电机电源接220V交流电。
如图3-4所示:RL1G2RL-1A-CF-DC12BUZ1BUZZER图3-4蜂鸣电路和电机控制电路3.2.5指示灯电路指示灯电路在洗衣全过程中起提示洗衣机进行到某个流程的作用。
开始洗衣指示LED-RED待机状态指示LED-RED洗衣次数指示LED-RED洗衣时间指示LED-RED脱水时间指示LED-RED进水指示LED-RED出水指示LED-RED图3-5指示灯电路第四章系统软件设计在本设计中,我们用Keil c51软件对设计中的程序进行调试。
用Protel软件对原理图进行绘制,用Proteus和Keil c51共同完成本设计的仿真。
4.1 Keil c51集成开发环境随着单片机的不断发展,以C为主流的单片机高级语言也不断被更多的单片机爱好者和工程师所喜爱。