智能洗衣机控制器设计智能仪器课程设计.docx
《智能洗衣机控制器设计智能仪器课程设计.docx》由会员分享,可在线阅读,更多相关《智能洗衣机控制器设计智能仪器课程设计.docx(33页珍藏版)》请在冰点文库上搜索。
智能洗衣机控制器设计智能仪器课程设计
课程设计
设计题目:
智能洗衣机控制器设计
系别班级
学生姓名学号
指导教师职称
起止日期:
年月日起——至年月日止
课程设计任务书
课程设计题目:
智能洗衣机控制器设计
系别班级
学生姓名学号
指导教师职称
课程设计进行地点:
任务下达时间:
年月日
起止日期:
年月日起——至年月日止
教研室主任年月日批准
智能洗衣机控制器设计课程设计成绩评定表
系(部):
班级:
学生姓名:
指导教师评审意见
评价
内容
具体要求
权重
评分
加权分
调研
论证
能独立查阅文献,收集资料;能制定课程设计方案和日程安排。
0.1
5
4
3
2
工作能力
态度
工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作,
0.2
5
4
3
2
工作量
按期圆满完成规定的设计任务,工作量饱满,难度适宜。
0.2
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。
0.5
5
4
3
2
指导教师评审成绩
(加权分合计乘以12)
分
加权分合计
指导教师签名:
年月日
评阅教师评审意见
评价
内容
具体要求
权重
评分
加权分
查阅
文献
查阅文献有一定广泛性;有综合归纳资料的能力
0.2
5
4
3
2
工作量
工作量饱满,难度适中。
0.5
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。
0.3
5
4
3
2
评阅教师评审成绩
(加权分合计乘以8)
分
加权分合计
评阅教师签名:
年月日
课程设计总评成绩
分
1.设计主要内容及要求;
设计一个智能洗衣机控制器。
要求:
1)硬件电路设计,包括原理图和PCB板图。
2)控制器软件设计。
3)要求能够设定温度、测量温度、显示温度、测量转速、显示转速以及定时控制等。
2.对设计论文撰写内容、格式、字数的要求;
(1).课程设计论文是体现和总结课程设计成果的载体,一般不应少于3000字。
(2).学生应撰写的内容为:
中文摘要和关键词、目录、正文、参考文献等。
课程设计论文的结构及各部分内容要求可参照《沈阳工程学院毕业设计(论文)撰写规范》执行。
应做到文理通顺,内容正确完整,书写工整,装订整齐。
(3).论文要求打印,打印时按《沈阳工程学院毕业设计(论文)撰写规范》的要求进行打印。
(4).课程设计论文装订顺序为:
封面、任务书、成绩评审意见表、中文摘要和关键词、目录、正文、参考文献。
3.时间进度安排;
顺序
阶段日期
计划完成内容
备注
1
月日
教师讲解题目,学生查阅相关资料
2
月日
查阅相关资料、进行方案论证
3
月日
参数计算、确定方案
4
月日
绘制原理图,设计PCB板图
5
月日
设计PCB板图,程序设计
6
月日
程序设计
7
月日
程序调试
8
月日
撰写论文
7
月日
论文答辩,成品验收
中文摘要
随着电子技术的飞速发展,人们生活水平的提高及生活节奏的加快,洗衣机产品越来越受到人们的喜爱与重视。
本文研究的是基于C8051F020单片机的全自动洗衣机控制系统,围绕洗衣机系统的硬件和软件进行课程设计,设计了一个简单可行的洗衣机自动控制系统,功能包括进水、洗衣、排水、脱水、报警等功能。
该电路简单,工作原理清晰,易于理解。
根据洗衣机的控制要求,从功能要求、硬件设计、软件设计三个方面描述了一个以C8051F020单片机为核心的洗衣机控制系统。
硬件线路及控制程序的设计是该系统的重要组成部分。
硬件线路设计主要包括电源、功能及控制系统、洗衣机状态显示、输出控制电路的设计。
控制程序设计主要包括主程序、内部定时中断服务程序、外部中断服务程序的设计。
关键字:
洗衣机控制系统、8051F020单片机、Protel99SE
一设计任务描述
1.1设计题目
智能洗衣机控制器
1.2设计要求
1.2.1基本要求
设计一个智能洗衣机控制器。
要求:
1)硬件电路设计,包括原理图和PCB板图。
2)控制器软件设计。
3)要求能够设定温度、测量温度、显示温度、测量转速、显示转速以及定时控制等。
二设计思路
2.1洗衣机功能与要求
洗衣机的主要工作程序是:
洗涤——脱水——漂洗——脱水——漂洗——脱水。
上述工作程序中,包含三个过程,洗涤过程、漂洗过程、脱水过程。
(1)洗涤过程:
放好待洗物,启动开关,进水阀通电,向洗衣机供水,当供水达到预定水位时,水位开关接通,进水阀断电关闭,停止供水。
洗涤电动机接通电源,带动波轮(或桶)旋转,产生各种形式的水流搅动衣物进行洗涤。
通过电动不停的正转、停、反转、反复循环,形成洗涤水对洗涤物产生强烈的翻滚作用。
同时,衣物之间、衣物与四周桶壁之间产生互相摩擦和撞击力,以次达到洗涤衣物的目的。
(2)漂洗过程:
漂洗的目的在于清除衣物上的洗涤液,因此,漂洗过程与洗涤过程的电器动作是完全相同的。
(3)脱水过程:
洗涤或漂洗后,需要对衣物进行脱水以便晾干,节省水资源
所以脱水是洗衣过程中必不可少的环节。
洗涤或漂洗过程结束后,电动机停止转动,排水阀通电,打开排水阀门排水。
当水位低到一定程度时,满足安全条件,脱水电动机接通,电机带动脱水桶高速旋转,利用离心力把衣服上的水从桶壁的小眼里甩出。
全部洗衣工作完成后,由蜂鸣器发出音响,表示衣物已洗干净。
2.2洗衣机的基本工作原理
全自动洗衣机的进水和排水分别有进水电磁阀和排水电磁阀来执行。
进水时,通过电控系统把进水阀打开,经进水管将水注入机内,排水时,通过电控系统使排水阀打开,将水又排到机外。
洗衣机正转,反转由洗涤电机驱动波轮正反来实现,此时脱水桶并不旋转。
脱水时,通过电控系统将离合器合上,由洗涤电机带动桶转进行甩干;高中低水位开关分别用来测高中低水位;启动按钮用来启动洗衣机工作;空水位按钮用来测空水位;进水、洗涤、排水、脱水及报警自动完成。
三硬件设计方框图
椭圆型表示指示灯:
从上到下依次为强洗、弱洗、洗涤次数、洗衣定时、脱水定时、洗衣剩余时间、脱水剩余时间。
电动机正转为强洗,正反交替转动设定为弱洗,初始设定的状态为强洗,若要选择弱洗模式需按下增加按键,再次按下选择按键,则表示洗涤次数的指示灯被点亮,选择增加或减少按键对时间进行加减。
然后对脱水时间设定,最后按下启动键,洗衣机开始工作。
正转
C8051F020单片机
电动机
反转
数码管1(显示时间)
蜂鸣器
38译码器
数码管2(显示时间)
开始/暂停
进水
选择增加
减少启动
出水
四硬件设计
4.1单片机模块
4.1.1电源电路
在电源电路中,SPX1117-3.3是稳压芯片将输入电压5V转换成3.3V作为C8051F020单片机的主要供电电源。
S2为输入电源开关按钮,在下载完数据后可用此按键来更新下载数据。
其电路图如图4—1单片机电源电路所示。
图4—1单片机电源电路
4.1.2复位电路
当开发板上电时,C14经充电后复位端电压相当于低电平实现上电复位:
当断电后通过1N4148形成放电回路。
其电路图如图4—2单片机复位电路所示。
图4—2单片机复位电路
4.1.3液晶显示(LCD)接口电路
单片机留有一个LCD液晶接口,相对应的液晶为MzL05-12864,它是一款仅写入的串行SPI接口方式的液晶,给液晶仅需5个控制口即可完成对其控制。
单片机使用模拟SPI的方式对液晶进行操作。
其电路图如图4—3单片机液晶接口电路所示。
图4—3单片机液晶接口电路
4.1.4晶振电路
Y1为晶体振荡器,其振荡频率为22.11842MHZ,为单片机提供其工作所需要的时钟,C16、C17起到帮助晶振的作用。
电路图如图4—4单片机晶振电路所示。
图4—4单片机晶振电路
4.2洗衣机系统模块
根据洗衣机的基本功能,硬件电路设计需要考虑:
水流强度的问题、洗涤、漂洗、脱水时间设定长短的问题、工作时间或剩余时间的显示、工作过程中的暂停、启动、复位、洗完后的报警等问题。
采用5l系列单片机作为控制核心,主要包括功能设置及控制电路、洗衣机状态显示及输出控制电路。
主要组成部件有:
单片机、74LSl38译码器、ULN2003、指示灯、数码管、电动机、蜂鸣器以及按键等。
4.2.1功能设置及控制
(1)暂停键K0,接P3.3,用外部中断1实现工作过程的暂停,根据人的需要可以进行手工洗涤;
(2)水位开关K1,接P1.O,水位到位时,K1闭合。
在进水期间,系统不断检测K1,当检测到K1闭合就停止进水;
(3)按键K2,接P1.6,作为工作过程中的启动键;
(4)按键K3是洗衣强度选择键,接P3.4,每按一次代表一种强度。
分别是标准、弱洗、强洗和自编,由4个指示灯进行显示;
(5)按键K4,接P3.5,对洗衣时间进行设置,并用数码管LEDl和LED2显示:
(6)按键K5,接P3.6,对漂洗、脱水次数进行设置,并用数码管LEDI显示;
(7)压电蜂鸣器接P1.7,作为洗衣时间到以及故障发生的报警器。
控制电路如图4-5洗衣机控制电路所示.
图4-5洗衣机控制电路
4.2.2状态显示
74LSl38译码器为3—8译码器,选用它可以解决I/0口线数量不足问题。
从控制要求可知,洗衣机的工作模式以及工作程序必须有7中不同的显示加以区别。
74LSl38译码器的输入端C、B、A分别接P1.3、P1.4、P1.5,输出端分别与7个发光二极管DO--D6的阴极相连,发光二极管阳极接电源。
输出端YO控制D0“弱洗”指示灯:
Y1控制D1“标准洗”指示灯,Y2控制D2“强洗”指示灯,Y3控制D3“自编”指示灯,Y4控制D4“洗衣”指示灯,Y5控制D5“漂洗”指示灯,Y6控制D6“脱水”指示灯.状态显示电路如图4-6状态显示电路所示.
图4-6状态显示电路
4.2.3输出控制
输出控制电路由触发器电路和相应的双向晶闸管组成。
控制电机正反转以及进水阀和排水阀的开启和关闭。
通过触发器电路和相应的双向晶闸管,电动机的正转和反转用单片机P1.1和P1.2进行控制;进水电磁阀和排水电磁阀用单片机的P3.0和P3.1进行控制
五软件设计方框图
5.1主程序流程图
5.2中断程序流程图
六软件设计
6.1主程序设计
根据硬件设计要求,控制主程序流程图如图所示。
洗衣机通电之后,单片机上电,首先进行程序的初始化,包括定时器O、外部中断O、外部中断l的初始化,以及各参数初值的设定。
默认洗衣强度为“标准洗”,漂洗次数3次。
然后扫描K2、K3、K4、K5键的状态,确定洗衣强度R2、洗衣时间R3和漂洗次数R4。
洗衣机处于待命状态,控制指示灯显示洗衣强度,液晶显示预设洗衣时间。
当发现启动键K2按下,洗衣机从待命状态进入工作状态。
完成进水——洗涤——脱水——漂洗的循环过程。
当洗衣结束时,控制蜂鸣器发声。
6.1.1进水程序设计
当P3.0=1时,打开进水电磁阀开始进水。
当水位到达要求时,P1.0=0,即水位开关K1闭合,关闭进水电磁阀,P3.0=0,迸水结束;
6.1.2洗涤过程程序设计
电机正反转均为10S,根据R2的值确定洗衣强度、洗衣时间R3及电动机的间歇时间。
6.1.3脱水、漂洗过程程序设计
脱水前先打开排水阀排水1min。
然后启动电动机脱水1min,并保持排水阀开启,然后停止脱水。
接着判断漂洗次数即R4的值,若R4为0则洗衣结束,开蜂鸣器提醒洗衣结束,系统返回初始待命状态;若R4不为0,则再次执行进水操作,进入下一循环。
程序如下图所示:
6.2内部定时中断设计
工作过程中所需的各种计时均有定时器0定时中断服务64程序提供。
单片机晶振频率12Mllz,定时器0选择工作方式1,设置时间常数,每0.1S中断~次。
中断处理程序流程图如下图所示。
6.3外部中断设计
为了防止外部电压过高或过低对洗衣机的电器及控制硬件产生破坏,用外部中断0进行保护。
当电压过高或过低时,引起外部中断0,洗衣机停止一切动作,进入保护状态。
用外部中断1来实现洗衣过程停止工作。
在洗衣过程中,当暂停键K0按下时,引起外部中断1,转入中断1处理程序。
中断l处理程序将使洗衣机停止工作,并将停止前的状态存储起来。
当按下启动键K2时,洗衣机又恢复工作。
程序设计流程图
七工作过程分析
本设计采用常用的C8051F020单片机为控制核心,辅以电机、数码管等其他元器件,通过软,硬件的配合设计,很好的实现了洗衣机的控制功能。
本系统结构简单,控制功能强大,自动化程度高等特点。
(1)系统软硬件设计采用模块化的设计方法,各模块功能相对独立,最后把它们整合在一起,大大的缩短了系统的设计周期。
(2)为保证洗衣机及人身安全,设计了蜂鸣器报警电路。
(3)本设计还考虑半自动的设计,用户可以根据自己的需求自由选择洗衣机的工作方式,这一点是通过按键实现的。
本文设计的时候只考虑了洗衣机的实用功能,其他的功能可以在他上面进行扩展,使洗衣机功能更能强大。
八元器件清单
名称
型号
数量
备注
普通电阻器
3
电容
5
整流二极管
1N4004
2
发光二极管
10
数码管
2
单片机
C8051F020
1
集成稳压器
LM7805
1
开关
CA3130
6
晶振
2
液晶
1602
1
九主要元器件介绍
9.1C8051F020
C8051F020引脚图如图9-1C8051F020引脚图
图9-1C8051F020引脚图
C8051系列单片机是集成的混合信号片上系统,具有与MCS-51内核及指令集完全兼容的微控制器,除了具有标准8051的数字外设部件之外,片内还集成了数据采集和控制系统中常用的模拟部件和其他数字外设及功能部件。
C8051系列单片机是真正能独立工作的片上系统(SOC)。
CPU有效地管理模拟和数字外设,可以关闭单个或全部外设以节省功耗。
C8051F系列单片机是完全集成的混合信号系统级芯片,具有与8051兼容的CIP-51微控制器内核,采用流水线结构,单周期指令运行速度是8051的12倍,全指令集运行速度是原来的9.5倍。
其内部电路包括CIP-51微控制器内核及RAM、ROM、I/O口、定时/计数器、ADC、DAC、PCA、SPI和SMBus等部件,即把计算机的基本组成单元以及模拟和数字外设集成在一个芯片上,构成一个完整的片上系统(SOC)。
C8051F020内部带有数据采集所需的ADC和DAC,其中ADC有两个,一个是8路12位逐次逼近型ADC,可编程转换速率,最大为100kS/s.可通过多通道选择器配置为单端输入或差分输入。
内有可编程增益放大器PGA用于将输入的信号放大,提高A/D的转换精度。
可编程增益为:
0.5、1、2、4、8或16,复位时默认值为1。
另一个是8路8位ADC,可编程转换速率最大为500kS/s,其可编程放大增益为0.5、1、2、4,复位时默认值为0.5。
有2个12位的DAC,用于将12位的数字量转换为电压量,可产生连续变化的波形,两路信号可同步输出。
C8051F020外设还增添了三个串行口。
可同时与外界进行串行数据通信,SMBus兼容于I2C串行扩展总线;SPI串行扩展接口;两个增强型UART串口。
C8051F020具有基于JTAG接口的在系统调试功能,片内的调试电路通过JTAG接口可提供高速、方便的在系统调试。
9.21602
所谓1602液晶显示器,就是指每行可以显示16个字符,可以显示2行,总共可以显示32分字符。
1602是是单排16引脚,1脚是电源地,2脚是电源,3脚是对比度调节,4(RS)、5(RW)、6(E)是控制读写指令,7—14是数据线,15脚是LCD背光电源正,16脚是LCD背光电源负。
1602的控制主要通过4、5、6引脚的控制进行:
读状态输入:
RS=L,RW=H,E=H输出:
DB0~DB7=状态字
写指令输入:
RS=L,RW=L,E=下降沿脉冲,DB0~DB7=指令码输出:
无
读数据输入:
RS=H,RW=H,E=H输出:
DB0~DB7=数据
写数据输入:
RS=H,RW=L,E=下降沿脉冲,DB0~DB7=数据输出:
无
液晶显示器1602的外观如图9-2液晶显示器所示
图9-2液晶显示器
9.3LM7805
X78XX系列是三端正电源稳压电路,它的封装TO-220它有一系列固定的电压输出,应用非常的广泛.每种类型由于内部电流的限制,以及过热保护和安全工作区的保护,使它基本上不会损坏。
如果能够提供足够的散热片,它们就能够提供大于1.5A的输出电流。
虽然是按照固定电压值来设定的,但是当接入适当的外部器件后,就能获得各种不同的电压和电流。
特点:
(1)最大输出电流为1.5A
(2)输出电压为5V;6V;8V;9V;10V;12V;15V;18V;24V
(3)热过载保护
(4)短路保护
(5)输出晶体管安全工作区保护
小结
本次我们组课程设计的题目是智能洗衣机控制器设计,这次课程设计我们查阅了许多的相关文献和书籍。
因为刚看到这个题目的时候,大家都不了解。
前期都处于迷茫状态。
此次课设是两周的时间,第一天,老师对每个题目都做了解释及其具体的要求,使我们的思路逐渐清晰起来。
知道了从何处下手。
大家都知道,课程设计是用我们课程知识综合应用的实践训练;是我们迈向社会,从事职业工作前一个必不少的过程。
所以我很珍惜这次机会,在老师讲完的时候,我们组就有了一点思路。
我组成员都很积极,想大显自己的能力。
我们今天认真的进行课程设计,学会脚踏实地迈开实践这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础。
在这次的课程设计中,不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。
在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。
学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世。
这两周内,我感触最深的当属查阅大量的设计资料了。
无论是课本上的,还是网上的都浏览了不少相关的设计思路,从中也借鉴了别人的思想,开阔了自己的思路。
在设计程序之前,设计者必需对所用的知识内部有一个深刻的理解,知道具体应用的是哪一部分的知识。
更要有一个清晰的思路和一个完整的结构框图。
在设计电路时,不能妄想一次就将整个电路图设计好。
反复修改、不断改进是整个设计过程的必经之路。
要养成文件管理的好习惯,因为每个模块可能仿真的次数很多,如果不整理好文件,最后可能一团糟。
一个电路图的完美与否不仅仅是实现其应有的功能,而应该让人一看就能明白你的设计结构。
在设计课程过程中遇到问题是很正常的,但我们应该将每次遇到的问题分析清楚,并及时解决,以免下次再碰到同样的问题。
通过这次训练,我能够更好的综合运用所学知识、独立分析和解决实际问题。
培养了自己的创新意识和创新能力,并获得了科学研究的基础训练和培养了团队协作精神。
在这个过程中,我也学到了很多知识。
因为每个同学喜好不一样,有的人喜欢研究,有的人喜欢大量查阅资料。
所以从他们那里学的东西也多了。
比如说,在设计的时候,我有个模块一直想不透。
恰好一个同学提供了一个想法,在这个基础上,最后我设计出了更完整的电路图。
团队合作精神真的很重要。
我组成员各有优点,他们融会贯通的能力很好,也使我这方面的能力得到了很大提高。
在与老师交流、请教之间,课设很快就结束了。
两周的时间虽然短暂,但在这两星期的课程设计中收获很多。
将以前的知识运用到实践中,大大提升了自己的动手能力。
在设计与仿真的过程中,对某些元件的功能及特点有了很好的了解,这对以后的学习或是工作有很大的帮助。
课设虽然结束了,但是实践与求知的路并未结束。
致谢
在这次课程设计的过程中,首先要感谢的是老师。
没有老师的帮助,我们要完成整个设计是很困难的。
就算是很简单的一个问题,我们有时候也会检查不出来,这时候多亏了老师的帮助。
是老师的正确指导,才使我的课程设计更加完整。
由于此次课程设计涉及的内容以前没有经常应用,遇到了很大的困难,设计能够顺利的完成,真的很感谢老师。
在老师的讲解下,我才有了比较清晰地设计框图。
在每个模块的设计过程中也遇到了很多的问题。
每次请教老师的时候,老师都能很仔细、耐心的为我们解答,不管是容易的问题,还是复杂的问题。
每次老师在讲解以后,我们都会恍然大悟,而且老师也会给出更好的设计提议。
使我们设计得更快,更顺利。
在这里,对其他给我帮助的人也表示诚挚的谢意。
也感谢学校能够提供一次锻炼学生将理论与实践相结合的能力的机会。
对我们组来说,是一个合作的团体,所以也感谢我组成员对我的帮助,每次遇到问题的时候,他们一定会帮我解决问题,并鼓励我。
所以在问题解决的同时,也学会了新的东西。
大家在一起讨论、研究与测试,各自发挥所长。
真的很高兴能有这样的一次机会。
参考文献
[1]杜文洁.单片机原理课程设计案例精编.北京:
清华大学出版社,2012
[2]楼然苗.单片机课程设计指导.北京:
北京航空航天大学出版社,2012
[3]万光毅.单片机实验与实践教程.北京:
北京航空航天大学出版社,2003
[4]杨居义.单片机课程设计实例教程.北京:
清华大学出版社,2010
[5]张伟.电路设计与制板Protel99SE基础教程.北京:
人民邮电出版社,2006
[6]张伟.电路设计与制版:
Protel99入门与提高.人民邮电出版社,2000
附录1智能洗衣机控制器设计(源程序)
INCLUDE(C8051F020.INC)
ORG0000H
LJMPMAIN
ORG0030H
LJMPSPAIK
ORG0013H
LJMPSTUOK
ORG0030H
MAIN:
SETBP0.0;低水位选择端
SETBP0.1;中水位选择端
SETBP0.2;高水位选择端
SETBP2.0;进水阀
SETBP2.1;浸泡显示
SETBP2.2;正转显示
SETBP2.3;反转显示
SETBP2.4;排水阀
SETBP2.5;脱水电机显示
SETBP2.6;蜂鸣报警端
MOVR4,#3H;洗衣脱水3次
CLRIT0;电平触发方式
CLRIT1
;开中断
SETBEA;开总中断
SETBEX0;开外部中断0
SETBEX1;开外部中断1
NK1:
JNBSTARTK,A0;查询启动