单片机课程设计洗衣机控制系统_第1页
单片机课程设计洗衣机控制系统_第2页
单片机课程设计洗衣机控制系统_第3页
单片机课程设计洗衣机控制系统_第4页
单片机课程设计洗衣机控制系统_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2017 年 7 月 28 日东北石油大学课程设计课题院程目系单片机课程设计洗衣机控制系统设计电气信息工程学院专业班级学生姓名学生学号测控 14-1 班孔锡达课程题目任务书单片机课程设计洗衣机控制系统设计专业测控 14-1 班姓名孔锡达学号主要内容:本课题针对洗衣机控制系统的发展现状以及当今社会发展对于产品智能化 的要求,设计一种基于单片机微处理器的控制系统。要求具有较高的可靠性和实 用性,实现智能化控制。本文以单片机为控制器核心设计控制系统,使洗衣机可 处于自动模式依次进行进水、洗涤、排水、脱水四个过程;也可处于手动模式通 过按键进行洗涤、排水、脱水三个过程的选择,并且处于何种模式,何种过程

2、能 够通过指示灯显示。基本要求:1、分析洗衣机控制系统设计各种方案的优缺点,说明本设计方案选用原则; 2、阐述本设计方案的基本工作原理、分析并注明元器件选取参数;3、 绘制并分析洗衣机控制系统硬件设计原理图及电路图;4、 设计完整的程序框图和程序清单;参考文献 :1 余永权 . 单片机在控制系统中的应用 m.北京电子工业出版社, 2003 : 23-78.2 冯先成 . 单片机应用系统设计 m. 北京航空航天大学出版社, 2009 : 56-98.3元增民.模拟电子技术m.北京:中国电力出版社,2009:35-97.4 万光毅,严义 ,邢春香 . 单片机实验与实践教程 m.北京:北京航空航天

3、大学,2006:23-110.完成期限指导教师专业负责人2017 年 7 月 16 日摘要随着经济社会的快速发展,智能化,自动化以成为当代社会的主旋律。因此, 设计了基于单片机的全自动洗衣机控制系统。本系统实现了对洗衣机整个过程的 控制,包括进水、洗涤、排水、脱水四个阶段.控制系统主要由电源电路,单片机 控制系统和外部硬件三大模块组成。通过单片机的控制,外部硬件随着用户参数 的输入,洗衣机按照用户的选择要求进行运作。本设计实现了自动和手动模式自 选,能够满足现代家庭的基本洗涤要求,具有一定的实用性、可靠性,能够实现 自动化、智能化。关键词:手动模式;自动模式;洗衣机;单片机;控制系统目录1 设

4、计要求 . 11.1 功能与用途 . 11.2 课题研究的意义 . 11.3 国内外发展现状 . 12 设计方案 . 32.1 方案说明 . 32.2 方案论证 . 43 硬件设计 . 53.1 硬件电路 . 53.2 参数计算 . 73.3 器件选择 . 73.4 元器件清单 . 74 软件设计 . 84.1 软件介绍 . 84.2 程序介绍 . 95 系统仿真 . 225.1 系统仿真 . 225.2 问题及解决 . 226 总结 . 22参考文献 . 241 设计要求1.1 功能与用途设计一个基于单片机的洗衣机控制系统,洗衣机的工作流程由进水、洗衣、 排水和脱水四个过程组成,并且能达到“

5、自动模式”和“手动模式”两种控制模 式要求:(1) 按下启动按钮,开始进水直到水满(即水位达到高水位)时停止进水 开始洗涤。(2) 洗涤时,正转 30 秒,停 2 秒;然后反转 30 秒,停 2 秒,如此循环 5 次,总共 320 秒开始排水。(3) 水位下降到低水位时开始脱水并继续排水,脱水 30 秒。(4) 开始清洗,重复(1)(4),清洗三遍。(5) 若按下洗涤按钮,可实现手动洗涤。(6) 若按下排水按钮,可实现手动排水。(7) 若按下脱水按钮,可实现手动脱水。1.2 课题研究的意义目前中国洗衣机市场正进入更新换代期,市场潜力巨大,人们对于洗衣机的 要求也越来越高,目前的洗衣机主要有强弱

6、洗涤功能、进排水系统故障自动诊断 功能、暂停等几大功能,在许多方面还不能达到人们的需求。这就要求设计者们 有更高的专业和技术水平,能够提出更多好的建议和新的课题,将人们的需要变 成现实,设计出更节能、功能更全面、更人性化的全自动洗衣机。目前的洗衣机 都没有实现全方面的兼容,打多洗衣的厂家都注重格子品牌的洗衣机的特长,突 出一两个与别的洗衣机不同的个性化的功能,洗衣机的各项功能是由单片机控制 实现的,单片机的体积小,控制功能灵活,因此,设计出给予单片机控制系统就 具有很强的实用性。而本次设计的洗衣机控制器也是为了满足某些用户的不同需 要。同时也将单片机控制技术用到了实际生活中,最重要的是将所学的

7、东西运用 化。1.3 国内外发展现状当今世界是技术、知识打爆炸的年代,只要人们有需要,就有可能生产出 某种产品来满足人们的需要。洗衣机的发展正是这样,人们在生活中发现了它的 某些不便,就会在实际中不断地改进和完善它,新型的洗衣机正是在这种情况下 诞生的。1、 超声波洗衣机超声振动产生空穴现象,在洗涤中通过边生产气泡边消失 的运动,产生强水压,再加入小量洗衣剂,振动纤维,超声乳化去污,水中气泡 上升,产生了洗涤桶中央向外侧翻动的水流,便衣服之间相互摩擦,并与洗涤剂 充分接触产生很有效的洗涤作用。这种洗衣机洗涤桶小,桶内无运动部件,无机 械电气故障,修理方便。词典均匀性好,不缠绕,不伤布料,洗涤效

8、果好,省水, 省电。2、 电磁洗衣机这种洗衣机洗涤桶内有 4 个洗涤头,上面各有个夹子,把衣 物伸展夹住,每个洗涤头上有个电磁线圈,接通电源发生 2500 次/秒的微击振动, 使衣物在洗涤液中洗涤。因不用电机驱动,无噪声,省水 50%,省电 75%。3、 高温泡沫洗衣机日本大阪大研制的一种不用高温泡沫来洗涤衣物的洗机。 洗涤剂灌于洗衣机低部,放衣物后拨动开关,开始鼓风,将空气送入罐中产生泡 沫,由加热到 701 马君:基于单片机的全自动洗衣机控制系统设计摄氏度高温泡 沫洗净衣物,然后进入洗衣桶旁边的消泡装置,一般洗 5-10 分钟/5 次,21l/1kg 干衣。4、 真空洗衣机原苏联研制的一种

9、不用洗衣粉或洗涤剂的洗衣机,真空泵将 洗衣桶内吸成真空状态,桶中水运动产生气泡爆破并去污。洗净度高,不损衣、 无噪声、造价高。实际上是采用冷沸腾洗涤原理,在几秒钟内从洗涤桶的上部那 空气抽出。稀薄空气与水如沸腾状,衣物在泡沫漩涡中搅动,1.5-2 分钟就能洗 净衣物,一般洗衣服 7-10 分钟即可完成全过程。5、 喷射式洗衣机意大利扎努西公司研制一种将洗涤剂不断喷射向衣物的洗 衣机,似乎无水,可以省水 20%,省洗涤剂 30%,省能 35%,省时间 10%。这种洗 衣机完全不同于前装式滚筒洗衣机,安装在喷淋系统内的喷射装置持续不断地将 水和洗涤剂喷淋在衣物上进行洗涤,并在不锈钢桶内搅动衣物。衣

10、物在液体中不 停地搅动,就像桶内根本没有水一样。然而水却渗透过衣物流入位于滚筒底部的 一个储水槽中。在槽中,水被从新加热再次循环喷射到衣物上去,洗涤桶做周期 性脱水,以排去水和污物,随后漂洗 3 次,最后脱水洗完。由于我国洗衣机厂起步晚,加上技术方面的一些问题,不可避免的在现有的 机型中出现一些弊病。主要弊病有:噪声大,漏电和漏水,进水不畅或进水不止 或排水不畅,工作周期不平稳、振动大,损伤洗涤物,洗涤效果不佳,脱水插自 动性不佳,脱水不良,重量大,容量不合理。具体来说,洗衣机的问题存在于结构、质量、原材料和模具及管理方面。1、 结构类型。方面我国洗衣机多属波轮式。今后波轮式任然是主要形式。

11、为了适应国外市场的不同需求,要适当地生产些新型式的滚筒式和搅拌洗衣机, 进而生产具有波轮式、搅拌式两种洗衣机优点的新机型。为了使波轮式洗衣机洗 涤更合理,应努力将全自动洗衣机提高到电脑型的水平。双桶洗衣机再提高漂洗 的条件下,以重点生产全自动型喷淋式洗衣机为宜。同时要注意避免新水流洗衣 机一味地提高波轮式的转数及其转动时间或增高波轮筋高的倾向,以免损伤衣率 和缠绕率回升增高,降低了新水流洗衣机的优越性。2、 质量方面。我国洗衣机的质量问题,具体反映再功能、外观和可靠性三 方面,与国外存在较大的差距。把国内外洗衣机放在一起,从功能、电源插头、 面板装饰、旋钮结合,塑料件的光整度(光洁、毛刺和变形

12、),外箱和螺丝钉的 成形及防锈,皮带的耐磨及噪音进排水阀和水位开关阀质量,电脑控制各种功能 的能力,电脑的康电压波动、抗干扰防静电的能力,以及传感器的灵敏度等方面, 很容易看出那几台是国产货,再加上装配工艺较落后,致使我国洗衣机的质量稳 定性差,出口有一定的困难。目前我国洗衣机无故障运行水平为 250-500 小时, 而国外同类产品达 1500-2000 小时,即十年不需修理。我国的洗衣机出口,切不 可立足于搞好售后服务,否则将来带来很多麻烦。因此提高洗衣机的质量要从提 高零部件的质量入手。关键电器件和传动件应组织专业分工,制定标准,组织攻 关,进行认证,在改进功能方面、外观质量和可靠性三方面

13、,进行全面整理,提 高水平。3、 原材料和模具方面。洗衣机的原材料主要是塑料盒薄钢板,目前均供不 应求,需进口。一旦进口受阻,生产便要停滞下来。质量好的原材料生产的塑料 件注塑工艺和塑料模具的质量问题。另外,塑料的各种规格来源也不足,靠进口, 成本就降不下来,以每台洗衣机 10 公斤台粗计,年产 1000 万台每年需薄钢板 6 万吨,目前 50%还供应不上。我国洗衣机要维持生产,大型模具的设计、制造和 使用寿命,应组织攻关解决。4、 管理方面。各洗衣机厂从国外引进的设备和技术的消化吸收还没有落在 实处,有的厂家只是计划一下,软件技术既没有消化,也没有吸收,照老办法生 产,甚至买来就一直锁在柜子

14、里。现在出口洗衣机和前几年引进类似,盲目自我 竞争,各自为政,因此在出口管理方面,应协调一致,出口业务进行,统一对外。2 设计方案2.1 方案说明方案一、基于 51 单片机的全自动洗衣机控制系统设计控制系统的主要组成器件是 at89s52 单片机、指示灯、电机、按键、继电 器,主要组成电路有单片机最小系统、进排水电路、电机控制电路、按键电路、 指示电路。通过按键输入来确定洗衣机工作的模式状态即自动模式或者手动模 式。设计总原理图如图 2-1。电机控制电单片晶振电路进排水电路机电源电路指示电路主控复位电路按键电路图 2-1 设计总原理图方案二、基于 dsp 的变频洗衣机控制系统设计本洗衣机系统主

15、要实现的功能包括:进水、洗涤、排水、脱水、四个过程根 据变频洗衣机的原理和负载特性。本课题的洗衣机工作模式可分为自动和手动两 种洗衣模式。自动方式由洗衣机自动检测、预备各项参数进行洗衣,手动方式需 要用户设置各部分的工作参数,包括洗涤设置、排水设置、脱水设置、电机转速 等。接下来,进水阀打开通过水位传感器判断水量是否达到要求。开始浸泡,最 后根据用户手动设置的参数进行浸泡(自动式默认时间为零),然后获取检测或设 置的工作参数完成洗衣程序中的洗涤,排水和脱水等操作。方案三、plc 控制的全自动洗衣机课程设计洗衣机的工作原理:洗衣机的进水、排水分别由进水电磁阀和排水电磁阀执 行。洗涤正转、反转由洗

16、涤电动机驱动波盘正、反转来实现。脱水时,由脱水电 磁离合器合上、排水电磁阀吸合,洗涤电动机正转进行甩干。洗涤完成由蜂鸣器 报警。2.2 方案论证方案一 利用单片机实现,大部分的功能可以用单片机来实现,这样可以使 整个电路比较简单,而且成本也比较低,(使用单片机的外围电路比较简单), 而且在时间计数计算上精度大,扩展功能很方便。但如果系统设计的不好,则系 统不是很稳定,这样就为系统设计提出了挑战。方案二设计可行性很高,而且电路简单,可以用软件仿真,但实现困难,要 经过变频、计算等方式来实现,实现起来对设计者的要求很高。软件要求高。方案三 plc 由于采用现代大规模集成电路技术,采用严格的生产工艺

17、制造, 内部电路采取了先进的抗干扰技术,具有很高的可靠性。但 plc 设计要设计出梯 形图,设计图没有一同固定的方法和步骤,具有很大的试探性和随意行,比较难 掌控,分析起来复杂且困难,并且很容易遗漏一些应该考虑的问题。综合上述几种方案,出于对笨设计的安全性和实现简单、方便,且 51 单片 机中的典型,有高速率、高性能、低功耗的有点,且结构先进、功能强大。因此 我选择了第一方案,基于 51 单片机的全自动洗衣机控制系统设计。3 硬件设计3.1 硬件电路1.电源电路单片机正常工作的工作电压是 5v,如图 3-1 所示为一个 5v 电压的稳定指示 usb 接口电路,由于采用的是仿真的方式所以这里采用

18、的是已经经过降压处理后 再稳压的接口电路。图 3-1 电源电路2.复位电路复位是单片机的初始化操作,只需给 at89s52 的复位引脚 rst 加上大于 2 个机器周期(即 24 个时钟振荡周期)的高电平就可使 at89s52 复位。除了进入 系统的正常初始化之外,当程序运行出错(如程序“跑飞”)或操作错误使系统 处于“死锁”状态时,也需按复位键即 rst 脚为高电平,使 at89s52 摆脱“跑飞” 或“死锁”状态而重新启动程序。复位电路如图 3-2 所示。图 3-2 复位电路3.晶振电路at89s52 内部有一个用于构成振荡器的高增益反相放大器,它的输入端为芯 片引脚 xtal1,输出端为

19、引脚 xtal2。这两个引脚跨接石英晶体和微调电容,构 成一个稳定的自激振荡器,如图 3-3 所示为晶振电路。图 3-3 晶振电路4.电机控制电路如图 3-4 所示为洗衣机洗涤过程的电机控制电路。通过继电器 rl1 来控制电 机运行,通过继电器 rl2 来控制电机的正反转。并且通过两个 pnp 型三极管来放 大电机运行和电机正反转的控制信号,来实现单片机的弱电控制电机运行的强 电,并且继电器还起到“隔离”的作用。图 3-4 电机控制电路5.进排水电路如图 3-5 所示为洗衣机进水和排水的控制电路,图中用继电器控制电机转动 来代替电磁阀。同样是用两个 pnp 型三极管来放大来自单片机内部的控制信

20、号来 实现打开和关闭电磁阀进水和排水的功能。图 3-5 进排水电路6.指示电路出于方便人机交互的考虑,对于洗衣机处于何种工作模式正在执行何种工作状态 给以显示以便于洗衣者观察是很有必要的,所以如图 3-6 所示就用 led 小灯来作 为工作状态指示灯。图 3-6 指示电路7.按键电路如图 3-7 所示,用户可进行模式选择,也可进行状态选择。按下 p1.0 按钮 进入自动洗衣模式依次进行进水,洗涤,排水,脱水四个过程操作。也可按下下 面三个手动按钮分别是洗涤按钮、排水按钮、脱水按钮然后以外部中断的方式进 入单片机的中断处理程序以提高其实时性和准确性。图 3-7 按键电路3.2 参数计算1.典型电

21、路的参数确定典型的复位电路的参数值其中电容为 10uf,电阻值为 2k 欧姆。典型的晶振 电路使用的是值为 30pf 的微调电容。2.其他电路的参数确定分析继电器的工作原理可以得到继电器的启动电压是 5v,直接用单片机的 端口不能输出,所以需要用三极管来起到放大作用,根据所选的 pnp 型三极管 的型号:2n4126,其放大倍数为 100-200 倍,在探针的帮助下可以很容易的确定 三极管基极电阻应该选择 1k 欧姆,电机回路的串联保护电阻的阻值应该选择 5.6 欧姆。在指示电路中所用到的发光二极管的额定工作电压为 2.4v,额定工作电 流为 10ma,所以使用探针可以方便的得到和发光二极管串

22、联的保护电阻的阻值 应该选择为 510 欧姆。3.3 器件选择根据典型电路和仿真过程的具体分析以及元器件的标称值可以选择的元器 件是:at89s52 单片机,12mhz 晶振,继电器选择 t73s5d15-5v,发光二极管 选择 led-green,三输入与门型号 74ls11,pnp 型三极管型号为 2n4126,轻 触按键,电容分为 30pf、10uf,电阻按照阻值分: 2k、1k、510、5.6,排阻, 4-16 译码器 74hc154。3.4 元器件清单表 1 元器件清单序号1234567元器件类型at89s52 单片机晶振轻触按键发光二极管三极管瓷片电容电阻元器件规格 40 引脚12

23、mhz4 引脚3 毫米绿色pnp 型30pf2k数量1148431备注区分引脚无极性区分引脚区分引脚区分引脚无极性无极性89101112131415继电器排阻瓷片电容电阻电阻4-16 译码器电机自锁开关5v4 引脚9 引脚 4729 uf510 和 1k 通用5.674hc154直流6 引脚412123131区分引脚区分引脚无极性无极性无极性区分引脚无极性区分引脚4 软件设计4.1 软件介绍keil 软件是目前最流行开发 mcs-51 系列单片机的软件,这从近年来各仿真 机厂商纷纷宣布全面支持 keil 即可看出。keil 提供了包括 c 编译器、宏汇编、连接器、库管理和一个功能强大的仿 真调

24、试器等在内的完整开发方案,通过一个集成开发环境(vision)将这些部份 组合在一起。运行 keil 软件需要 pentium 或以上的 cpu,16mb 或更多 ram、 20m 以上空闲的硬盘空间、win98、nt、win2000、winxp 等操作系统。掌握 这一软件的使用对于使用 51 系列单片机的爱好者来说是十分必要的,如果你使 用 c 语言编程,那么 keil 几乎就是你的不二之选(目前在国内你只能买到该软 件、而你买的仿真机也很可能只支持该软件)即使不使用 c 语言而仅用汇编语言 编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。keil c51 是美国 kei

25、l software 公司出品的 51 系列兼容单片机 c 语言软件开 发系统,与汇编相比,c 语言在功能上、结构性、可读性、可维护性上有明显的 优势,因而易学易用。用过汇编语言后再使用 c 来开发,体会更加深刻。c51 工具包的整体结构,其中vision 与 ishell 分别是 c51 for windows 和for dos 的集成开发环境(ide),可以完成编辑、编译、连接、调试、仿真等整个 开发流程。开发人员可用 ide 本身或其它编辑器编辑 c 或汇编源文件。然后分 别由 c51 及 a51 编译器编译生成目标文件(.obj)。目标文件可由 lib51 创建生 成库文件,也可以与库

26、文件一起经 l51 连接定位生成绝对目标文件(.abs)。abs 文件由 oh51 转换成标准的 hex 文件,以供调试器 dscope51 或 tscope51 使用进 行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如 eprom 中,使用流程如下:1、2、保存;3、 “确定”;4、3、启动 keil c 软件:双击桌面上的图标;新建工程:projectnew uvision project.输入工程名字,不加后缀,选择单片机型号:左侧选项卡中的“atmel” “at89c52”,然后点击新建文件: file new, 输入程序内容,保存*.c;添加文件到工程

27、:左侧 project workspacetarget 1source group 1鼠标右键点击 source group 1 选择选项卡中 add files to group source group 1;6、6、6、编译:projectrebuild all target files;hex 文件的输出:projectoptions for target target 1 output,将“creat hex files”前面对话框内选择“”,点击“确定”;4.2 程序介绍根据硬件设计电路图的要求相应的软件主程序流程图如图 4-1 所示。当检测 到自动按键按下之后自动进入洗衣的四个过程

28、进水、洗涤、排水、脱水,当检测 到洗涤按钮,排水按钮,脱水按钮被按下后立即进入中断子程序执行相应的操作, 如图 4-2 所示。开始初始化按键扫描n自动键是y洗衣过程ny是否 3 次结束 图 4-1 主程序流程图中断入口中断保护按键扫描赋予键值松手检测洗衣机控制系统程序如下: #include#define uchar unsigned char#define uint unsigned int#define true 1#define false 0sbit auto_led=p04;sbit wash_led=p05;sbit drain_led=p06;sbit dewater_led=p

29、07;sbit auto_key=p10;sbit wash_key=p11;sbit drain_key=p12;sbit dewater_key=p13;sbit inflow_relay=p20;sbit dewater_relay=p21;sbit wash_relay=p22;sbit drain_relay=p23;sbit high_water=p24;sbit low_water=p25;void delay(uint xms);void auto_function();中断返回图 4-2 中断处理流程图/自动按键指示灯/洗涤手动指示灯/排水手动指示灯/脱水手动指示灯 /自动按

30、键/洗涤手动按键/排水手动按键/脱水手动按键/进水电磁阀/脱水继电器/洗涤继电器/排水电磁阀/高水位/低水位/延时子函数声明/自动子函数声明void inflow_function(bit inflow);void wash_function(bit wash);void drain_function(bit drain);void dewater_function(bit dewater);/进水子函数声明/洗涤子函数声明/排水子函数声明/脱水子函数声明bit inflow,wash,drain,dewater,autok; /进水,洗涤,排水,脱水,自动全局变量bit wash_key_v

31、alue,drain_key_value,dewater_key_value;/洗涤键值,排水键值,脱 水键值全局变量uchar i,key; /洗衣四个过程循环次数以及洗涤,排 水,脱水手动按键识别全局变量void main()ea=1;/初始化ex0=1;it0=1;inflow=false;wash=false;drain=false;dewater=false;autok=false;wash_key_value=1;drain_key_value=1;dewater_key_value=1;while(1)if(autok) /如果自动按键被按下,自动变量置 trueautok=fa

32、lse;/自动变量软件复位for(i=0;i3;i+)inflow_function(inflow);wash_function(wash);if(key=1)wash=false ;drain=false;break;drain_function(drain);if(key=2)drain=false ;dewater=false;break;dewater_function(dewater);if(key=3)dewater=false;break;inflow=false;/洗衣过程 for 循环/洗涤手动按键执行一次退出/排水手动按键执行一次退出/脱水手动按键执行一次退出/洗衣循环结束

33、后软件复位p0=0xff;key=0;elseauto_function();/判断自动按键是否被按下/* 名称:检测自动按键子函数功能:检测自动按键是否按下,若按下则相应指示灯点亮,自动标志位,进水标志位置 true*/void auto_function()uchar temp;auto_key=1;temp=auto_key;if(temp=0)delay(10); /按键去抖 temp=auto_key;if(temp=0)auto_led=0;autok=true;/点亮自动按键指示灯/自动按键变量置 trueinflow=true;while(temp=0)temp=auto_ke

34、y;/进水变量置 true/松手检测/* 名称:进水子函数功能:点亮相应指示灯,将洗涤标志位置 true,进水标志位置 false 启动进水电磁阀直至到达高水位关闭电磁阀。*/void inflow_function(bit inflow)bit high_water_value;if(inflow)p0=0xe1; /点亮进水指示灯inflow_relay=0;high_water=1;high_water_value=high_water;while(high_water_value)high_water=1;/打开进水电磁阀/判断是否达到高水位high_water_value=high_

35、water;inflow_relay=1;inflow=false;wash=true;/达到高水位关闭进水电磁阀 /进水变量软件复位/洗涤变量置 true/* 名称:洗涤子函数功能:点亮相应指示灯,将排水标志位置 true洗涤标志位置 false 启动电机正反转开始洗涤*/void wash_function(bit wash)uchar m ;if(wash)wash=false;p0=0xe2;if(key=1)关闭自动模式指示灯 auto_led=1;wash_led=0;dewater_relay=0;/洗涤变量软件复位/洗涤指示灯点亮/若是手动模式则点亮手动洗涤指示灯/打开洗涤开关

36、 1for(m=0;m0;k-)for(j=112;j0;j-);/* 名称;手动模式中断服务子函数功能:洗涤,排水,脱水三个过程的手动模式识别*/void int0()interrupt 0ex0=0; /暂时关闭中断,消除抖动delay(10);wash_key=1;wash_key_value=wash_key;drain_key=1;drain_key_value=drain_key;dewater_key=1;dewater_key_value=dewater_key;if(wash_key_value=0)key=1;else if(drain_key_value=0)/判断是否是

37、误操作/若是洗涤键按下,key 值为 1key=2; /若是排水键按下,key 值为 2 else if(dewater_key_value=0)key=3;elsekey=0;switch(key)case 0:break;/若是脱水键按下,key 值为 3/若是误操作,key 值为 0case 1:autok=true;wash=true;break;case 2:autok=true;drain=true;break;case 3:autok=true;dewater=true;break;while(wash_key_value=0|drain_key_value=0|dewater_

38、key_value=0)wash_key=1; /松手检测 wash_key_value=wash_key;drain_key=1;drain_key_value=drain_key;dewater_key=1;dewater_key_value=dewater_key;delay(10);ex0=1;/松手去抖/重新打开中断开关5 系统仿真5.1 系统仿真在单片机最小系统以及外围控制电路都设计完成之后,通过网络标号来将各 个电路模块通过单片机连接到一起就完成了整个洗衣机控制系统的硬件电路设 计如图 5-1 所示。图 5-1 洗衣机控制系统总电路5.2 问题及解决在洗衣机控制系统的设计过程中我

39、遇到的问题主要来自于两个方面,一方面 来自硬件的设计,硬件参数的确定等另一方面来自软件,主要是对于各个子函数 连接成主函数的过程中所产生的冲突和问题。硬件方面,其一是进水和排水电磁 阀无法仿真的问题,所以就用了继电器和电机进行替代,以及洗涤过程电机正反 转时电机的选用问题,到底是用交流电机还是直流电机,当然实际情况下使用的 主要是交流电机,但是仿真时无法找到交流电机,并且出于简化考虑所以采用了 直流电机,用程序软件的方法来实现电机的正反转;其二,是硬件参数的确定, 由于设计的是一个应用系统,所以必须具备一定的实用性才可以,所以我在仿真 的过程中使用了探针来更好的确定元器件的参数。软件方面,其一是洗衣机进水、 洗涤、排水、脱水四个过程和自动,手动两种模式的切换和选择这些子函数的设 计问题,其二是设计完成子函数之后,如何成功的连接起来各个子函数组成一个 大的函数,其间出现了很多的矛盾和冲突,然后我采用分块化的方法来调试各个 子函数以及分析连接过程中可能的逻辑错误来不断的调试,最终终于调试成功, 仿真成功,完成设计要求

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论