(整理)单片机课程设计全自动洗衣机.
基于单片机的全自动洗衣机课程设计报告书

目录摘要.............................................................. 错误!未定义书签。
Abstract .............................................................. 错误!未定义书签。
1机械结构.. (1)1.1.1外箱体 (1)1.1.2弹性支承结构 (2)1.1.3面框 (3)1.2洗涤脱水系统 (3)1.2.1盛水桶 (3)1.2.2洗涤脱水桶 (4)1.2.3波轮 (5)1.3.传动系统 (5)1.3.1电动机 (5)1.3.2离合器 (6)1.3.3电容器 (7)1.3.4电动排水牵引器 (8)1.4进水、排水系统 (9)1.4.1进水电磁阀 (9)1.4.2水位开关 (10)1.4.3排水电磁阀 (11)二、系统原理图: (13)2.1 单片机的复位电路 (13)2.1 单片机的复位电路 (14)2.2 单片机的时钟电路 (15)2.3 蜂鸣器报警电路 (15)2.4 电动机的控制电路 (16)2.4.1继电器的作用 (16)2.4.2电动机控制电路的工作过程 (16)2.5 进水/排水电路 (17)2.5.1电动式排水牵引器 (17)2.5.2排水电路工作原理 (17)2.5.3进水电磁阀 (17)2.5.4进水水电路工作原理 (18)2.6开关复位电路 (19)2.7 设置/开始、暂停电路 (21)2.8 状态显示电路 (21)2.9 甩干时开盖暂停电路 (22)2.10 PCB板 (23)三、洗衣机程序 (25)3.1主要容 (25)3.2主要功能 (25)3.3程序介绍 (26)四.调试过程 (38)4.1硬件设置 (38)4.2程序调试 (40)4.2.1程序分块调试 (40)五.测水的清澈度以检测洗衣干净程度..................................... 错误!未定义书签。
基于单片机的洗衣机课程设计

摘要设计要满足如下要求:实现6种模式的互动选择:标准,轻柔,快洗和单独地进行洗涤、漂洗和脱水操作,被选中的模式用LED显示器表明。
实现不同模式下的洗衣过程,根据衣物多少允许用户设置4种的水位,被选中的水位用LED显示器表明。
当洗衣机启动后,上水电磁阀打开注水,当水到达设定的限位时,上水电磁阀断电,注水过程停止,启动电机全自动控制洗衣操作,整个过程的进行按时间控制,时间自定。
液位检测和控制:使水位限定在某一个给定的液位范围内,当水位越限时打开下水电磁阀放水,不启动洗衣过程,待满足要求后,投入运行。
当投入洗衣量大于洗衣机额定容量时,控制系统应报警,不启动洗衣过程。
待满足要求后,投入运行。
本设计通过采用AT89C51单片机,通过74LS139,水位检测机构,LED 数码显示器,LED发光二极管,独立键盘,继电器,进排水阀等硬件实现了上述功能要求。
应用表明该系统具有水位选择,模式设定,水位越限检测,过容及脱水安全保护等功能。
其性能可靠,提到了效率,降低了能耗,减少了噪音。
关键字:89C51RC 智能家电自动控制洗衣机二、前言单片机又称微控制器,或称嵌入式控制器。
而现在的智能家电无一例外是采用微控制器来实现的,所以家用电器是单片机应用最多的领域之一。
它是家用电器实现智能化的心脏和大脑。
由于家用电器体积小,故要求其控制器体积更小以便能嵌入其结构之中。
而家用电器品种多,功能差异也大,所以又要求其控制器有灵活的控制功能。
单片机以微小的体积和编程的灵活性而产生多种控制功能,完全可以满足家用电器的需求。
波轮式全自动洗衣机是家用电器领域的重要一员,在全自动洗衣机市场中占有很大的比例,其中绝大多数品是用单片机来实现的AT89C52单片机是ATMEL公司8位单片机系列产品之一,是一种20引脚双列直插式芯片。
它内含4KB可反复烧录的FLASH存储器,RAM字节也有128个,15个I/O口,5个中断,2个定时,已经可以满足程序的需要,指令也和51系列兼容,基于上述特点,选择它来设计一台智能洗衣机,完全可以达到以下的功能:1、洗衣程序功能:含6种独立程序,即标准洗衣程序、轻柔洗衣、快洗、单次洗衣、漂洗、脱水功能;2、特殊功能:安全保护、防振、间歇工作、声光显示功能。
全自动洗衣机控制器设计单片机课程设计报告书

单片机大作业(论文)题 目 全自动洗衣机控制器设计姓 名 xxx学 号 xxxx专业班级 xx指导教师 xx学 院 xx宁波理工学院完成日期xx摘要现如今,随着科技的发展和生活质量的提高,全自动洗衣机在很多家庭中已经变得很常见,它是一种同时具有洗涤、漂洗和脱水等功能,且它们之间的转换不用手工操作而能知道进行的洗衣机。
同时,随着数字技术的快速发展,数字技术被广泛应用于智能控制的领域中。
单片机以体积小、功能全、价格低廉、开发方便的优势得到了许多电子系统设计者的青睐,它适合于实时控制,可构成工业控制器、智能仪表、智能接口、智能武器装置以及通用测控单元等。
本文以AT89S51单片机为核心,设计了全自动洗衣机控制系统。
本系统实现了对洗衣机整个洗衣过程的控制,包括用户设定、洗衣、脱水和结束四个阶段。
控制系统主要数字控制电路模块构成。
数字控制电路负责控制洗衣机的工作过程,主要由AT89S51单片机、两位共阳数码管、按键、蜂鸣器、LED指示灯组成。
本系统的电路设计相对简单,给AT89S52单片机烧录软件程序hex文件后,便能够实现全自动洗衣机的基本功能,具有一定的实用性。
关键词:AT89C51;控制系统;LED;伟福仿真软件目录摘要 (I)第1章概述 (3)1.1 全自动洗衣机控制系统设计的目的及意义 (3)1.2 国外现状及未来趋势 (3)1.3 本文工作 (4)第2章全自动洗衣机控制原理 (5)2.1 全自动洗衣机控制原理图 (5)2.2 全自动洗衣机控制各部件的使用方式及功能 (5)2.2.1 引脚 (5)2.2.2 复位电路 (7)2.2.3 时钟电路 (8)2.2.4 显示电路 (9)2.2.5 按键电路 (11)2.2.6 蜂鸣器电路 (12)第3章全自动洗衣机控制器软件设计 (12)3.1软件设计系统整体功能描述 (12)3.2系统流程图 (13)3.3定时控制流程 (14)3.4 显示流程 (14)第4章实验仿真结果 (15)第5章总结与展望 (16)参考文献 (17)附录 (18)致 (22)第1章概述1.1 全自动洗衣机控制系统设计的目的及意义随着技术的进步,单片机以集成度高、运算速度快、体积小、运行可靠、价格低廉等特点,在过程控制、数据采集、机电一体化、智能化、家用电器及网络技术等方面得到了广泛的应用。
基于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.三种洗衣工作程序,即标准程序强洗程序、弱洗程序和甩干程序。
基于的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();}}}。
基于单片机的全自动洗衣机系统设计

基于单片机的全自动洗衣机系统设计一、本文概述随着科技的进步和人们生活水平的提高,家用电器在日常生活中扮演着越来越重要的角色。
全自动洗衣机作为其中的一种,其便捷性和高效性受到了广大用户的青睐。
传统的洗衣机设计在智能化、节能性、操作简便性等方面仍有待提升。
为此,本文提出了一种基于单片机的全自动洗衣机系统设计,旨在通过技术创新和智能控制,为用户提供更加人性化、高效且节能的洗衣体验。
本文将详细介绍该系统的设计原理、硬件构成、软件编程以及实际应用效果。
我们将对单片机的选择及其在系统中的作用进行阐述,同时分析洗衣机控制系统中所需的传感器和执行器。
接着,我们将深入探讨软件设计的关键技术和算法,包括控制逻辑的实现、人机交互界面的设计以及故障检测和处理机制。
我们将通过实际测试和用户体验反馈,对该系统的性能进行评估和优化。
本文旨在提供一种基于单片机的全自动洗衣机系统设计方案,为相关领域的研究和实践提供有益的参考和借鉴。
通过不断优化和创新,我们期待这种智能化、高效且节能的洗衣机能够在未来得到更广泛的应用,为人们的生活带来更多便利和舒适。
二、系统总体设计全自动洗衣机系统的设计,基于单片机作为核心控制器,旨在实现洗衣机的全自动化和智能化。
整个系统由单片机、电机驱动模块、水位检测模块、洗涤剂投放模块、温度控制模块、显示模块和用户交互模块等多个子模块组成。
我们选择一款性能稳定、价格适中且易于编程的单片机作为本系统的核心控制器。
该单片机将负责接收用户输入指令、处理传感器信号、控制各功能模块以及实现与显示模块的通信。
通过编程,单片机能够实现对洗衣机的全面控制,包括启动、停止、调整洗涤方式、设定洗涤时间等功能。
电机驱动模块是洗衣机的动力来源,负责驱动洗衣机的电机进行旋转。
我们选用一款能够驱动电机正反转且具备调速功能的驱动模块,通过单片机输出的PWM信号实现对电机转速的精确控制。
电机驱动模块还具备过流保护功能,以确保系统的安全可靠。
基于单片机的全自动洗衣机课程设计
目录摘要 (I)Abstract ................................................................................................................................................................ I I 1机械结构......................................................................................................................................................... 1 - 1.1.1外箱体..................................................................................................................................................... 1 - 1.1.2弹性支承结构........................................................................................................................................... 1 - 1.1.3面框........................................................................................................................................................... 3 - 1.2洗涤脱水系统.............................................................................................................................................. 3 - 1.2.1盛水桶....................................................................................................................................................... 3 - 1.2.2洗涤脱水桶............................................................................................................................................... 3 - 1.2.3波轮........................................................................................................................................................... 4 - 1.3.传动系统...................................................................................................................................................... 4 - 1.3.1电动机....................................................................................................................................................... 4 - 1.3.2离合器....................................................................................................................................................... 5 - 1.3.3电容器....................................................................................................................................................... 7 - 1.3.4电动排水牵引器..................................................................................................................................... 8 - 1.4进水、排水系统....................................................................................................................................... 9 - 1.4.1进水电磁阀............................................................................................................................................... 9 - 1.4.2水位开关............................................................................................................................................... 10 -1.4.3排水电磁阀........................................................................................................................................... 11 -二、系统原理图: (13)2.1 单片机的复位电路 (13)2.1 单片机的复位电路 (13)2.2 单片机的时钟电路 (14)2.3 蜂鸣器报警电路 (15)2.4 电动机的控制电路 (15)2.4.1继电器的作用 (15)2.4.2电动机控制电路的工作过程 (15)2.5 进水/排水电路 (16)2.5.1电动式排水牵引器 (16)2.5.2排水电路工作原理 (16)2.5.3进水电磁阀 (16)2.5.4进水水电路工作原理 (17)2.6开关复位电路 (18)2.7 设置/开始、暂停电路 (19)2.8 状态显示电路 (20)2.9 甩干时开盖暂停电路 (20)2.10 PCB板 (21)三、洗衣机程序 (23)3.1主要内容 (23)3.2主要功能 (23)3.3程序介绍 (23)四.调试过程 (34)4.1硬件设置 (34)4.2程序调试 (35)4.2.1程序分块调试 (35)五.测水的清澈度以检测洗衣干净程度 (39)5.1方案一、用光电池 (39)5.2方案二、水质浑浊度传感器 (41)5.2.1浑浊度传感器的选择及简介 (41)5.2.2浑浊度传感器的原理 (42)5.2.4浑浊度传感器的器件选择与电路组成 (43)5.3、冬天给水加温,加热器及测温系统 (45)5.3.1加热系统 (45)5.3.2测温系统 (46)5.4电解水杀菌功能 (49)5.5摆脱按键的繁琐,基于语音识别模块 (49)六小结 (53)6.1 问题解析 (53)6.2 设计心得 (55)七.参考文献 (57)1 小天鹅洗衣机的机械结构分析与研究小天鹅微电脑全自动洗衣机XQB47-2003G是指可以完成洗涤、漂洗及脱水过程的自动转换,通常采用套桶方式,即将离心桶(内桶)和盛水桶(外桶)同轴地套在一起,故又称为套桶式洗衣机。
单片机课程设计---单片机控制全自动洗衣机
2.5控制功能及过程
洗衣机的三大功能是实现衣服的洗涤、漂洗和脱水,加上进水,我们把这四个洗衣机动作编排成4个代码。打开电源开关,洗衣机将进入洗衣过程选择状态,此时数码管显示00,用户按启动、暂停键可以显示不同的过程代码(在01-09之间循环显示以指示选择不同的洗衣过程)。3秒内若无按键动作,蜂鸣器开始鸣叫6下(时间长度共3秒)以提醒用户;开始进入相应过程的洗衣程序,此后启动暂停按钮只起暂停或继续洗衣程序执行作用,数码管显示完成本次洗衣的剩余时间。
(2)漂洗过程:漂洗的目的在于清除衣物上的洗涤液,因此,漂洗过程与洗涤过程的电器动作是完全相同的。
(3)脱水过程:洗涤或漂洗过程结束后,电动机停止转动,排水阀通电,打开排水阀门排水。当水位低到一定程度时,满足安全条件,脱水电动机接通,电机带动脱水桶高速旋转,利用离心力把衣服上的水从桶壁的小眼里甩出。
(3)洗涤动作洗涤动作指的是电机周期性的“正转-停止-反转-停止”。不同的洗衣过程,控制电机执行“正转-停止-反转-停止”的时间是不同的,标准洗涤过程可取:正转1.6秒-0.56秒-反转1.6秒-停止0.56秒。对于轻柔洗涤和强力洗涤过程,这个时间要作相应调整。洗涤过程中若遇水位开关断开或用户要求补水(重新选择水位),则要停止洗涤动作并打开进水阀进水直至水位满足要求再继续。
2.3、设计总方框图
水位开关
安全开关
程序选择/启动/暂停
பைடு நூலகம்洗衣机单片机控制系统方框图
基于单片机洗衣机通过控制系统设定洗衣程序在洗涤脱水桶内自动完成注水、洗涤、漂洗、排水和脱水全过程。洗衣时控制系统打开进水电磁阀开始注水;当洗涤脱水桶内的水位达到系统设定值时单片机发送一个低电平通知控制系统关闭进水电磁阀,同时启动电机洗衣。电机在系统的控制下进行正转、停、反转通过传动带动波轮执行洗涤程序;当洗涤时间终了,控制系统切断电机电路打开排水电磁阀开始排水;然后再次注水,洗衣机进入漂洗状态,完成漂洗程序(通常为2次漂洗)后,开始排水,同时排水电磁阀的动作并且松开为脱水程序作好准备;排水结束后系统控制电机单方向高速运转完成脱水程序;当脱水程序终了系统控制排水电磁阀和电机断电,排水阀复位。
基于单片机的自动洗衣机设计
基于单片机的自动洗衣机设计基于单片机的自动洗衣机设计1 总体方案设计分析1.1全自动洗衣机控制方法选择在全自动洗衣机中,现在比较通用的控制手段是利用单片机或者PLC两种方法,本课设选用的是单片机。
之所以选用单片机主要考虑了以下原因,首先,单片机具有较强的抗干扰能力,当受到外部强干扰,程序出错时,可以自动使系统复位重新执行程序。
并且采用无噪声、无电磁干扰的双向晶闸管作为控制元件,控制电磁阀和电机。
其次,单片机具有欠压和过压保护,欠压时,控制器不工作;超压时,保护电路起作用。
再次,单片机还具有瞬间掉电保护功能,电源短时间停电后,电压恢复时,能够维持原来运行程序的工作状态并继续完成洗衣程序。
最后,各种操作和洗衣机的运行状态均可以用LED显示。
此外,在硬件规模方面,单片机相当于将一个基本规模的单板机所具有的资源复合在一块芯片上,因此具有相当的规模;在功能方面,单片机已经超过了PLC的功能;在指令系统方面,如果将单片机的指令系统PLC的指令系统相比较,除单片机的数据传送能力较弱一点之外,单片机的指令系统已大大超过PLC;此外,无论在性价比方面,还是在体积、重量方面相比较,单片机都比PLC优越得多。
综合上述原因本章设采用单片机来完成。
二、方案构思全自动洗衣机由洗衣系统和控制电路组成。
其控制电路分为机械和电脑型,电脑型控制电路是以单片机作为控制电路的核心。
自动洗衣机的洗衣程序,键盘上有两个按钮01键和02键。
01键设为开始按钮;02键设为停止按钮,其功能是按下停止按钮后洗完一个周期后停止,中间不能停。
洗衣机的标准洗衣程序是;开始--进水--洗涤--排水--进水--清洗--排水--脱水。
1.洗涤过程通电后,洗衣机进入暂停状态,以便放好衣物并且等待按下开始按钮。
当按下开始按钮01时,进入洗涤过程。
首先进水阀打开,开始进水,向洗衣机供水;当到达预定水位时,进水阀关闭,停止进水;步进电动机接通电源,开始旋转,形成洗衣水流。
单片机课程设计---单片机控制全自动洗衣机
单片机课程设计---单片机控制全自动洗衣机单片机课程设计单片机控制全自动洗衣机在现代生活中,洗衣机已经成为了家庭中不可或缺的电器之一。
而全自动洗衣机更是以其便捷、高效的特点受到了广大消费者的喜爱。
本次课程设计旨在利用单片机技术实现对全自动洗衣机的控制,以提高洗衣机的性能和智能化程度。
一、全自动洗衣机的工作原理全自动洗衣机的工作过程通常包括洗涤、漂洗、脱水等几个主要环节。
在洗涤环节,洗衣机通过电机带动内筒旋转,使衣物在水中不断翻滚,同时加入洗涤剂以去除污渍。
漂洗环节则是用清水冲洗衣物,去除残留的洗涤剂。
脱水环节通过高速旋转内筒,将衣物中的水分甩干。
为了实现这些功能,洗衣机需要对水位、电机转速、洗涤时间、漂洗次数等参数进行精确控制。
这就需要一个可靠的控制系统来协调各个部件的工作,而单片机正是这样一个理想的选择。
二、单片机控制系统的硬件设计1、单片机选型选择合适的单片机是整个控制系统设计的关键。
考虑到洗衣机控制系统的功能需求和成本因素,我们选用了_____型号的单片机。
该单片机具有足够的 I/O 端口、定时器/计数器和存储空间,能够满足洗衣机控制的要求。
2、传感器模块为了实现对水位和衣物重量的检测,我们使用了水位传感器和压力传感器。
水位传感器可以实时监测洗衣机内的水位高度,从而控制进水阀的开关。
压力传感器则可以通过测量内筒的压力变化来估算衣物的重量,以便确定合适的洗涤参数。
3、电机驱动模块洗衣机的电机需要正反转和调速控制,因此我们选用了专用的电机驱动芯片。
该芯片能够接收单片机发出的控制信号,实现对电机的精确驱动。
4、显示与按键模块为了方便用户操作和了解洗衣机的工作状态,我们设计了液晶显示模块和按键模块。
用户可以通过按键设置洗涤模式、洗涤时间等参数,液晶显示屏则会实时显示洗衣机的工作状态和剩余时间。
5、电源模块整个控制系统需要稳定的电源供应。
我们使用了变压器将市电降压,然后通过整流、滤波和稳压电路为单片机和其他模块提供所需的直流电源。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
河北工业大学计算机硬件技术基础(Mcs-51)
课程设计任务书
学院班级设计人学号_
一、题目:
全自动洗衣机(5)
二、目的与要求:
1.目的:
1.进一步加深对MCS-51单片机内部结构和程序设计方法的理解。
2.提高综合运用MCS-51单片机的软硬件进行程序设计的能力。
2.基本要求:
(1)要求使用面向对象和结构化程序设计的编程思路。
(2)学校的刷卡式全自动洗衣机给同学们的生活带来了很大便利,现利用MCS—51单片机,通过延时、定时、中断等操作实现全自动洗衣机工作过程的模拟控制。
3.设计说明:
运用了中断,延时等来模拟全自动洗衣机工作的全过程,用指示的点亮,熄灭来表示洗衣机的正转反转及开盖,刷卡,注水,脱水等全部过程。
三、设计方法和基本原理:
1.问题描述:
分析全自动洗衣机的工作过程:接通电源后,打开洗衣机盖子放入衣物和洗衣粉,盖上盖子。
通过刷卡启动注水,利用外部中断0模拟注水达标志位,停止注水并开始洗衣。
洗衣过程为:正转10秒(利用延时实现),间歇4秒,然后反转10秒,间歇4秒,再正转(这里认为已洗静),然后开始排水,同样利用延时模拟排水达标志位,排水结束,如此循环往复3次(注水—洗涤—排水过程),认为洗衣过程结束。
然后开始脱水操作,利用定时器,定时时间到,打开洗衣机盖子取出衣物,等待下一次刷卡,即下一次洗衣任务。
试验中用各指示灯的亮灭来表示洗衣过各环节的相应状态。
2.涉及到的硬件:
LED指示灯
四、程序清单:
ORG 8000H
LJMP MAIN
ORG 8003H
LJMP INT0S
MAIN : CLR P1.0 ;开盖灯亮
CLR P1.7 ; 电源指示灯亮
MOV R1,#03H
STEB EA
SETB EX0
SETB IT0
JB P3.3 ,YY0
AJMP MAIN
YYY0: SETB P1.0
MOV 20H.0 ,#01H
CLR P1.6
CLR P1.1 ;注水灯亮LP: JB 20H.0 , LP
AJMP YYY1
INT0S: CLR P1.2 ;中断灯亮
CLR 20H.0
RETI
YYY1: SETB P1.1
SETB P1.2
CLR P1..3 ;正转灯亮
MOV 40H, #10H ;正转10秒YY0: LCALL DELAY
DJNZ 40H, Y0
SETB P1.3 ;间歇4秒
MOV 41H, #04H
YY1: LCALL DELAY
DJNZ 41H, YY1
CLR P1.4 ;反转10秒
MOV 42H, #10H
YY2: LCALL DELAY
DJNZ 42H, YY2
SETB P1.4
MOV 43H, #04H
YY3: LCALL DELAY
DJNZ 43H, YY3
CLR P1.3
MOV 44H, #10H
YY4: LCALL DELAY
DJNZ 44H, YY4
SETB P1.3
YYY2: SETB P1.6 ;排水灯灭阀开MOV 45H, #05H
YY5: LCALL DELAY
DJNZ 45H,YY5
DJNZ R1 ,YY0 ;循环洗涤3次
YYY3: CLR P1.5 ;脱水
MOV 46H, #10H
YY6: LCALL DELAY
DJNZ 46H,Y6
SETB P1.5 ;脱水结束
JB P3.3 , YY7 ;等待下次刷卡YY7: AJMP MAIN
DELAY: MOV R5, #100 ;延时子程序
DEL Y: MOV R7, #40
DEL1: MOV R6, #123
DEL2: DJNZ R6, DEL2
DJNZ R7, DEL1
DJNZ R5, DEL Y
END
五.程序调试:
(1)将所编写的程序在WIN51文件下进行编译,看是否有错误出现,根据编译提示进行修改,进行编译,如果还不能达到要求的结果,继续进行修改,直到所编写的程序0个错误0个警告。
(2)运行实验,看是否遵循设计的要求,指示灯的亮灭表示洗衣过程各环节的相应状态。
如果不符,则仍然继续修改直到符合设计要求为止。
六.最终功能:
外部中断0模拟注水达标志位,停止注水并开始洗衣。
洗衣过程为:正转10秒(利用延时实现),间歇4秒,然后反转10秒,间歇4秒,再正转(这里认为已洗静),然后开始排水,同样利用延时模拟排水达标志位,排水结束,如此循环往复3次(注水—洗涤—排水过程),认为洗衣过程结束。
然后开始脱水操作,利用定时器,定时时间到,打开洗衣机盖子取出衣物,等待下一次刷卡,即下一次洗衣任务。
七.遇到的困难及解决办法
1 设计刷卡模拟器的时候,不知所措,最后用一个开关来控制
2 利用中断模拟注水大标志位是我陷入困境,在同学的帮助以及自己努力下,最终将问题解决
八、创新部分
由于自己的知识和能力有限,经过很多次实验,一些创新没有能够实现,不过我有自己的创新思路,如下:
1.当洗衣机开盖之后放入衣服关盖,让后开始注水,程序向下进行;
如果没有放入衣服,则程序结束,不会进行注水等过程。
2.设计一个刷卡模拟器,当刷卡之后,程序进行,若不刷卡,程序不会启动
3.只要通上电源,电源指示灯就一直亮
九所设计问题的不足和改进方案:
由于条件限制实验模拟并不能解决实际中遇到的情况,如突然断电事故及其他
一些实际情况等等。
十、收获体会:
经过两个星期课程设计,我从中收获了很多。
我选择的题目是全自动洗衣机,刚开始觉得这道题目还是比较容易的,但是在设计过程中发现真的有好多的问题,不过还好,通过自己的努力和同学的热心的帮助,最终完成了这次设计。
自己对中断,延时等有了更深一步的掌握。
通过实验,我对单片机产生了浓厚的兴趣,它在我们日常生活中越来越重要,有很多的自动化系统要通过单片机来实现,更加使我明白学好单片机的重要性,对自己也是一种挑战。
我觉得自己还有很多的不足,但是我会通过自己不懈的努力,和一种拼搏的精神,来迎接新的挑战。
非常感谢老师这一学期对我们认真的教导,您的严厉是对我们最大的帮助。
今后我会再接再厉,我相信:有志者,事竟成!!!
2007年12月28日。