基于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单片机的智能洗衣控制系统设计

基于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单片机的智能洗衣控制系统的设计,本文详细介绍了系统的原理、功能需求、硬件设计和软件设计等方面。

通过实验验证了系统的可行性,并对实验结果进行了分析。

基于单片机的智能全自动洗衣机模拟控制系统设计

基于单片机的智能全自动洗衣机模拟控制系统设计
[关键词]STC89C51 单片机 ;洗衣机模拟控制系统 ;全自动 [中图分类号]TN911-4 ;G434 [文献标志码]A [文章编号]2095–6487(2021)04–0021–03
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 控制模块,显示电路模 块,按键控制模块,出水、进水电路模块,蜂鸣器报警电路模块

基于单片机的洗衣机的控制系统设计

基于单片机的洗衣机的控制系统设计

基于单片机的洗衣机的控制系统设计一、洗衣机控制系统的功能需求分析洗衣机的主要功能是对衣物进行洗涤、漂洗和脱水。

为了实现这些功能,控制系统需要具备以下几个方面的能力:1、洗涤模式选择:用户能够根据衣物的材质和脏污程度选择不同的洗涤模式,如标准洗、快速洗、强力洗等。

2、水位控制:根据衣物的数量自动或手动选择合适的水位,以达到节约用水和提高洗涤效果的目的。

3、洗涤时间控制:不同的洗涤模式对应不同的洗涤时间,控制系统需要准确地控制洗涤过程的时间。

4、转速控制:在脱水阶段,需要根据衣物的重量和材质控制电机的转速,以确保脱水效果和保护衣物。

5、故障检测与报警:能够检测洗衣机运行过程中的故障,如电机过载、水位异常等,并及时发出报警信号。

二、硬件设计1、单片机选型选择一款适合洗衣机控制系统的单片机是至关重要的。

需要考虑单片机的性能、引脚数量、存储容量、价格等因素。

常见的单片机如STM32 系列、ATmega 系列等都可以满足需求。

2、传感器模块(1)水位传感器:用于检测洗衣机内的水位高度,常见的有压力式水位传感器和电容式水位传感器。

(2)衣物重量传感器:通过测量电机的负载来估算衣物的重量,从而为水位和洗涤时间的选择提供依据。

(3)转速传感器:用于检测电机的转速,以实现对脱水转速的精确控制。

3、电机驱动模块洗衣机的电机通常为交流电机或直流无刷电机,需要相应的驱动电路来控制电机的正反转、转速和启停。

可以使用专门的电机驱动芯片,如 L298N 等。

4、显示与按键模块为了方便用户操作和了解洗衣机的工作状态,需要设计显示模块和按键模块。

显示模块可以采用液晶显示屏(LCD)或数码管,按键模块可以采用薄膜按键或机械按键。

5、电源模块为整个控制系统提供稳定的电源,通常采用交流 220V 市电经过变压器降压、整流、滤波和稳压后得到所需的直流电源。

三、软件设计1、主程序流程系统上电后,首先进行初始化操作,包括单片机内部资源的初始化、传感器的校准、显示模块的初始化等。

基于单片机的自动洗衣机设计

基于单片机的自动洗衣机设计

1引言随着经济科技的发展,生活中家用电器的功能也越来越丰富,洗衣机作为人们日常生活中必不可少的家用电器,也不断的需要进一步提升其便利性。

但是传统的仅由继电器控制的普通洗衣机,只能手动进行单一的洗衣功能转换,大大的浪费了洗衣所需的时间和精力,给使用者带来了很大的不便。

为了提升洗衣机使用的便利性,采用单片机来作为控制器,可以实现灵活多变的控制方式,能够很好的满足人们对洗衣机功能的要求。

作为一个微控制器,单片机最大的特点就是物美价廉,因而被广泛应用在各种数字系统中。

本文通过使用STC89C51单片机作为控制器,设计一款可以完成自动洗衣流程的洗衣机控制电路,该电路操作简单,功能灵活,具有很大的实用性。

通过对基于单片机的控制电路的制作进行深刻钻研,可以使我们对单片机有更加深刻的见解,同时也为将来的工作与学习打下一定基础。

1.1研究背景及现状1. 洗衣机的分类普通洗衣机:具备洗涤,排水,脱水功能,每一功能均需手动操作。

半自动洗衣机:具有洗涤,排水,脱水功能,不同于普通洗衣机的是洗涤与脱水功能相互独立,洗衣机一边是进行洗衣的,而另一边是进行脱水甩干的。

全自动洗衣机:在启动电源后选择相应模式即可自动实现所设定的全部功能,期间无需任何手动操作。

2.全自动洗衣机在国内外的现状及水平欧美发达国家的科学技术水平相对较高,对家用电器的性能指标也在不断提高,目前最先进的洗衣机可以做到智能控制洗衣的全过程,只需将衣物放入洗衣机,洗衣机就可以自己选择洗衣的水位,洗涤剂的用量,洗衣的时间,并能最大限度的减小对衣物的损伤。

我国的洗衣机制造业起步较晚,但由于引进了国外的先进技术,国产洗衣机的生产水平已逐步提高,缩短了与发达国家的差距。

目前全自动智能洗衣机正向着大容量,健康化,节能化,高度自动化和微型化发展【1】。

这就要求设计师在设计洗衣机时能要有更优秀和创新的思路方法,从而实现用户的各种需求,提高洗衣机的便利性。

孟娇娇等人利用51单片机为基础,设计出全自动洗衣机的控制系统,实现对洗衣机各项功能的优化【2】。

基于51单片机自助洗衣机毕业设计

基于51单片机自助洗衣机毕业设计

基于51单片机自助洗衣机毕业设计一、导言在当今社会,随着生活水平的提高和科技的不断发展,人们对生活品质的要求也越来越高。

各种智能家居产品应运而生,其中包括自助洗衣机。

本文将围绕基于51单片机的自助洗衣机毕业设计展开深入探讨,从多个角度探究其设计原理、功能特点和未来发展趋势。

二、基于51单片机的自助洗衣机毕业设计的概述自助洗衣机是一种方便、智能的洗衣设备,它能够根据用户的需求自动完成洗涤、漂洗和脱水等流程,而基于51单片机的自助洗衣机毕业设计则是利用了这一现代化技术,实现了更加智能、高效的洗衣功能。

通过使用51单片机,可以实现对洗衣机整体的控制和监测,改善用户体验,提高洗衣效率。

三、基于51单片机的自助洗衣机毕业设计的技术原理1. 传感器技术基于51单片机的自助洗衣机毕业设计中,传感器技术起着至关重要的作用。

通过使用温度传感器、湿度传感器和称重传感器等,可以实时监测洗衣机内部环境的变化,从而调节水温、水量和洗涤时间,使洗衣效果更加理想。

2. 控制系统在这一设计中,基于51单片机的控制系统能够实现对洗衣机的智能控制。

通过编程控制,可以实现洗衣机的启动、停止、程序选择和故障诊断等功能,使用户能够更加便捷地使用洗衣机,同时提高了洗衣机的稳定性和可靠性。

3. 通信技术基于51单片机的自助洗衣机毕业设计还涉及到通信技术的应用。

通过与智能手机或电脑进行通信,用户可以随时随地监控洗衣机的运行状态,实现远程控制和故障排查,极大地提升了洗衣机的智能化水平。

四、基于51单片机的自助洗衣机毕业设计的功能特点1. 智能化基于51单片机的自助洗衣机毕业设计将洗衣机的控制系统进行了升级,实现了洗涤过程的智能化控制。

用户可以通过简单的操作界面选择合适的洗涤程序,而洗涤机能够根据不同的衣物材质和污渍程度自动调节洗涤参数,提供专业级的洗衣效果。

2. 节能环保在设计中,基于51单片机的自助洗衣机注重了节能和环保的理念。

通过智能控制水温、水量和洗涤时间,实现了洗衣过程中的资源最优利用,减少了水和电的浪费,降低了对环境的影响。

基于的51单片机全自动洗衣机设计(优.选)

基于的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文本--------------------- 方便更改。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档