基于的51单片机全自动洗衣机设计
基于单片机的全自动洗衣机控制系统毕业设计论文
基于单片机的全自动洗衣机控制系统毕业设计论文基于单片机的洗衣机控制系统设计摘要单片机是计算机家庭的一个重要分支,它具有体积小、价格低、面向控制的特点,适用于各种工业控制、仪器仪表装置,在人类生产和生活的各个领域都有极为广泛应用。
本洗衣机控制系统,采用目前常用的89C51单片机,用汇编语言的编程方法,完成对洗衣机洗衣全过程的自动控制,并采用LED数码显示洗衣过程代码和洗衣剩余时间,洗衣完成后能自动报警。
使全自动洗衣机的使用更加简单、直观和方便。
本设计取材容易,结构简洁,易于制作,具有一定的实用价值。
关键字:单片机、汇编语言、动态扫描目录绪论1.1 设计目标1.2 设计意义第二章硬件和软件的设计方法 2.1 洗衣机的工作过程2.2 全自动洗衣机控制系统硬件的选择 2.3 单片机编程软件的选用第二章全自动洗衣机控制系统的设计原理 3.1 控制系统方框图3.2 控制板电路原理(附整机原理图) 3.3 控制功能及过程第四章洗衣机控制系统的软件系统4.1 洗衣机控制系统软件的编程思路 4.2 主程序及子程序流程图 4.2 洗衣机控制系统的源程序参考文献附录 AT89C51技术手册MCS-51系列单片机指令系统表第一章第一章:绪论在生产和生活的各个领域中,凡是有自动控制要求的地方都会有单片机的出现。
单片机的应用有利于产品的小型化、多功能化和智能化,而且抗干扰能力强,可在各种恶劣的环境下可靠地工作,成本也较低。
所以单片机的应用已极为广泛,它在工业自动化、工业测控、智能仪器仪表、家用电器、信息与通信、军事装备等方面都在发挥着“微电脑控制”的作用。
1.1 设计目标用51系列单片机89C51控制全自动洗衣机的运行,使其能自动地完成进水、洗涤、漂洗、脱水等功能。
不同的衣物,洗涤、漂洗、脱水和洗衣电机正反转所用的时间不同,要求设计能够实现过程选择,并在LED显示屏上显示过程代码。
在运行的时候能显示完成整个过程的剩余时间。
基于单片机的全自动洗衣机控制系统设计
基于单片机的全自动洗衣机控制系统设计
本文基于单片机技术,设计了一种全自动洗衣机控制系统。
该系
统采用了微控制器作为主控芯片,利用多种传感器对洗衣机的运行状
态进行监控和反馈,并采用液晶显示屏和按键操作界面,实现了对洗
衣机的全面控制和调节。
首先,本文介绍了洗衣机控制系统的设计原则和功能要求。
针对
用户需求,系统应该具备自动化操作、清洗效果稳定、耗能低等特点。
为达到这些要求,设计人员利用已有的电子和机械技术,创新性地将
控制系统进行了完善和优化,使其在技术和应用水平上均能满足用户
的需求。
其次,本文阐述了洗衣机控制系统的硬件实现方案。
主要涵盖了
微控制器的选型、传感器的选择与应用、负载驱动模块的设计等方面,全面展示了整个控制系统的结构和工作原理。
接着介绍了系统关键部
件的详细设计方案,包括自动化程序的设计、数据采集与处理的方法、通信协议的制定等,为系统的良好运行提供了坚实的技术保障。
最后,本文对系统的实验结果进行了分析和评测。
从洗衣机的功耗、清洗效果、安全性、用户友好性等多个维度对系统进行了考核和
评估,并得出了较为准确和权威的测试结论。
结果表明,本文设计的
洗衣机控制系统在自动化程度、清洗效果、耗能等方面均优于传统洗
衣机,可以达到用户期望的高度。
综上所述,本文基于单片机技术,设计了一种全自动洗衣机控制
系统。
具备自动化操作、清洗效果稳定、耗能低等特点,具有广阔的
应用前景和市场潜力。
本文的成果对洗衣机的自动化控制技术和应用
研究具有一定的启发和参考价值。
基于51单片机的智能洗衣控制系统设计
基于51单片机的智能洗衣控制系统设计1. 引言智能家居技术的发展为我们的生活带来了诸多便利,其中智能洗衣控制系统是其中的一项重要应用。
本文旨在基于51单片机设计一种智能洗衣控制系统,通过对洗衣机的控制和监测,提高洗衣质量和用户体验。
2. 智能洗衣控制系统设计原理2.1 51单片机介绍51单片机是一种常用的微控制器,具有体积小、功耗低、易于编程等特点。
在本设计中,我们选择51单片机作为主要的控制器。
2.2 智能洗衣系统功能需求智能洗衣系统应具备以下功能需求:2.2.1 温度控制:根据用户设定的温度要求,自动调节水温。
2.2.2 洗涤程序选择:根据用户选择不同类型的布料和污渍程度,自动调节洗涤程序。
2.2.3 水位监测:通过传感器实时监测水位情况,并根据需要自动添加或排放水量。
2.2.4 电机驱动:通过电机驱动实现转筒运转、排放水等功能。
...3 实验结果与分析在实际实验中,我们成功地实现了基于51单片机的智能洗衣控制系统,并进行了多组洗衣实验。
通过对洗衣机的控制和监测,系统能够根据用户设定的要求进行智能化的洗涤操作,并在完成后自动停止。
4 总结与展望通过本次研究,我们成功地设计并实现了一种基于51单片机的智能洗衣控制系统。
该系统具备温度控制、洗涤程序选择、水位监测和电机驱动等功能,能够提高洗衣质量和用户体验。
然而,目前该系统还存在一些局限性,如对于特殊布料和污渍处理不够精细等。
未来工作可以进一步优化系统设计,并结合更多的传感器和算法来提高智能化程度。
5 致谢本次研究得到了指导教师的悉心指导与帮助,在此向他们表示诚挚的感谢。
同时也感谢参与本研究工作并提供支持与帮助的各位同学们。
6 附录附录中包含了本次研究中使用到的关键代码、电路图、数据表格等详细信息,以供读者参考。
通过对基于51单片机的智能洗衣控制系统的设计,本文详细介绍了系统的原理、功能需求、硬件设计和软件设计等方面。
通过实验验证了系统的可行性,并对实验结果进行了分析。
基于单片机的智能全自动洗衣机模拟控制系统设计
Design of Intelligent Automatic Washing Machine Simulation Control System Based on Single Chip Microcomputer
工作。
VCC
S2 与 P3.4 口相连,S3 与 P3.5 口相连,S6 与 P3.6 口相连,S5
D1
D2
D3
D4
D5
LED
LED
LED
LED
LED
口与 P3.7 口相连,S6 与 P3.0 口相连。按键按下时,输入端 I/0 口 的电平状态为低电平。
R1
R2
R3
R4
R5
2.2k
2.2k
2.2k
2.2k
一个低水位检测,一个高水位检测 ;当进水时高水位检测到 有水,代表进水完毕进行下一步,当排水时,低水位检测没有水, 代表排水结束。高水位传感器与 P1.4 相连,低水位传感器与 P1.7 相连。水位传感器的作用是用于检测高低水位,包括比较器模块 和自制的水导电万能板。其中比较器模块由 LM339 芯片集成电路 组成。水导电万能板是利用水的导电性形成回路,形成电压检测 水位。比较器模块则是通过比较两个输入电压,高于参考电压则 输出高电平,水位实现了检测,每个比较器都有两个输入端和一 个输出端。 2.5 按键控制电路
2.2k
系统整体硬件电路如图 6 所示,主要包括 STC89C51 单片机 主要控制模块,步进电机驱动芯片 L298N 控制模块,显示电路模 块,按键控制模块,出水、进水电路模块,蜂鸣器报警电路模块
基于AT89C51单片机全自动洗衣机的仿真设计
・9 ・
基于 A T 8 9 C 5 1单片机全 自动洗衣机 的仿真设计
杨 雷
( 辽 宁机 电职业技术 学院, 辽宁 丹东 1 1 8 0 0 2 ) C 5 1 单片机设计全 自动洗衣机 , 洗衣机具 有标准洗衣 、 经济洗 衣、 单独 洗衣 以及排 水四种洗 衣工作程序 , 强
结束语 3 . 1整体设计 。按照洗衣机 的功能要求设计硬件 电路 控制 器 本文从 功能要 求 、 硬件设计 、 软件设计 以 及P r o t u e s 仿真 四个 方 T 8 9 C 5 1 作为控制核心 的洗 衣机控制系统 。该 系 采用 A T 8 9 C 5 1 单 片机 , 外部 电路有 电源部分 、 状态 显示部 分 、 输出 面描述 了一个 以 A 统具有硬件简单 、 成本低廉 、 使 用方便 、 可靠性 高等特点 。 控 制部分 、 输入控制部分 、 功能选择部分 。主要组成部 件有单片机 、 发 光二极管 、 三极管 、 电动机 、 电磁 阀以及蜂鸣器等 。 参考文献 3 . 2 电源 电路 。 2 2 0伏交 流电先经过变压器降压 , 再 由四只二极 【 l 】 张婧武, 周灵彬. 单片机 系统 的 P R O T E U S 设 计与仿真[ M 】 . 北京: 电 2 0 0 9 : 1 — 2 , 1 7 8 — 1 7 9 . 管 组成 的桥 式整流 电路进 行整流 , 得到脉 动的直流 电 , 之后 由滤波 子 工 业 出版 社 , 电容进行滤波 , 得到较为平滑 的直 流电 , 最后 由 W7 8 0 5三端集成稳 [ 2 】 隋清江等. 基于 P R O EU T S的 L C D 1 6 0 2 接 口设计与仿真[ J 】 . 微计 算 压块进行稳 压 , 得到 5 V直流 电, 用来 给单 片机等进行供 电。 机信 息, 2 0 1 0 , 7 — 1 : 1 7 1 — 1 7 2 . 3 . 3状态显示 电路 。单片机 P I . 0 一 P I . 7 、 P 2 . 0这九个端 口分别与 f 3 1 赵林 惠. 单片机应 用技 术【 M 1 . 北 京: 北 京科 学出版社, 2 0 0 8 . 4 ] 崔光 照. 单 片机 原理与接 口技 术[ M】 匕 京: 北京 邮电大 学 出版社 , 发 光二极管 的负极连接 , 发光二极 管 的正极 与电源连接 , 组 成状态 [
基于单片机的自动洗衣机设计
1引言随着经济科技的发展,生活中家用电器的功能也越来越丰富,洗衣机作为人们日常生活中必不可少的家用电器,也不断的需要进一步提升其便利性。
但是传统的仅由继电器控制的普通洗衣机,只能手动进行单一的洗衣功能转换,大大的浪费了洗衣所需的时间和精力,给使用者带来了很大的不便。
为了提升洗衣机使用的便利性,采用单片机来作为控制器,可以实现灵活多变的控制方式,能够很好的满足人们对洗衣机功能的要求。
作为一个微控制器,单片机最大的特点就是物美价廉,因而被广泛应用在各种数字系统中。
本文通过使用STC89C51单片机作为控制器,设计一款可以完成自动洗衣流程的洗衣机控制电路,该电路操作简单,功能灵活,具有很大的实用性。
通过对基于单片机的控制电路的制作进行深刻钻研,可以使我们对单片机有更加深刻的见解,同时也为将来的工作与学习打下一定基础。
1.1研究背景及现状1. 洗衣机的分类普通洗衣机:具备洗涤,排水,脱水功能,每一功能均需手动操作。
半自动洗衣机:具有洗涤,排水,脱水功能,不同于普通洗衣机的是洗涤与脱水功能相互独立,洗衣机一边是进行洗衣的,而另一边是进行脱水甩干的。
全自动洗衣机:在启动电源后选择相应模式即可自动实现所设定的全部功能,期间无需任何手动操作。
2.全自动洗衣机在国内外的现状及水平欧美发达国家的科学技术水平相对较高,对家用电器的性能指标也在不断提高,目前最先进的洗衣机可以做到智能控制洗衣的全过程,只需将衣物放入洗衣机,洗衣机就可以自己选择洗衣的水位,洗涤剂的用量,洗衣的时间,并能最大限度的减小对衣物的损伤。
我国的洗衣机制造业起步较晚,但由于引进了国外的先进技术,国产洗衣机的生产水平已逐步提高,缩短了与发达国家的差距。
目前全自动智能洗衣机正向着大容量,健康化,节能化,高度自动化和微型化发展【1】。
这就要求设计师在设计洗衣机时能要有更优秀和创新的思路方法,从而实现用户的各种需求,提高洗衣机的便利性。
孟娇娇等人利用51单片机为基础,设计出全自动洗衣机的控制系统,实现对洗衣机各项功能的优化【2】。
基于的51单片机全自动洗衣机设计(优.选)
全自动洗衣机课程设计基于51单片机,C语言实现。
基本要求模拟全自动洗衣机工作过程。
以电机替代洗衣机电机。
显示洗衣机工作的状态(进水、浸泡、洗衣、脱水、结束)。
显示工作剩余时间(洗衣程序可自定义,时间精度:秒)。
洗衣时交替正、反转。
扩展要求洗衣和脱水时电机转速不同。
增加水位传感器输入。
故障报警。
增加声音提示。
其它自定义功能。
设计用Preteus仿真:仿真图如下:C文件函数代码:#include<reg51.h>//****************************//#define uchar unsigned char#define uint unsigned int//*******************************// //***************************// sbit mo_r = P3^2; //电机右控制线sbit mo_l = P3^3; //电机左控制线//****************************// sbit key_menu = P3^4; // 菜单按键sbit key_on = P3^5; // 开始按键sbit key_off = P3^6; // 结束按键sbit key_se = P3^7; // 菜单选择按键//***************************// sbit led_in = P0^0; // 进水指示灯sbit led_xi = P0^1; // 洗衣指示灯sbit led_pao = P0^2; // 泡洗指示灯sbit led_xx = P0^3; // 脱水指示灯sbit led_out = P0^4; // 出水指示灯sbit led_over = P0^5; // 洗衣结束指示灯sbit led_work = P0^6; // 电机工作指示灯sbit led_wring = P0^7; // 报警指示灯sbit other = P3^1; // 脱水电源控制开关sbit anther = P3^0; // 洗衣电源控制开关//******************************//uchar code num[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};////*****************************//char sec = 0; // 时间秒char min = 0; // 时间分uchar count=0; // 中断计数uchar flag0=0; // 洗衣机工作状态标志uchar flag1=0; // 进水次数标志uchar flag2=0; // 出水次数标志uchar flag3=0; // 泡洗次数标志uchar err =0; // 报警标志uchar quan = 0;//正反转计数//**********************************//// 函数声明//*************************************// void delay();// 延时函数void in(); // 进水子程序void out(); // 出水子程序void over(); // 结束子程序void xi(); // 洗衣子程序void pao(); // 泡衣子程序void xx(); // 脱水子程序void on(); // 工作on处理子程序void se(); // 显示菜单选择void SEG_display(); //显示时间子程序void key_scan(); // 按键扫描子程序//*****************************//// 延时函数//****************************//void delay(uint i){uint x,y;for(x=i;x>0;x--)for(y=120;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(){ anther=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(){ 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(flag0 == 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_scan(){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 = num[min/10];delay(10);P1 = 0x02;P2 = num[min%10];delay(10);P1 = 0x04;P2 = num[sec/10];delay(10);P1 = 0x08;P2 = num[sec%10];delay(10);}//*********************************// // 主函数//*********************************// void main(){led_in=0;anther=0;other=0;while(1){SEG_display();key_scan();}}//**********************************// // 定时器0中断处理程序//**********************************// void timer0() interrupt 1{TH0=(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;case 3:flag0=2;pao();break;case 4:flag0=2;pao();break;default: err=1;led_wring = 0;}}//**********************************//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;default: err=1;led_wring = 0;}}//**********************************//if((sec<0)&&(min==0)&&(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;default: err= 1;led_wring = 0;}}//***********************************//if((sec<0)&&(min==0)&&(flag0==3)){ sec = 0;over();}}}最新文件---------------- 仅供参考--------------------已改成word文本--------------------- 方便更改。
单片机课程设计---单片机控制全自动洗衣机
教育部直属国家“211工程”重点建设高校单片机原理课程设计报告指导教师:王宪学生学号:0702100229学生姓名:王侠学生班级:通信1002一、设计目标用51系列单片机控制全自动洗衣机的运行,使其能自动地完成进水、洗涤、漂洗、脱水等功能。
采用LED和数码显示管显示洗衣机所处在的模式和水位,所处的的洗衣状态,水温,以及完成洗衣的剩余时间。
实现不同模式下水位的选择一共三种模式(标准,轻柔,快洗),四种水位,当洗衣机启动后,上水电磁阀打开注水,当水到达设定的限位时,上水电磁阀断电,注水过程停止,启动电机全自动控制洗衣操作,整个过程的进行按时间控制,时间自定,软件编程使用汇编语言。
洗衣机功能要求二、洗衣机的硬件设计本系统实现了对洗衣机整个洗衣过程的控制,包括用户参数输入、洗衣、漂洗、排水和脱水等阶段。
控制系统主要由电源电路、单片机控制系统和外部硬件电路构成。
电源采用三端集成固定稳压器7805提供+5V电源,单片机控制系统负责控制洗衣机的工作过程,主要由AT89S51单片机、2位共阳数码管、按键、蜂鸣器、LED指示灯组成;外部硬件电路有继电器、三极管、电动机、进水电磁阀、排水电磁阀组成。
2.1 按键洗衣机面板上有4个按钮:1K1为启动键,K2用于模拟洗衣机的盖板打开,K3用于快速洗衣方式;当脱水时,模拟盖板合闭,K4用于脱水。
2.2 洗衣程序洗衣机的主要工作程序是:洗涤——脱水——漂洗——脱水——漂洗——脱水。
(1)洗涤过程:放好待洗物,启动开关,进水阀通电,向洗衣机供水,当供水达到预定水位时,水位开关接通,进水阀断电关闭,停止供水。
洗涤电动机接通电源,带动波轮(或桶)旋转,产生各种形式的水流搅动衣物进行洗涤。
通过电动不停的正转、停、反转、反复循环,形成洗涤水对洗涤物产生强烈的翻滚作用。
同时,衣物之间、衣物与四周桶壁之间产生互相摩擦和撞击力,以次达到洗涤衣物的目的。
(2)漂洗过程:漂洗的目的在于清除衣物上的洗涤液,因此,漂洗过程与洗涤过程的电器动作是完全相同的。
基于51单片机的全自动洗衣机控制设计
《单片机技术与应用》课程设计洗衣机控制设计专业班级:学号:姓名:目录一、设计目的要求 (3)二、设计要目标 (3)三、硬件设计 (4)1、系统设计流程 (4)1.1系统模块划分 (5)2、模块设计 (7)2.1AT89C51单片机控制模块的设计 (7)2.1.1 AT89C51介绍 (7)2.1.2AT89C51单片机的主要管脚功能 (7)2.2单片机系统复位电路 (8)2.3标准时钟电路 (9)2.4控制电路设计 (10)2.5显示电路设计 (10)2.6数码管显示电路设计 (11)2.7水位检测电路 (13)2.7.1进水控制电路 (13)2.7.2排水控制电路 (14)2.8水位监测模块 (14)2.9报警电路设计 (15)3.0电机控制系统设计 (15)四、软件设计 (18)1、系统设计流程 (18)1.1系统模块划分 (18)2、模块设计 (19)2.1主程序 (19)2.1.1 主程序执行 (19)12.2三个运行方案程序 (20)2.2.1 三个运行方案执行 (20)五、结果讨论 (22)5.1仿真原理图: (22)六、工作总结 (25)附录 (26)原理图: (26)参考文献 (26)2一、设计目的要求设计要求(1)洗衣机可选择多种洗涤状态,用户只需要选择洗涤模式,洗衣机自动选择洗涤程序,完成洗涤。
(2)暂停功能。
不管洗衣机工作在什么状态,当按下暂停键时,洗衣机必须暂停工作,待驱动键按下后洗衣机又能按原来所选择的工作方式继续工作。
(3)声光显示功能。
洗衣机各种工作方式的选择和各种工作状态均有声光提示或显示。
(4)本设计包含硬件和软件设计。
(5)因为是全自动洗衣机,程序将完成洗涤、脱水的全过程。
(6)脱水完成后,蜂鸣器蜂鸣,通知用户洗涤完成。
二、设计要目标本系统控制的对象为套桶式单缸低波轮全自动洗衣机,其功能要求如下:1.强、弱洗涤功能。
强洗时正、反转驱动时间各为4秒,间歇时间为1秒;标准洗时正、反转驱动时间各为3秒,间歇时间为1秒弱洗洗时正、反转驱动时间各为2秒,间歇时间为1秒2.三种洗衣工作程序,即标准程序强洗程序、弱洗程序和甩干程序。
基于单片机的全自动洗衣机系统设计
基于单片机的全自动洗衣机系统设计一、本文概述随着科技的进步和人们生活水平的提高,家用电器在日常生活中扮演着越来越重要的角色。
全自动洗衣机作为其中的一种,其便捷性和高效性受到了广大用户的青睐。
传统的洗衣机设计在智能化、节能性、操作简便性等方面仍有待提升。
为此,本文提出了一种基于单片机的全自动洗衣机系统设计,旨在通过技术创新和智能控制,为用户提供更加人性化、高效且节能的洗衣体验。
本文将详细介绍该系统的设计原理、硬件构成、软件编程以及实际应用效果。
我们将对单片机的选择及其在系统中的作用进行阐述,同时分析洗衣机控制系统中所需的传感器和执行器。
接着,我们将深入探讨软件设计的关键技术和算法,包括控制逻辑的实现、人机交互界面的设计以及故障检测和处理机制。
我们将通过实际测试和用户体验反馈,对该系统的性能进行评估和优化。
本文旨在提供一种基于单片机的全自动洗衣机系统设计方案,为相关领域的研究和实践提供有益的参考和借鉴。
通过不断优化和创新,我们期待这种智能化、高效且节能的洗衣机能够在未来得到更广泛的应用,为人们的生活带来更多便利和舒适。
二、系统总体设计全自动洗衣机系统的设计,基于单片机作为核心控制器,旨在实现洗衣机的全自动化和智能化。
整个系统由单片机、电机驱动模块、水位检测模块、洗涤剂投放模块、温度控制模块、显示模块和用户交互模块等多个子模块组成。
我们选择一款性能稳定、价格适中且易于编程的单片机作为本系统的核心控制器。
该单片机将负责接收用户输入指令、处理传感器信号、控制各功能模块以及实现与显示模块的通信。
通过编程,单片机能够实现对洗衣机的全面控制,包括启动、停止、调整洗涤方式、设定洗涤时间等功能。
电机驱动模块是洗衣机的动力来源,负责驱动洗衣机的电机进行旋转。
我们选用一款能够驱动电机正反转且具备调速功能的驱动模块,通过单片机输出的PWM信号实现对电机转速的精确控制。
电机驱动模块还具备过流保护功能,以确保系统的安全可靠。
基于单片机的全自动洗衣机控制系统设计毕业论文
作者签名:日期: 年 月 日
导师签名: 日期: 年 月的容包括:
1)封面(按教务处制定的标准封面格式制作)
2)原创性声明
3)中文摘要(300字左右)、关键词
4)外文摘要、关键词
5)目次页(附件不统一编入)
6)论文主体部分:引言(或绪论)、正文、结论
2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订
摘 要
该系统是《基于单片机的全自动洗衣机控制系统设计》。系统采用AT89C51单片机作为核心控制芯片。并且辅以必要的外围器件和电路,通过I/O口输出控制电动机运行和停止,通过AT89C51单片机部定时器中断来记录洗衣时间和进水时间,通过按键来进行洗衣参数设置。通过AT89C51单片机驱动数码管显示洗衣机的工作时间,LED指示灯用作洗衣机的工作状态显示,用两个电控水龙头进行加水和放水,通过蜂鸣器提示洗衣结束。通过外部中断来控制进水和放水。论文重点阐述单片机和控制系统模块的设计。
2.洗衣机的发展前景与待解决的问题
1.国外先进技术与开发前景:
当今世界是技术、知识大爆炸的年代,只要人们有需要,就有可能生产出某种产品来满足人们的需要。洗衣机的发展正是这样,人们在生活中发现了它的某些不便,就会在实际中不断地改进和完善它,新型的洗衣机正是在这种情况下诞生的。
(1)超声波洗衣机超声振动产生空穴现象,在洗涤过气泡的生产和消失的运动,产生强水压,再加入小量洗衣剂,振动纤维,超声乳化,去污,水中气泡上升,产生了从洗涤桶中央向外侧翻动的水流,使衣服之间相互摩擦,并与洗涤剂充分接触产生很有效的洗涤作用。这种洗衣机洗涤桶小,桶无运动部件,无机械电气故障,修理方便。不缠绕,不伤布料,洗衣效果好,省水,省电。
作者签名:日期: 年 月 日
毕业论文之基于51单片机的全自动洗衣机设计
成都理工大学工程技术学院毕业论文基于51单片机的全自动洗衣机设计作者:XXXXXXXXX专业名称:XXXXXXXXX指导教师:XXXXXXXXXX 讲师摘要随着数字技术的快速发展,数字技术被广泛应用于智能控制的领域中。
单片机以体积小、功能全、价格低廉、开发方便的优势得到了许多电子系统设计者的青睐。
它适合于实时控制,可构成工业控制器、智能仪表、智能接口、智能武器装置以及通用测控单元等。
本文以AT89C52单片机为核心设计了全自动洗衣机控制系统,本系统实现了对洗衣机整个洗衣过程的控制,包括用户参数输入、进水、洗衣、泡洗、脱水、出水和结束报警等几个阶段。
控制系统主要由电源电路、单片机控制系统和外部硬件电路三大模块组成。
电源电路为单片机主控系统提供5v的直流电压;单片机主控系统负责控制洗衣机的工作过程,主要由AT89C52单片机、数码管、按键、蜂鸣器、LED指示灯组成;外部硬件电路有继电器、三极管、LED灯组成。
本系统的电路并不复杂,给AT89C52单片机载入软件程序后,能够实现全自动洗衣机的基本功能。
虽然不能与电器市场上的洗衣机控制系统媲美,但也具有一定的实用性。
关键词:AT89C52用户参数继电器控制系统LED蜂鸣器AbstractWith its rapid development, digital technology is widely used in the field of control system. Single chip microcontroller is favored by many electronic system designers for its smallness, full function, low price and easy application. Its pretty fit for real-time control as a core in industrial controller, intelligent apparatus, intelligent interface, intelligent weapon device, universal measure control unit, etc.This article designs a full-automatic washing machine control system with AT89S51 as core. This system realizes whole working course of full-automatic washing machine, including four parts: user parameter input, wash, dehydrate and ending music play. Hardware system is made up of three modules: power supply circuit, digital control circuit and machine control circuit. Power supply circuit provides steady DC 5V voltage for digital control circuit and AC 220V for motor. Digital control circuit takes charge of controlling the working course. It consists of AT89S51, double-figured common-cathoded numeral display, buttons, buzzer, LED. Machine control circuit realizes the functions of water level detect, motor driven, water import and export, it consists of water level detector, motor, transmission system components and penstocks.After downloading the program to AT89S51, this circuit can realize basic functions of full-automatic washing machine. It seems hard for this control system to compare with perfect ones in the electrical appliance market, but it has certain practicability.Keywords: AT89C52 ; User parameter input ;water level detector;LED ;Control system;Buzzer目录摘要 (I)Abstract (II)目录....................................................................................................................... I II 引言. (5)1 概述 (6)1.1 课题开发背景 (6)1.2 设计的目的和意义 (6)1.3 国内外现状及水平 (7)2设计方案 (9)2.1 设计任务 (9)2.2 洗衣机的设计方案 (9)2.2.1 按键 (9)2.2.2 洗衣程序 (9)2.2.3 设计总方框图 (10)2.3 控制系统的功能 (10)3 硬件设计 (12)控制系统的电路组成 (12)3.2 电源电路 (13)3.3 单片机控制电路 (13)AT89C52单片机主控系统 (13)3.3.2 单片机的复位电路 (16)3.3.3 单片机的时钟电路 (17)3.3.4 显示电路 (17)3.3.5 蜂鸣器报警电路 (20)3.3.6 电动机的控制电路 (20)3.3.7 进水/排水电路 (21)3.4 主电路图 (22)第4章软件设计 (23)4.1 主程序设计 (23)4.2 洗涤程序的设计 (25)4.3 漂洗程序的设计 (25)4.4 脱水程序的设计 (26)第5章调试 (27)5.1 硬件调试 (27)5.2 软件调试 (28)5.3 系统调试结果 (28)5.3.1 洗涤 (29)5.3.2 漂洗 (29)5.3.3 脱水 (30)结论 (31)参考文献 (33)附录 (34)引言目前中国洗衣机市场正进入更新换代的时期,市场潜力巨大,人们对于洗衣机的要求也是越来越高。
《2024年基于单片机的全自动洗衣机系统设计》范文
《基于单片机的全自动洗衣机系统设计》篇一一、引言随着科技的进步和人们生活水平的提高,全自动洗衣机已经成为了现代家庭不可或缺的家电之一。
为了提高洗衣机的智能化程度和用户体验,本文提出了一种基于单片机的全自动洗衣机系统设计。
该系统通过单片机控制,实现了洗衣过程的自动化、智能化,提高了洗衣效率,同时也方便了用户的使用。
二、系统设计概述本系统以单片机为核心控制器,通过连接各种传感器、执行器等外部设备,实现对洗衣过程的自动化控制。
系统主要由单片机控制模块、电机驱动模块、水位检测模块、温度检测模块、洗衣程序模块等组成。
三、硬件设计1. 单片机控制模块:本系统采用单片机作为核心控制器,负责接收用户输入的指令,控制各个模块的工作。
单片机具有体积小、功耗低、性能稳定等优点,能够满足系统的需求。
2. 电机驱动模块:电机驱动模块负责驱动洗衣机的洗涤电机和脱水电机。
本系统采用PWM(脉宽调制)技术,通过单片机控制电机驱动模块的开关,实现对电机的精确控制。
3. 水位检测模块:水位检测模块通过传感器实时检测洗衣机内的水位,将检测结果反馈给单片机,以便单片机根据水位情况调整洗衣程序。
4. 温度检测模块:温度检测模块通过温度传感器实时检测洗衣机内的水温,将检测结果反馈给单片机,以便单片机根据水温情况调整洗涤时间和洗涤剂的使用量。
5. 洗衣程序模块:洗衣程序模块根据用户的选择和洗衣的实际需求,通过单片机控制电机驱动模块、水位检测模块和温度检测模块等外部设备,实现对洗衣过程的自动化控制。
四、软件设计本系统的软件设计主要包括单片机的程序设计、人机交互界面设计和洗衣程序的设计。
1. 单片机的程序设计:单片机的程序设计是实现系统功能的关键。
本系统采用C语言进行编程,通过编写相应的程序代码,实现单片机的控制功能。
2. 人机交互界面设计:人机交互界面是用户与系统进行交互的窗口。
本系统采用LCD显示屏作为人机交互界面,通过编写相应的程序代码,实现用户与系统的交互功能。
《2024年基于单片机的全自动洗衣机系统设计》范文
《基于单片机的全自动洗衣机系统设计》篇一一、引言随着科技的不断发展,家电智能化已成为现代家庭生活的重要标志。
其中,全自动洗衣机以其便捷、高效的特点深受消费者喜爱。
本文将介绍一种基于单片机的全自动洗衣机系统设计,通过智能化控制,实现洗衣过程的自动化、高效化。
二、系统概述本系统以单片机为核心控制器,结合传感器、电机驱动、水位控制等模块,实现对洗衣机的全自动控制。
系统具备进水、洗衣、漂洗、脱水、排水等功能,可根据衣物类型、污渍程度等自动调整洗衣参数,达到最佳的洗衣效果。
三、硬件设计1. 单片机控制器:作为系统的核心,负责接收用户指令、控制各模块工作。
2. 传感器模块:包括水位传感器、温度传感器等,用于检测洗衣机的工作状态及环境参数。
3. 电机驱动模块:控制洗衣机的进水、洗涤、脱水等电机,实现洗衣过程的自动化。
4. 水位控制模块:通过水位传感器实时监测水位,自动控制进水阀的开关,保持水位在合适范围内。
5. 通信接口:便于与上位机或其他设备进行通信,实现远程控制或数据传输。
四、软件设计1. 主程序:负责初始化系统、接收用户指令、调用各子程序等。
2. 洗衣程序:根据衣物类型、污渍程度等自动调整洗衣参数,包括进水、洗涤、漂洗、脱水等步骤。
3. 通信程序:实现与上位机或其他设备的通信,接收远程控制指令或发送数据。
4. 故障诊断程序:实时监测系统状态,发现故障时自动报警并提示用户。
五、系统实现1. 用户通过操作面板或手机APP输入洗衣指令,包括衣物类型、洗涤模式、时间等。
2. 单片机控制器接收指令后,根据预设的算法自动调整洗衣参数,并通过电机驱动模块控制洗衣机的进水、洗涤、脱水等过程。
3. 传感器模块实时监测水位、温度等参数,确保洗衣机在合适的工作环境下运行。
4. 如遇故障,系统会自动报警并提示用户,同时可通过通信接口将故障信息发送至手机APP或上位机。
六、系统优势1. 自动化程度高:本系统可实现洗衣过程的自动化,用户只需设置洗衣参数,即可轻松完成洗衣任务。
毕业设计 毕业论文:基于单片机的洗衣机控制电路的设计
摘要本设计是以数字集成电路技术为基础,以8051单片机为核心,软件、硬件相结合,组成洗衣机控制电路。
实现了洗衣机进水、洗涤、漂洗、脱水、排水等功能的自动进行,并且设计了指示灯,用来指示洗衣机的工作状态。
基于单片机的自动洗衣机控制系统具有精度高、功能强﹑经济性好的特点。
无论在提高产品质量还是产品数量,节约能源还是改善劳动条件等方面都显示出无比的优越性。
关键词:洗衣机;单片机;集成电路;控制系统ABSTRACTThis design mainly introdcts the washing machine control circuit whichis based on the digital integrated circuit technology , using the single chip microcomputer 80 51 as the core, with combining software with hardware . The washing machine contr ol circuit realizes the function of washing machine water, washing, rinse, dehydratio n and drainage.Besides we design the indicator light which can indicate the working state of the washing machine.Based on single chip microcomputer,the automatic washing machine control system has the property of high precision, strong function, good economy and so on. No matter in the aspect of increasing the quality and quantity of products, saving energy or improving working conditions, the automatic washing machine control system has clinking superiorities.Key words:The washing machine; 8051MCU;Integrated circuit ;Control system目录摘要 (Ⅰ)ABSTRACT (Ⅱ)第1章引言 (1)1.1 研究背景、目的与意义 (1)1.2 洗衣机的分类 (2)1.3 洗衣机的工作原理 (3)1.3.1普通型波轮洗衣机: (3)1.3.2机械全自动洗衣机: (4)1.4国内外洗衣机应用现状及发展趋势 (4)第2章方案的论证与选择 (6)2.1 设计要求 (6)2.2设计方案与比较 (6)2.2.1方案设计 (6)2.2.2 方案比较 (7)2.3控制功能要求 (8)2.4实现方法 (8)第3章硬件电路的设计 (9)3.1 系统的整体框图 (9)3.2 8051单片机 (11)3.2.1管脚说明 (11)3.2.2 单片机最小系统复位电路 (13)3.3 电源电路 (14)3.4 标准时钟电路 (15)3.5键盘输入及显示电路 (16)3.6数码管显示电路 (18)3.7水位检测电路 (20)3.7.1.水位开关 (20)3.7.2.水位监测模块 (21)3.8报警电路设计 (22)3.9 电机控制系统 (22)3.11硬件系统整体电路图 (23)第4章系统软件设计 (25)4.1 主程序设计 (25)4.2洗涤程序设计 (26)4.3计时程序设计 (27)第5章洗衣机功能的仿真 (29)5.1 仿真流程 (29)5.2 仿真图 (31)结束语 (32)致谢 (33)参考文献 (34)附录Ⅰ整体电路图 (35)附录Ⅱ源程序 (36)第1章引言1.1 研究背景、目的与意义洗衣机是一种在家庭中不可缺少的家用电器,发展非常快,全自动式洗衣机因使用方便得到大家的青睐。
基于单片机的洗衣机智能控制系统
全自动洗衣机的设计一、设计要求洗衣机的洗涤原理是由模拟人工洗涤衣物发展而来的,即通过翻滚、摩擦、水的冲刷等机械作用以及洗涤剂的表面活化作用,将附着在衣物上的污垢除掉,以达到洗净衣物的目的。
全自动洗衣机是常见的家用电器。
它能够按照预设模式自动地完成衣物的洗涤、漂洗和脱水,也可以单独地进行洗涤、漂洗和脱水操作,这些过程一般按时间进行控制。
通常在给定的模式下,根据衣物多少允许用户设置不同的水位,当洗衣机启动后,上水电磁阀打开注水,当水到达设定的限位时,上水电磁阀断电,注水过程停止,启动电机,即可开始洗衣操作,为了提高洗衣效率,电机一般先正转若干秒,然后再反转若干秒。
另外,每个洗衣机都有容量限制,当洗衣量大于它的额定容量容量时,控制系统报警并且不启动。
本设计要实现的功能有:(1)用户参数的输入:用户根据衣物的数量和质地确定洗涤时间、漂洗次数、脱水时间,然后通过按键输入具体的参数。
(2)参数和时间的显示:灵活地运用数码显示管会带来许多方便,它可以用来显示用户实时所处的洗衣功能状态以及所剩时间。
(3)实时控制的实现:单片机在获取了用户输入的参数后,对其进行分析处理,然后按照计算结果对洗衣过程进行实时控制。
(4)水位检测的实现:水位的高低影响着整个洗衣过程的进行,因此需要水位检测器将水位的变化发送给单片机,单片机根据水位的情况确定下一步应该做什么。
(5)洗衣过程的实现:一般的洗衣过程包括注水、洗涤、漂洗、排水和脱水这些步骤。
在洗衣过程中,系统主要控制进水电磁阀、排水电磁阀的打开和关闭,电机的正转、反转和停止。
(6)洗衣完毕的通知:当洗衣过程结束后,蜂鸣器就报警通知用户洗衣完毕。
二、设计分析本设计在设计洗衣机的控制系统时,洗衣机通过控制系统设定洗衣程序,在内桶(洗涤脱水桶)自动完成注水、洗涤、漂洗、浸泡、排水和脱水全过程。
洗衣时,控制系统打开进水电磁阀,开始注水;当洗涤脱水桶内的水位达到系统设定值时,水位检测器向单片机发送一个低电平,通知控制系统关闭进水电磁阀,同时启动电机洗衣。
基于MCS-51的全自动洗衣机控制系统的模拟设计与实现
本科毕业设计论文题目基于MCS-51的全自动洗衣机控制系统的模拟设计与实现专业名称学生姓名指导教师毕业时间2014.6毕业 任务书一、题目基于MCS-51的全自动洗衣机控制系统的模拟设计与实现二、指导思想和目的要求本题目可锻炼学生对计算机应用系统的设计与调试能力、绘制电路图的能力和程序设计能力。
要求能用Proteus 软件绘制基于单片机的全自动洗衣机系统硬件电路,在keil 软件下用C 语言编写自动洗衣控制程序,将软硬件进行关联,实现全自动洗衣机的系统模拟。
三、主要技术指标1.掌握MCS-51单片机的工作原理和单片机应用系统的开发过程和系统模拟调试方法。
2.掌握keil 软件的应用方法,熟练应用C51软件编写应用程序代码。
3.掌握Proteus 软件,熟练绘制全自动洗衣机系统原理图,能将目标程序与硬件关联,进行系统的模拟调试。
4.掌握LED 等、电机、键盘等常用设备的工作原理,绘制单片机对这些设备控制的原理图,编写控制程序并进行模拟调试。
5.掌握全自动洗衣机的工作原理,设计洗衣机控制系统原理图,用C51进行编程,实现自动洗衣功能。
6. 按时、按质、按量完成论文撰写,按标准格式装订成册。
四、进度和要求第1周:布置任务,熟悉Proteus 软件和keil 软件环境。
第2周~第3周:熟悉单片机最小系统工作原理,用单片机控制LED 灯实现流水灯效果。
第4周:熟悉七段数码管显示原理,用单片机控制实现静态和动态两种显示效果。
第5周:熟悉直流电机的工作原理和调速方法,用单片机控制电机以不同速设计论文度和方向进行工作。
第6周~第7周:熟悉键盘输入方法,用单片机控制接收洗衣机上的按键值,并将接收值进行显示。
第8周~第9周:熟悉全自动洗衣机的工作原理,绘制洗衣机系统电路图,编写用按键控制洗衣流程。
第10周~第11周:进行设备联调,实现全自动洗衣功能。
第12周~第13周:总结设计内容,完成毕业论文初稿。
第14周:修改论文,完成正式稿。
基于51单片机的全自动洗衣机控制系统设计
基于51单片机的全自动洗衣机控制系统设计王聪1 引言全自动洗衣机作为家用电器,已经走入了千家万户的生活中,成为了我们生活的必需品。
目前中国的洗衣机市场需求特别大而且潜力巨大,人们对洗衣机的要求也越来越高。
目前洗衣机的功能很多,但是并不能完全满足人们的需求,这就要求设计者们在进行设计以及改进是更加贴近生活,符合民意,将人们的需求变为设计的根本,创造出更节能、更安全、更干净舒适的全自动洗衣机。
目前的洗衣机市场竞争压力大,各个厂商在设计和制造时往往只能单一提现洗衣机的几个功能,体现出自己的个性化而并不能全面兼备。
这就给我们带来了生活上的不便,我们需要更加智能而且全面的洗衣机。
所以,本论文就全自动洗衣机的选择与性能设计进行讨论与设计。
此次设计需要解决的问题有:如何选择本次设计的全自动洗衣机类型;分析此类全自动洗衣机的优缺点,提出课题设计方案方向;就全自动洗衣机的安全性与清洁性进行设想与设计;单片机与传感器的选择、安置以及各自实现的功能;电路及控制系统的设计。
1.1课题的提出及意义本次所选择的题目为基于单片机的全自动洗衣机的控制系统的设计。
在我们日常生活中,全自动洗衣机主要可以分为波轮式洗衣机和滚筒式洗衣机。
在选择洗衣机的类型之前,要对两种洗衣机的应用范围、工作方式、内部结构进行了解调查。
通过走访邻里和网上调查,了解相对小样本下两种洗衣机的使用情况以及在使用过程中出现的一系列问题,根据使用数量的多少和出现问题的程度,选择使用量和出现问题较多的洗衣机。
选题人自行调查两种洗衣机的工作方式、工作1流程、工作原理以及软硬件的构成,自行观察两种洗衣机的实际运行过程以及运行结束后水、衣服的清洁程度。
通过对比两种洗衣机的运行过程以及运行模式,选择洗衣较为干净,运行更接近于手洗模式的洗衣机,选定为我们此次研究对象。
通过选题人的对比和观察,此次研究对象选择为滚筒式全自动洗衣机。
本课题针对于当下全自动洗衣机的研究现状以及能够实现的功能,结合自身的生活需求和常见问题,能够做出基本满足本课题选择的滚筒式全自动洗衣机的控制系统设计。
基于51单片机的全自动洗衣机控制器设计
基于51单片机的全自动洗衣机控制器设计随着科技的进步和人们生活质量的提高,洗衣机已经成为现代家庭中必不可少的家电之一。
然而,传统的洗衣机控制方式往往存在操作复杂、功能单一等问题,无法满足用户对于高效、智能洗涤的需求。
因此,本文将介绍一种基于51单片机的全自动洗衣机控制器的设计,实现洗涤、漂洗、脱水等功能的自动化控制。
一、系统硬件设计1、控制器核心选择本设计选用51单片机作为控制器核心,利用其丰富的I/O口和定时器资源,实现对洗衣机的控制。
通过外接按键和蜂鸣器等元件,实现洗涤方式的选择、启动/停止控制等功能。
2、电源模块设计为了确保洗衣机的稳定运行,本设计采用220V交流电作为电源输入,通过变压器进行降压处理,再经整流滤波后得到稳定的直流电压,为控制器和其他部件供电。
3、输入输出模块设计输入模块主要包括按键和传感器。
其中,按键用于选择洗涤方式,传感器则用于检测水位、水温等信息。
输出模块主要包括继电器和蜂鸣器,继电器用于控制洗衣机的启动/停止,蜂鸣器则用于提示用户洗涤过程的状态。
二、系统软件设计1、程序初始化在程序开始运行时,首先进行初始化操作,包括配置定时器、设置I/O口状态等。
2、洗涤过程控制根据用户选择的洗涤方式,程序将通过定时器控制电机的运转时间,实现不同洗涤模式的自动化控制。
同时,通过检测水位、水温等信息,自动调整洗涤时间和水的温度,提高洗涤效果。
3、漂洗过程控制在洗涤过程结束后,程序将自动进入漂洗阶段。
通过控制进水和排水阀的开闭时间,实现自动漂洗。
同时,根据洗涤过程中收集的衣物量和洗涤效果,智能调整漂洗次数和时间,确保衣物清洗干净。
4、脱水过程控制在漂洗过程结束后,程序将自动进入脱水阶段。
通过控制电机转速和脱水时间,实现衣物的高效脱水。
同时,为了保护衣物和机器的安全,程序将根据衣物的种类和重量信息,智能调整脱水时间和转速,确保脱水过程的顺利进行。
5、报警提示功能为了方便用户及时了解洗涤过程的状态,本设计还实现了报警提示功能。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
全自动洗衣机课程设计基于51单片机,C语言实现。
基本要求模拟全自动洗衣机工作过程。
以电机替代洗衣机电机。
显示洗衣机工作的状态(进水、浸泡、洗衣、脱水、结束)。
显示工作剩余时间(洗衣程序可自定义,时间精度:秒)。
洗衣时交替正、反转。
扩展要求洗衣和脱水时电机转速不同。
增加水位传感器输入。
故障报警。
增加声音提示。
其它自定义功能。
设计用Preteus仿真:仿真图如下:C文件函数代码:#include<reg51.h>//****************************//#define uchar unsigned char#define uint unsigned int//*******************************// //***************************// sbit mo_r = P3^2; //电机右控制线sbit mo_l = P3^3; //电机左控制线//****************************// sbit key_menu = P3^4; // 菜单按键sbit key_on = P3^5; // 开始按键sbit key_off = P3^6; // 结束按键sbit key_se = P3^7; // 菜单选择按键//***************************// sbit led_in = P0^0; // 进水指示灯sbit led_xi = P0^1; // 洗衣指示灯sbit led_pao = P0^2; // 泡洗指示灯sbit led_xx = P0^3; // 脱水指示灯sbit led_out = P0^4; // 出水指示灯sbit led_over = P0^5; // 洗衣结束指示灯sbit led_work = P0^6; // 电机工作指示灯sbit led_wring = P0^7; // 报警指示灯sbit other = P3^1; // 脱水电源控制开关sbit anther = P3^0; // 洗衣电源控制开关//******************************//uchar code num[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};////*****************************//char sec = 0; // 时间秒char min = 0; // 时间分uchar count=0; // 中断计数uchar flag0=0; // 洗衣机工作状态标志uchar flag1=0; // 进水次数标志uchar flag2=0; // 出水次数标志uchar flag3=0; // 泡洗次数标志uchar err =0; // 报警标志uchar quan = 0;//正反转计数//**********************************//// 函数声明//*************************************// void delay();// 延时函数void in(); // 进水子程序void out(); // 出水子程序void over(); // 结束子程序void xi(); // 洗衣子程序void pao(); // 泡衣子程序void xx(); // 脱水子程序void on(); // 工作on处理子程序void se(); // 显示菜单选择void SEG_display(); //显示时间子程序void key_scan(); // 按键扫描子程序//*****************************//// 延时函数//****************************//void delay(uint i){uint x,y;for(x=i;x>0;x--)for(y=120;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(){ anther=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(){ 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(flag0 == 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_scan(){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 = num[min/10];delay(10);P1 = 0x02;P2 = num[min%10];delay(10);P1 = 0x04;P2 = num[sec/10];delay(10);P1 = 0x08;P2 = num[sec%10];delay(10);}//*********************************// // 主函数//*********************************// void main(){led_in=0;anther=0;other=0;while(1){SEG_display();key_scan();}}//**********************************// // 定时器0中断处理程序//**********************************// void timer0() interrupt 1{TH0=(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;case 3:flag0=2;pao();break;case 4:flag0=2;pao();break;default: err=1;led_wring = 0;}}//**********************************//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;default: err=1;led_wring = 0;}}//**********************************//if((sec<0)&&(min==0)&&(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;default: err= 1;led_wring = 0;}}//***********************************//if((sec<0)&&(min==0)&&(flag0==3)){ sec = 0;over();}}}。