基于单片机的自动洗衣机设计.docx
- 文档编号:29648625
- 上传时间:2023-07-25
- 格式:DOCX
- 页数:23
- 大小:1.76MB
基于单片机的自动洗衣机设计.docx
《基于单片机的自动洗衣机设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的自动洗衣机设计.docx(23页珍藏版)》请在冰豆网上搜索。
基于单片机的自动洗衣机设计
1引言
随着经济科技的发展,生活中家用电器的功能也越来越丰富,洗衣机作为人们日常生活中必不可少的家用电器,也不断的需要进一步提升其便利性。
但是传统的仅由继电器控制的普通洗衣机,只能手动进行单一的洗衣功能转换,大大的浪费了洗衣所需的时间和精力,给使用者带来了很大的不便。
为了提升洗衣机使用的便利性,采用单片机来作为控制器,可以实现灵活多变的控制方式,能够很好的满足人们对洗衣机功能的要求。
作为一个微控制器,单片机最大的特点就是物美价廉,因而被广泛应用在各种数字系统中。
本文通过使用STC89C51单片机作为控制器,设计一款可以完成自动洗衣流程的洗衣机控制电路,该电路操作简单,功能灵活,具有很大的实用性。
通过对基于单片机的控制电路的制作进行深刻钻研,可以使我们对单片机有更加深刻的见解,同时也为将来的工作与学习打下一定基础。
1.1研究背景及现状
1.洗衣机的分类
普通洗衣机:
具备洗涤,排水,脱水功能,每一功能均需手动操作。
半自动洗衣机:
具有洗涤,排水,脱水功能,不同于普通洗衣机的是洗涤与脱水功能相互独立,洗衣机一边是进行洗衣的,而另一边是进行脱水甩干的。
全自动洗衣机:
在启动电源后选择相应模式即可自动实现所设定的全部功能,期间无需任何手动操作。
2.全自动洗衣机在国内外的现状及水平
欧美发达国家的科学技术水平相对较高,对家用电器的性能指标也在不断提高,目前最先进的洗衣机可以做到智能控制洗衣的全过程,只需将衣物放入洗衣机,洗衣机就可以自己选择洗衣的水位,洗涤剂的用量,洗衣的时间,并能最大限度的减小对衣物的损伤。
我国的洗衣机制造业起步较晚,但由于引进了国外的先进技术,国产洗衣机的生产水平已逐步提高,缩短了与发达国家的差距。
目前全自动智能洗衣机正向着大容量,健康化,节能化,高度自动化和微型化发展【1】。
这就要求设计师在设计洗衣机时能要有更优秀和创新的思路方法,从而实现用户的各种需求,提高洗衣机的便利性。
孟娇娇等人利用51单片机为基础,设计出全自动洗衣机的控制系统,实现对洗衣机各项功能的优化【2】。
赵华山等人则在传统的洗衣机控制系统设计的基础上,结合电子支付,打造出共享的智能洗衣机控制系统【3】。
王莹莹等人从洗衣机的各项功能入手,对洗衣机的各项功能提出具体分析,进一步优化洗衣机的便利性设计目标【4】。
1.2本人主要工作
本文主要设计了一款以单片机STC89C51为主控芯片的洗衣机控制电路。
在本次设计中首先根据洗衣机的功能需求确定设计方案,通过Altiumdesigner设计出电路原理图,然后用KeiluVision2软件编写程序。
把编译好的软件生成HEX文件加载到单片机中,在Proteus中进行电路的仿真分析,确认无误后将电路图转换为PCB图,然后根据绘制好的PCB图,焊接电路板,焊上元器件通电调试。
经过调试,该电路能够实现预期目标的所有功能。
1.3论文组织与结构
该设计主要分为七个部分:
第一部分主要介绍了洗衣机的主要功能以及发展现状,确定主要工作。
第二部分是确定洗衣机控制电路的主要功能,为以后电路和程序的设计指明方向。
第三部分介绍了单片机STC89C51的主要功能以及电路的各部分工作原理。
第四部分是对电路的软件部分进行分析。
第五部分是对设计的洗衣机控制电路进行仿真和制作。
第六部分是对做出的实物进行功能调试。
第七部分是对整个设计和制作的过程进行总结。
2设计方案
2.1设计任务
2.1.1主要内容:
完成基于STC89C51单片机的洗衣机控制电路、排水电路、电机电路、LED指示电路、显示电路、水位检测、按键电路、蜂鸣报警电路的设计;完成洗衣机洗涤、排水、脱水等工种程序的设计。
2.1.2主要功能:
(1)标准模式洗衣(30分钟):
洗涤10分钟;第一次漂洗8分钟,第二次漂洗6分钟;脱水2分钟。
(2)按键控制洗衣流程:
电源键接通电源,复位键恢复为默认标准流程,洗衣面板控制键控制洗衣时间与模式,按下启动按钮自动执行整个洗衣流程。
(3)LED灯显示工作状态:
洗衣模式灯指示洗衣的模式:
大件,轻柔,标准,快洗,强洗。
洗涤,漂洗,脱水与进出水指示灯则在对用工作状态时灯亮。
(4)数码管:
一位数码管显示水位,三位数码管显示时间。
2.2洗衣机的设计方案
2.2.1按键
实物上有6个选择按钮。
K1为水位选择键。
K2为洗衣模式选择键。
K3为洗衣时间控制键。
K4为启动键。
S1为电源开关键。
S2为复位按键。
2.2.2洗衣程序
通电后,默认标准洗衣指示灯亮起,数码管默认洗衣水位为2,洗衣时间为30,若需改动,则通过操作K1,K2,K3对洗衣流程进行更改,更改完毕后直接选择启动按键,则洗衣机从进水→洗涤→排水→脱水→进水→漂洗→排水→脱水→进水→漂洗→排水→脱水结束报警进行整个流程。
2.2.3设计总方框图
图2.1系统设计总框图
2.3控制系统的功能
基于STC89C51单片机的洗衣机控制电路,写入程序后,自动完成洗衣脱水桶进水、洗涤、漂洗、排水、脱水的全过程【5】。
设定好洗衣的时间,模式,与水位后,洗衣机自动执行一遍洗涤与两遍漂洗流程。
启动洗衣程序后,在控制系统作用下,洗衣机开始进水,当桶内的水位达到预先设定值时,控制系统进水电磁阀,同时启动电机进行洗衣。
在系统的控制下,电机进行正转、停、反转,通过转动形成正反水流;当洗涤时间结束,控制系统切断电机电路,打开排水电磁阀开始排水脱水;然后再次注水,洗衣机进入漂洗状态,两次漂洗后,开始排水,排水后排水阀松开,脱水程序作好准备;系统控制电机单方向高速运转完成脱水程序;当洗衣时间结束后,蜂鸣器报警,系统复位,洗衣程序结束。
选择复位按键则再次进行洗涤,选择电源键则结束洗衣【6】。
3硬件电路设计
3.1电源电路
单片机系统电源部分的电气原理图如图3.1所示。
采用5V直流电压供电。
图3.1电源电气原理图
3.2控制电路设计
本次设计采用的芯片是STC89C51,该单片机是一款增强型8051,在原来内核的基础上经过多次改进,该芯片的功能有了提升。
向该芯片中加载程序时不需要专用的器件,用串口直接下载用户程序,几秒即可完成。
STC89C51有40个管脚【7】,管脚如图3.2。
图3.2STC89C51单片机管脚图
单片机P2.0与P2.5连接电机控制电路。
P2.1与P2.4连接进水/排水电路。
P2.2,P2.3,P2.6,P2.7连接按键电路。
P3.0连接蜂鸣器报警电路。
P1.0-P1.7与P3.4-3.7连接数码管显示电路。
P3.1-P3.3连接传感器电路。
RST,XTAL2,XTAL1,GND连接复位电路。
3.3电机控制电路
电动机M控制部分的电气原理图如图3.3所示。
电动机有两个控制端,分别控制电动机进行正反转操作,正转端与P2.0连接,当洗衣机接到“正转”指令时,P2.0输出高电平,经过L293D的电路放大,从而驱动电机正转。
反转端与P2.5连接,当洗衣机接到“反转”的指令时,P2.5输出高电平,经L293D放大作用,从而使得电机反转。
图3.3电动机控制电路
3.4进水/排水电路
如图3.4所示为进水电路,进水电路与出水电路结构功能一样,不同的是进水阀受P2.1的控制,出水阀受P2.4的控制。
启动洗衣程序后,当需要进水时,电控水龙头的控制端P2.1为低电平,继电器吸合,进水阀打开,洗衣机进水。
当需要排水时电控水龙头的控制端P2.4为低电平,继电器吸合,出水阀打开洗衣机排水。
图3.4进水电路
3.5水位检测电路
此部分电路采用电阻与三极管构成,三极管平时为导通状态,发射极输出低电平【8】,当传感器入水后,水能导电,三极管基机即为高电平,此时三极管截止,发射极输出高电平。
电路连接单片机P3.1-P3.3,可以实时显示洗衣机的三个不同高度的水位。
洗衣机通电后,传感器浸入水中,数码管则可显示出当前对用水位。
水位传感器部分电气原理图如图3.5所示。
图3.5水位传感器电气原理图
3.6时钟电路
时钟电路由晶体振动元件和单片机内部电路组成。
产生的振荡频率为单片机的时钟信号,由此使单片机进行计时和定时。
本电路中设定了三种时间模式,分别为15,30与45。
时间部分显示分钟与秒数,为了便于观察使用,设定的分与秒之间的时间进制为10.
STC89C51单片机内部有一个高增益反相放大器,其输入端为XTAL1,输出端为XTAL2。
把微调电容C1,C2和晶体振荡器跨接在两引脚之间,可以构造出一个稳定的自激振荡器。
在本设计中使用了图3.6所示的电路。
图3.6时钟电路
3.7显示电路
显示模块由发光二极管和LED显示器组成。
在本设计中,我们使用发光二极管(LED)来显示洗衣机的工作状态。
五个发光二极管分别连接到单片机的五个I/O端口,如图3.7所示。
当发光二极管负极对应的P0为低电平时,该发光二极管就会导通则表示对用的工作状态。
LED显示器是由四位共阳数码管构成的,占用P1端口的4个I/O端口。
本次设计采用一位数码管显示水位,三位数码管显示时间。
图3.7发光二极管电路
图3.8四位数码管
3.8蜂鸣器报警电路
本设计采用有源蜂鸣器,当洗衣时间结束后,此时三极管导通,使得三极管具有电流放大作用,控制蜂鸣器报警。
如图3.9所示:
3.8蜂鸣器电路
3.9按键电路
四个按键S2-S5连接单片机后,闭合按键则相应线路接通,即可执行相应功能。
图3.9按键电路图
4软件设计
4.1主程序设计
根据硬件设计要求设计的主程序流程图如图4.1所示。
洗衣机接通电源后,按动电源按钮,单片机上电。
洗衣机进行程序的初始化,包括设定洗衣水位,洗衣模式,洗衣时间。
默认洗衣强度为“标准洗衣”,漂洗次数为2次,根据需求设定洗衣模式,按下启动键按下洗衣机从待机状态进入工作状态,自动完成进水、洗涤、脱水、漂洗的循环过程,当洗衣结束时,蜂鸣器进行报警【9】。
图4.1主程序流程图
4.2洗涤程序的设计
按下启动按键后,洗衣机开始洗涤流程,洗衣机水位到预设值后,电机开始转动,进行洗衣。
洗涤时间结束后,洗衣机脱水,进入漂洗。
程序流程图如图4.2所示:
图4.2洗涤程序流程图
4.3漂洗程序的设计
漂洗与洗涤操作过程相同,只是时间短一些。
漂洗次数为二次。
漂洗程序流程图如图4.3所示:
图4.3漂洗程序流程图
4.4脱水程序的设计
洗衣机排水完成后,启动电机脱水,并保持排水阀开启,脱水完成后,蜂鸣器报警提醒用户洗衣完成。
程序流程图如图4.4所示:
图4.4脱水程序流程图
5仿真
系统仿真采用英国LabcenterElectronics公司推出的Proteus软件【10】。
由于软件与实物功能的原因,仿真与实物调试之间会存在一定的不同。
在仿真中,关于洗衣机水位方面,只能做出不同的水位高度的设定,而不能完成在进水/排水时动态显示水位的变化。
故在仿真中主要分析启动程序后洗衣机自动进行进出水与洗涤,漂洗与脱水的流程。
在Proteus库中找到所需要的元器件,并按照原理图连线,然后单击单片机芯片,加入已经编译好的可执行文件(.hex文件),点击运行,设置水位为2,洗涤时间为30,洗衣模式为标准模式。
如图5.1所示的仿真图所仿真的结果为洗衣机正在执行标准模式下的洗涤操作,此时洗衣机水位为2,洗衣剩余时间为27.6,标准模式与洗涤操作的LED灯亮,电机转动。
图5.1洗涤仿真
如图5.2所示系统仿真图所仿真的结果为洗衣机运行漂洗模式,此时洗衣机水位为2,洗衣剩余时间为16.7,标准模式与漂洗操作的LED灯亮。
图5.2漂洗仿真
如图5.3所示系统仿真图结果为洗衣机运行脱水模式,此时洗衣机水位为2,洗衣剩余时间为3.2,标准模式,排水与脱水LED灯亮。
图5.3脱水仿真
6实际制作
6.1电路图
在电路仿真无误后,在Altiumdesigner中绘制出电路图的原理图文件,并生成电路图的PCB文件。
生成的电路原理图如图6.1,PCB图如图6.2。
图6.1电路图
图6.2电路PCB图
6.2电路焊接与调试
6.2.1电路焊接
生成电路PCB图后,开始焊接实物。
本文采用万用板进行焊接,购置完相应元器件后,在万用板上确定好器件位置,依据PCB开始进行器件连接。
在焊接的过程中,要时刻注意焊接的正确性,不要造成虚焊,此次采用的数码管为共阳极数码管,焊接时要注意极性的阴阳,不要造成焊接错误,影响最终效果,在老师的指导和同学的帮助下,最终完成了实物的焊接,并能对相应的功能进行调试。
焊接完成的实物如图6.3所示。
图6.3实物图
6.2.2洗衣设置
打开电源开关,K1键设置洗衣水位为3,K2键设置洗衣模式为标准,K3键设置洗衣时间为30。
设置结果图如图6.4所示。
图6.4洗衣参数设置
6.2.3洗涤调试
按动K4键,开始洗衣,进入洗涤程序,表示洗涤的LED灯亮,进水阀开启,洗衣机进水,进水完成后开始洗涤。
图6.5为正在洗涤。
图6.5洗涤调试
6.2.4漂洗调试
洗涤结束后,排水阀开启,洗衣机脱水,然后洗衣机漂洗灯亮,再次进水,进水完成后,开始进行漂洗,漂洗过程为两次,图示为第一次漂洗。
图6.6为正在进行漂洗。
图6.6漂洗调试
6.2.5脱水调试
排水结束后,洗衣机进入脱水程序,表示脱水的LED灯与排水阀LED灯亮。
如图6.7表示正在脱水。
图6.7脱水调试
6.2.6报警调试
洗涤时间结束后,电路自动报警,可以选择复位按键继续洗衣,也可按动电源开关结束洗衣。
报警如图6.8所示。
图6.8报警调试
7结束语
本文设计了一款基于STC89C51单片机的洗衣机控制电路,辅以四位共阳数码管,LED灯,按键,蜂鸣器,电动机,继电器构成实物。
该电路在启动后能自动完成一个完整的洗衣流程,包括进水,洗涤,漂洗,脱水,排水,报警。
该电路可以设置不同的洗衣水位与时间,并且可以调节不同洗衣模式。
能够满足大部分人的需求,具有一定的实用性。
本次设计包含了软件和硬件方面的设计,硬件方面主要是电路板的制作,先进行proteus的仿真,通过仿真的方式来验证方案的可行性,然后用Altiumdesigner画原理图以及PCB板,软件设计方面主要就是用keil软件编写C程序代码,编译成功后生成HEX文件,把文件烧录到单片机中,驱动系统工作。
在整个的设计过程中,虽然最终完成了设计,但依然存在着许多的不足,所设计的电路虽然可以完成整个的洗衣流程,但却不能很灵活的去执行某些操作,比如直接跳过洗涤与漂洗程序,而直接执行脱水。
洗衣机的报警电路只能在洗衣完成时进行报警,不能在电路发生故障时进行提示,功能太过单一。
虽然此次设计的控制电路已经能完成部分功能,但我相信经过改进,该电路可以被赋予更多的功能,比如更加灵活的调整洗衣时间,根据放置的衣物自动调整水位等。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 自动 洗衣机 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)