毕业论文之基于51单片机的全自动洗衣机设计
更新时间:2024-06-16 17:32:01 阅读量: 综合文库 文档下载
成都理工大学工程技术学院毕业论文
基于51单片机的全自动洗衣机设计
作者姓名:XXXXXXXXX
专业名称:XXXXXXXXX
指导教师:XXXXXXXXXX 讲师
基于51单片机的全自动洗衣机设计
摘 要
随着数字技术的快速发展,数字技术被广泛应用于智能控制的领域中。单片机以体积小、功能全、价格低廉、开发方便的优势得到了许多电子系统设计者的青睐。它适合于实时控制,可构成工业控制器、智能仪表、智能接口、智能武器装置以及通用测控单元等。
本文以AT89C52单片机为核心设计了全自动洗衣机控制系统,本系统实现了对洗衣机整个洗衣过程的控制,包括用户参数输入、进水、洗衣、泡洗、脱水、出水和结束报警等几个阶段。控制系统主要由电源电路、单片机控制系统和外部硬件电路三大模块组成。电源电路为单片机主控系统提供5v的直流电压;单片机主控系统负责控制洗衣机的工作过程,主要由AT89C52单片机、数码管、按键、蜂鸣器、LED指示灯组成;外部硬件电路有继电器、三极管、LED灯组成。
本系统的电路并不复杂,给AT89C52单片机载入软件程序后,能够实现全自动洗衣机的基本功能。虽然不能与电器市场上的洗衣机控制系统媲美,但也具有一定的实用性。
关键词:AT89C52 用户参数 继电器 控制系统 LED 蜂鸣器
- I -
基于51单片机的全自动洗衣机设计
Abstract
With 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
- II -
基于51单片机的全自动洗衣机设计
目 录
摘 要 ..............................................................................................................................I Abstract ........................................................................................................................ II 目 录 ....................................................................................................................... III 引 言 ......................................................................................................................... 1 1 概 述 ......................................................................................................................... 2
1.1 课题开发背景 .................................................................................................. 2 1.2 设计的目的和意义 .......................................................................................... 2 1.3 国内外现状及水平 .......................................................................................... 3 2设计方案 ...................................................................................................................... 5
2.1 设计任务 .......................................................................................................... 5 2.2 洗衣机的设计方案 .......................................................................................... 5
2.2.1 按键 ....................................................................................................... 5 2.2.2 洗衣程序 ............................................................................................... 5 2.2.3 设计总方框图 ....................................................................................... 6 2.3 控制系统的功能 .............................................................................................. 6 3 硬件设计 ..................................................................................................................... 8
3.1控制系统的电路组成 ....................................................................................... 8 3.2 电源电路 .......................................................................................................... 9 3.3 单片机控制电路 .............................................................................................. 9
3.3.1 AT89C52单片机主控系统 .................................................................. 9 3.3.2 单片机的复位电路 ............................................................................. 12 3.3.3 单片机的时钟电路 ............................................................................. 13 3.3.4 显示电路 ............................................................................................. 13 3.3.5 蜂鸣器报警电路 ................................................................................. 16 3.3.6 电动机的控制电路 ............................................................................. 16 3.3.7 进水/排水电路 .................................................................................... 17 3.4 主电路图 ........................................................................................................ 18 第4章 软件设计 ......................................................................................................... 19
4.1 主程序设计 .................................................................................................... 19 4.2 洗涤程序的设计 ............................................................................................ 21 4.3 漂洗程序的设计 ............................................................................................ 21 4.4 脱水程序的设计 ............................................................................................ 22 第5章 调 试 ............................................................................................................. 23
5.1 硬件调试 ........................................................................................................ 23
- III -
基于51单片机的全自动洗衣机设计
5.2 软件调试 ........................................................................................................ 24 5.3 系统调试结果 ................................................................................................ 24
5.3.1 洗涤 ..................................................................................................... 25 5.3.2 漂洗 ..................................................................................................... 25 5.3.3 脱水 ..................................................................................................... 26
结 论 ....................................................................................................................... 27 参考文献 ....................................................................................................................... 29 附 录 ....................................................................................................................... 30
- IV -
基于51单片机的全自动洗衣机设计
4.2 洗涤程序的设计
洗涤是洗衣过程中的主要步骤。当进水结束后进入洗衣状态,洗衣开始,电动机正转-停止-反转一直循环,当洗衣时间等于零时,洗衣结束且进入漂洗。程序流程图如图4.2所示:
洗衣开始
电机正转 N 进入漂洗 电机停止 时间到 电机反转 电机停止 图4.2为洗涤流程图
4.3 漂洗程序的设计
漂洗是一个比较固定的洗衣方式,与洗涤过程操作相同,只是时间短一些。漂洗次数为三次。漂洗程序流程图如图4.3所示:
- 21 -
基于51单片机的全自动洗衣机设计
开始 漂洗灯亮 N 一次漂洗 二次漂洗 进入脱水 三次漂洗 漂洗完成 图4.3漂洗程序流程图 Y 漂洗灯灭 4.4 脱水程序的设计
脱水前先打开排水阀排水。然后启动电动机脱水并保持排水阀开启,然后停止脱水,并且蜂鸣器报警提醒用户洗衣完成。程序流程图如下图所示:
开始脱水 脱水结束 蜂鸣器报警 报警指灯亮 脱水结束 关闭电机 脱水灯亮 电机启动 图4.4 脱水程序流程图
- 22 -
基于51单片机的全自动洗衣机设计
第5章 调 试
在系统样机的组装和软件设计完成以后就进入系统的调试阶段。应用系统的调试步骤和方法是相同的,但具体细节与采用的开发系统(即仿真器)及选用的单片机型号有关。调试的过程就是软硬件的查错过程,分为硬件调试和软件调试。
5.1 硬件调试
单片机应用系统的硬件调试和软件调试是分不开的,但通常是先排除系统中明显的硬件故障后才和软件结合起来调试。在进行硬件调试时先进行静态调试,用万用表等工具在样机加电前根据原理图和装配图仔细检查线路核对元器件的型号、规格哈安装是否正确。然后加电检查各点电位是否正常。接下来再借助仿真器进行联机调试,分别测试扩展的RAM、I/O口、I/O设备、程序存储器以及晶振和复位电路并改正其中的错误。
第一步:在没通电之前先用万用表检查线路的正确性并核对元器件的型号、规格是否符合要求。特别注意电源的正负极以及电源之间是否有短路并检查地址总线、数据总线、控制总线是否存在相互间的短路或其它信号线的短路。由于本系统的开发是基于曾经用过的单片机,所以此步骤不会发生故障。
第二步:通电后检查单片机I/O的电位,测量各点电位是否正常。尤其是应注意单片机输出口的各点电位。若有高压将有可能损坏外部仿真电路,同样如果电压过低就没有能力驱动负载。
第三步:将单片机信号输出接口与外部仿真电路接口连接起来,为软件调试做好准备。
在硬件的调试过程中常见的硬件故障有:
元器件失效:元器件失效的原因包括两个方面,一方面是器件本身已损坏另一方面是组装过程中造成元器件失效,当然在调试过程中,我们发现发光二极管接反,继电器损坏。
- 23 -
基于51单片机的全自动洗衣机设计
可靠性差:引起系统不可靠的因素很多,如金属化孔、接插件接触不良会造成系统时好时坏,经不起振动;内部和外部的干扰、电源纹波系统过人、器件负载过大或热稳定性差等造成逻辑电平不稳定;另外,走线和布局的不合理等也会引起系统可靠性差。我们在调试的过程中发现单片机输出稳定的电压,但是硬件电路的发光二极管的亮度不一、时亮时不亮。经查证主要是由于元器件的引脚过长和弯曲造成的电路不够稳定、I/O输出口的高低电平没有明确
电源故障:电源故障包括电压值不符合设计要求,电源引出线和插座不对应,电源功率不足,负载能力差等。电压过高容易烧坏发光二极管,电压过低无法驱动负载。因此我们焊接了直流电源电路,使其输出稳定的电压。
5.2 软件调试
软件调试与所选用的软件结构和程序设计技术有关。如果采用模块化程序开发技术,则逐个模块调好以后,再进行系统程序总调试。调试子程序时,一定要求符合现场环境,即入口条件和出口状态。通过检测,可以发现程序中的死循环错误、机器码错误及转换地址错误,同时也可以发现用户系统中的硬件故障、软件算法及硬件设计错误。在调试过程中逐步调整用户系统的软件和硬件。
各程序模块调试好后,可以把相关的功能模块联合起来起进行整体综合调试。存储这个阶段若发生错误,可以考虑各子程序存储运行时是否存破坏现场,缓冲区数据是否发生变化,标志位的建立和清除是否影响其它标志位的变化,堆栈区的深度是否不够,输入设备的状态是否正常等。
5.3 系统调试结果
系统调试结果如下:
- 24 -
基于51单片机的全自动洗衣机设计
5.3.1 洗涤
图5.1为洗涤时的显示图
进入洗涤程序,相应的表示洗涤工作P1.1和电机工作P1.6的指示灯亮,由数码管显示洗涤所需时间,同时电机也会跟着进行正反转工作
5.3.2 漂洗
- 25 -
基于51单片机的全自动洗衣机设计
图5.2为漂洗时的工作显示图
进入漂洗程序,相应的表示漂洗工作P1.2和电机工作P1.6的指示灯亮,由数码管显示洗涤所需时间,同时电机也会跟着进行正反转工作
5.3.3 脱水
图5.3为脱水时的工作显示图
进入漂洗程序,相应的表示脱水工作P1.3的指示灯亮,由数码管显示洗涤所需时间,同时电机也会朝着同一个方向旋转工作。
- 26 -
基于51单片机的全自动洗衣机设计
结 论
经过一个学期的时间完成了基于51单片机的全自动洗衣机控制系统的设计,本系统是基于51单片机及其接口技术、计算机技术、微电子技术综合应用的设计。整个控制系统实现了对洗衣机整个洗衣过程的控制包括用户参数输入(通过按键输入)、进水、洗衣、泡洗、脱水、出水和结束等几个阶段,并且可以通过标志flag0的值来确定用户想要的状态,直接从该状态进入工作,比如说:如果用户想从脱水这个阶段开始工作,那么用户只需要通过按菜单选择键三次,再按开始键洗衣机就可以从脱水开始工作。控制系统主要由电源电路、控制电路两大模块构成。电源电路为控制电路提供稳定的5V直流电压,为电动机提供220V市电;控制电路负责控制洗衣机的工作过程,主要由AT89C52单片机、四位共阳数码管、按键、蜂鸣器、LED指示灯、电动机、进水排水电磁阀组成。在系统设计中查阅了大量相关的中文和外文资料以及各芯片的厂家技术资料手册借鉴了很多前人成熟的经验。
本次设计包含了软件和硬件方面的设计,硬件方面主要就是proteus的仿真,仿真的目的就是通过软件的方式先来验证方案的可行性,为做出实物埋下一个坚实的基础,以及用protel画原理图以及PCB板,当然如果你要再进一步,那就可以去买这些器件在PCB板上进行焊接调试,从而更加客观地验证自己的设计;软件设计方面主要就是用keil软件编写C程序代码,从而驱动硬件工作,达到自己想要的效果,这中间就可能会遇到要不断地调试以及修改程序,这是一个繁琐的过程,但同时也是你技能提升的过程。
通过本次设计可以总结出:首先单片机的广泛应用使用现在的电子产品设计越来越方便、功能越来越好、集成度也越来越高。通过对单片机的重新编程可以很方便的改变洗衣机的功能。其次单片机和微电子等技术是密切相关的,它们如何应用将直接对设计结果产生影响,应用不同的元器件和设计方法可以使洗衣机的设计结果截然不同,洗衣机的性能也将有差别,同时在本设计中应用的元器件都是单片机的应用,使该设计只要稍加修改就可以很方便地开发出其他基于单片机的洗衣机控制系统。
- 27 -
基于51单片机的全自动洗衣机设计
总结几个月来的设计体会大体如下:
首先任何工作都要与人打交道、沟通,毕业设计也不例外。这就需要我们充分地利用好彼此的力量、充分的协作可以对设计过程中出现的问题站在不同的角度分析问题,汇结大家的意见,最终达成一致,发挥了团队精神。
其次对待任何的工作责任心是必要的。这次的毕业设计让我体会颇深,然而更重要的是在责任心的驱使下我该采用何种方法更省时省力的完成此次设计。凭着“方法总比困难多”的信念,我首先和同学分析了任务本身该从何处着手,该何时何地查找相关资料等等寻找突破,充分地解决好问题。
再次是遇到不懂的问题及时向老师请教,抓紧设计的每分每秒,需要调整和改变的地方及时的做出改动而不墨守成规,同样做人也该如此。
对于以上之粗浅体会进一步的总结和提高,需要有更多的社会实践来提供,我也相信在不久的将来踏入社会,类似这样的设计绝不在少数,只要我们努力学习、勇于实践、勤学好问我们就会懂得以前不明白或不懂的道理,就会很快地成长和成熟起来。我也相信凭着我自强不息勇于拼搏的精神一定能够很快的适应类似设计的需要,适应这个多变的社会,充分发挥长处朝我们的方向不断前进前进再前进!
- 28 -
基于51单片机的全自动洗衣机设计
参考文献
[1]李勋.单片机微型计算机大学读本.[M]北京航空航天大学出版社,2002.
[2]王治刚.单片机应用技术与实训.[M]清华大学出版社,2004.
[3]周航慈等. 单片机程序设计基础. [M]北京航空航天大学出版社,1997.
[4]彭为. 单片机典型系统设计实例精讲. [M]电子工业出版社,2006. [5]卢艳军. 单片机基本原理及应用系统. [M]机械工业出版社,2005. [6]周美娟等. 单片机技术及系统设计. [M]清华大学出版社,2007. [7]永权. 单片机与家用电器智能化技术. [M]电子工业出版社,1995. [8]杨素行等.模拟电子技术基础简明教程.[M]高等教育出版社,2005 [9]谢维成等.单片机原理与应用及C51程序设计.[M]清华大学出版社2009
- 29 -
基于51单片机的全自动洗衣机设计
附 录
附录C 程序
项目名称:控制器 修改日期:2014-05-06
----------------------------------------*/
#include
#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_sel = 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 buzzer=P3^0; uchar
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;//正反转计数
- 30 -
code
基于51单片机的全自动洗衣机设计
// 函数声明
void delay();// 延时函数 void in(); // 进水子程序 void out(); // 出水子程序 void over(); // 结束子程序 void xi(); // 洗衣子程序 void pao(); // 泡衣子程序 void xx(); // 脱水子程序
void on(); // 工作on处理子程序 void sel(); // 显示菜单选择
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)%6; 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() { P0 = 0xff; mo_r=0;mo_l=0;
- 31 -
基于51单片机的全自动洗衣机设计
led_over = 0;buzzer=0; EA=0; }
// 进水子程序 void in()
{ // 洗衣电源控制开关 P0 = 0xff;led_in = 0; flag1++; // 进水次数标志 mo_r = 0;mo_l = 0; min = 0;sec = 8; }
// 洗衣子程序 void xi() {
P0 = 0xff; led_xi = 0;led_work = 0; mo_r = 1;mo_l = 0; min = 0;sec = 20; quan = 0; }
// 泡衣子程序 void pao() { P0 = 0xff; led_pao = 0;led_work = 0; flag3++;//泡衣次数标志 mo_r = 1;mo_l = 0; min = 0;sec = 20; quan = 0; }
// 脱水子程序 void xx() { P0 = 0xff;led_xx = 0; mo_r = 0;mo_l = 1; min = 0;sec = 16; }
// 电机工作指示灯 - 32 -
基于51单片机的全自动洗衣机设计
// 出水子程序 void out() { P0 = 0xff;led_out = 0; flag2++;//出水次数标志 mo_r = 0;mo_l = 0; min = 0;sec = 5; }
// 显示菜单选择 void sel() { 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)
- 33 -
基于51单片机的全自动洗衣机设计
{ delay(5); if(key_off == 0) { while(!key_off); over();break; } } if(key_sel == 0) { delay(5); if(key_sel == 0) { while(!key_sel); flag0++; sel(); } } } }
// 按键扫描子程序 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)
- 34 -
基于51单片机的全自动洗衣机设计
{ 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];delay(10); P1 = 0x04;P2 = num[sec/10];delay(10); P1 = 0x08;P2 = num[sec];delay(10); }
// 主函数 void main() { led_in=0; while(1) { SEG_display(); key_scan(); } }
// 定时器0中断处理程序 void timer0() interrupt 1 {
- 35 -
正在阅读:
都是因为你作文600字07-05
2010 方伟岗 医学 关于成功申请科研基金的几点体会06-12
新庄小学信访工作制度10-18
煤矿井下非接触式智能型温度监测仪研究与开发国内外竞争情况及产业化前景02-01
精选樱花作文300字四篇03-27
全力推进社保扩面征缴工作10-30
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 单片机
- 毕业论文
- 洗衣机
- 全自动
- 基于
- 设计
- 汽车站安全管理制度
- 小学语文作文教学之我见
- 2012年中考英语作文写作复习系列(1)
- 运维站应急现场处置方案(公共部分)
- 大工13秋《税法》在线作业1,2,3
- 六年级上册语文知识与能力能力训练答案
- 路基强夯二级施工技术交底书
- 黑龙江省烟花爆竹批发经营企业安全生产标准化工作实施方案
- 2017年数据结构课程设计题目及报告范例
- 申论常见错误及对策
- 毕业设计 10万吨日城市生活污水卡鲁塞尔氧化沟处理厂的初步设计
- 医学遗传练习册及答案
- 酒店餐饮一体化方案 - 图文
- 浅析农村小学家校合作现状
- “十三五”重点项目-金属封闭铠装移开式开关柜项目可行性研究报
- 咸宁市民用爆破器材行业
- 中班第一学期区域游戏计划
- 典型电器工业区河涌沉积物中多环芳烃的分布_来源和潜在生态风险
- C++复习题(2015)
- 上海市旅游十二五规划