基于单片机的洗衣机洁净度检测系统设计与实现.doc_第1页
基于单片机的洗衣机洁净度检测系统设计与实现.doc_第2页
基于单片机的洗衣机洁净度检测系统设计与实现.doc_第3页
基于单片机的洗衣机洁净度检测系统设计与实现.doc_第4页
基于单片机的洗衣机洁净度检测系统设计与实现.doc_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

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

文档简介

基于单片机的洗衣机洁净度检测系统设计与实现本 科 毕 业 设 计题目名称:基于单片机的洗衣机洁净度检测系统设计与实现 目 录题目I摘要及关键词I1绪 论11.1课题研究的背景和意义11.1.1各国洗衣机的发展历程11.1.2我国洗衣机的发展历程11.1.3洗衣机发展现状和趋势21.1.4新型洗衣机控制技术31.2课题的意义31.3设计内容32系统硬件设计42.1方案选择42.1.1 PLC控制方案42.1.2 PIC系列单片机方案42.1.3 51系列单片机方案42.2系统总体结构设计52.3模块电路设计与元件选择62.3.1电源设计62.3.2主控芯片AT89C5262.3.3 LED灯显示与74HC573锁存器72.3.4七段数码管显示82.3.5浊度检测模块设计92.3.6电机控制112.3.7水阀132.3.8水位传感器143系统软件设计153.1系统主程序153.2计算时间子程序153.4显示时间子程序183.5浊度数据AD转换及漂洗控制子程序183.6键盘扫描子程序193.7键盘服务子程序203.8工作模式设定程序213.8.1“厚物洗涤”与“薄物洗涤”子程序223.8.2“漂洗”子程序233.8.3“脱水”子程序253.9系统动作服务程序254系统调试与分析265结论与总结27参考文献28致 谢29附录一 系统电路图30附录二 源程序31III基于单片机的洗衣机洁净度检测系统设计与实现摘要:洗衣机是我们生活中必不可少的家用电器,全自动洗衣机更是受到千家万户的青睐。本文根据全自动洗衣机的各种功能要求,利用对比的方案,选用AT89C52单片机作为控制部分的核心,来实现以洗衣方便、快捷、干净为基础的设计理念。 本文对全自动洗衣机的各个模块与其相对应的功能有明确的解释与说明。与生活中常见的洗衣机大体相同,我们可以通过键盘来实现自己洗衣的各种需求。同时附加传感器来实现对洗衣过程中水位、水的混浊程度的参数检测,反映给单片机,单片机自主利用八个字程序实施处理,进而决定洗涤时间与漂洗次数等。 关键词:洗衣机 单片机 浊度检测Abstract: The washing machine is essential to our lives appliances , automatic washing machines but also by thousands of families of all ages. Based on the functional requirements of the various automatic washing machine , using comparison program , use AT89C52 microcontroller as the core control part to achieve a laundry convenient, fast , clean -based design.In this paper, automatic washing machine for each module and its corresponding functions with clear explanations and instructions. Common washing machine and living much the same , we can achieve through the keyboard to the various needs of their own laundry . While additional sensors to achieve the laundry process water , water turbidity parameter detection , reflected to the microcontroller, the microcontroller to implement self- handling procedures use four words , and then decided to wash and rinse times and other times .Keywords : washing machine SCM turbidity testingI1绪 论 1.1课题研究的背景和意义首先洗衣机是我们日常生活中最常见和最常用的一种家用电器。随着社会的发展与进步,人们的生活节奏也随之加快,这也就意味着人们的工作负荷大大增加,因此我们通常用的半自动洗衣机的无形中就不再被大家接受。其次传统的半自动洗衣机不但很费人力而且很浪费资源,在洗涤效果上也不被大家所认同。在目前的社会背景下,健康、科学、节能才是人们的需求。因此全自动洗衣机这款高科技产品必将是人们在洗涤方面的理性选择。随着当前地球上各种不可再生资源的迅速减少,我们生活中的各种能源需求却不断增加,这两者之间产生了一种巨大矛盾。为了人类的可持续发展,节能减排、绿色环保、人与大自然和谐共处成为了二十一世纪的目标。洗衣机作为家电中很重要的一员,也就必须向着这一目标发展。1.1.1各国洗衣机的发展历程洗衣机的诞生至今已有一个半世纪之久。1858年,美国人汉密尔顿斯密斯在匹兹堡制造出人类的第一台洗衣机。该洗衣机由三个部分组成:圆筒、桨状叶子的直轴、曲柄。通过人为转动连接桨状叶子的直轴的曲柄,让衣物在圆筒中进行洗涤。由于此种做法过于费力,并且对衣物的损伤程度较大,于是并没有得到广泛应用,但是它代表着人类对“手洗时代”展开挑战的第一步。随着蒸汽时代技术的成熟与应用,1880年美国人生产出一款蒸汽洗衣机。它通过蒸气机的推动取代了人力。与先前人力洗衣机相比,当时的蒸汽洗衣机取得了巨大的飞跃。同时人们还采用了智能水循环系统,也就是洗衣机行业著名的“蒸汽洗”方式。随后又相继出现了水力洗衣机、内燃机洗衣机等。但是工作原理大致相同,基本上都属于拖动式,区别仅仅存在于动力方面的借助。自然而然,电气时代的到来肯定会触动不少喜欢动脑人的灵感。1910年美国人费希尔于美国芝加哥成功地制造出世界上第一台电动洗衣机。它的诞生标志着人类家务劳动自动化的开端。1992年玛塔依格公司对洗衣机的结构进行了一系列的改造,把先前的拖动式改变为搅拌式,完成了洗衣机的定格,第一台搅拌式洗衣机也就此诞生。这种洗衣机在圆筒中心设有一个由电机带动的立轴,下方设有搅拌翼。随着电机带动立轴的转动,搅拌翼正反摆动,使得衣物与水流持续翻滚,相互摩擦,达到对衣物的洗涤作用。因为它的科学合理性,所以它的问世受到了大家的欢迎。1932年,美国德克斯航空公司成功研制出一款将洗涤、漂洗、脱水集中于同一滚筒内完成的前装式滚筒洗衣机,标志着电动洗衣机的又一次巨大飞跃,向着自动化的方向再次迈出巨大的一步。1955年,日本人在英国喷流式洗衣机的基础上研究出了一款至今仍在使用的波轮式洗衣机。波轮式洗衣机的底部装有波轮,再点击的带动下波轮正反向旋转,压在波轮上的衣物也就随之翻转,水流同时也会使得衣物翻转,进而达到对衣物的洗涤。此时,洗衣机生产领域内的三种方式得以定性:波轮式、滚筒式、搅拌式。1.1.2我国洗衣机的发展历程相对欧美和日本等国家而言,我国的洗衣机发展相对较晚。随着改革开放的脚步,我国的洗衣机工业开始起步,大概可归纳为三个阶段。第一阶段始于上世纪八十年代中后期,这个阶段我们国家全靠引进一些先进国家的技术与设备,最典型的就是对日本的波轮洗衣机的引进。对先进技术与设备的引进迅速打破了我国在洗衣机行业的空白。对日本的波轮洗衣机的引进也奠定了中国今后在洗衣机研发方面的目标。第二阶段始于上世纪九十年代初中期,随着生产技术的提高,设备的完善,我国洗衣机生产行业处于飞速发展的阶段。我们拥有了不少自己的知识产权,打破了完全引进制造的困境,无论是从成本降低或是自主品牌的创建方面都取得了巨大的进步,国产品牌也慢慢取代了外国品牌在中国市场的位置。之后的时间也就是第三阶段,随着改革开放的深入,招商引资为我国的洗衣机行业再次注入新的血液。原本在我国市场渐渐淡出的国外品牌再次登录。主要的是生产滚筒洗衣机的欧洲企业1。生产商的剧增,自然伴随着同行业的竞争。目前,我国的洗衣机生产研发已经进入成熟阶段,各种性质的企业遍布全国各地,我国也成为世界上洗衣机的消费大国和生产大国2。我国每年的洗衣机生产量目前是世界第一。这不仅仅满足了我们自身的需求,同时出口到世界各地,这代表着我国已处于国际同行业的竞争行列。1.1.3洗衣机发展现状和趋势洗衣机的诞生让我们告别了“手洗时代”,随着科技的不断进步,洗衣机也由最初的半自动洗衣机转化到了如今的全自动洗衣机。现在我们所使用的洗衣机绝大部分都采用了微处理器控制,它通过对洗衣机核心电机驱动的控制,让洗衣机的功能得到了更大的提升。生产商们通过微处理器的程序设定,实现洗衣机各个模块的多样化,同时还能满足对各种材质、不同污浊程度的衣物进行洗涤。并且在使用操作过程中简单明了。还有就是,通过对洗衣机自身结构与电机驱动之间的巧妙配合,使得洗衣机内部的水流得到了很好的控制,让我们的洗涤效果更加明显。小天鹅公司推出的“水魔方”技术就是其中的一个例子。时代在不停更迭,人们对洗衣机的要求也不尽相同,因此洗衣机的也有自己的发展方向。高度智能化。随着社会形势的发展,一键进水,洗涤,漂洗,出水,甩干,自主识别衣物材质、污浊程度,自主控制水流状态等一系列已达不到人们的需求。健康、低碳环保、节能减排成为了洗衣机未来的发展趋势。而这一切都取决于微处理器和传感器,因为洗衣机智能化技术有赖于微处理器和传感器的发展3。BACK1.2课题的意义 本次毕业设计之所以会选择利用单片机完成“全自动洗衣机控制系统的设计”,取决于自己的专业,大学四年来我们与单片机的接触最多。日常生活中的全自动洗衣机都是一个固定的模式,开始以后按照一个固定的程序洗涤,很多情况下会造成不必要的水电浪费。但是如果能够根据衣物的污浊程度来进行洗涤,那么就能减少很多不必要的浪费。本次设计利用浊度传感器对洗涤过程中水的污浊程度进行检测对比,确定最合适的洗涤时间与次数,实现最佳,最节约的洗涤方案。浊度检测也是本文的亮点。1.3设计内容本文以AT89C52单片机为控制核心,包括按键模块:根据衣物厚度选择薄或厚的洗涤方式,开始,暂停,机盖开关控制等;报警模块:洗涤完成或者中途打开机盖后有提示效果;显示模块:记录每个过程的时间;进出水模块;复位模块;电机模块;浊度传感器模块:采集水的浑浊度进行比对,决定洗涤次数。通过C语言编程实现各个模块的功能,结合Keil软件实现Protues仿真。2总体方案设计2.1方案比较2.1.1 PLC设计人机界面 控制系统 PLC 电机转动系统检测系统 图2.1 PLC控制系统组成PLC控制系统可分为 4个部分:人机界面、电气控制系统、电机转动系统、检测系统。以电气控制系统为核心,人们可以通过人机界面选择需求,实现对洗衣机的控制,电机部分是洗衣机的动力来源,可通过对PLC编程实现对其控制,检测系统最主要是传感器部分(水位传感器 浊度传感器),检测采集数据,还有报警系统模块。2.1.2 AT89C52单片机设计利用AT89C52单片机作为核心系统,包括按键输入、机盖开关、水位传感器、浊度传感器、倒计时显示、报警系统、进水排水系统等几个模块组成。通过单片机编程,实现各个部分的有序运行。倒计时显示 AT89C52按键输入LED显示机盖开关 进/出水阀水位传感器报警系统浊度检测AD转换电机驱动 图2.2 AT89C52控制系统组成2.2方案论证与选择PLC可编程控制器功能十分强大,它拥有足够多的编程元件,同时具有很强的抗干扰能力,适用性强,操作简单。按理说用来作为全自动洗衣机的控制系统会非常合适,但是其价格昂贵,远远超出人们心中的期望值,对于一般的家用电器都不会采用,通常应用于工业领域。考虑到成本问题,我们不予以选择。 AT89C52单片机功耗低,体积小巧,携带方便,价格低廉,同时应用广泛,技术成熟。对于像全自动洗衣机这样的控制系统,电路设计简单明了,实用价值极高。 因此,本次设计采用以 AT89C52单片机为核心的控制系统,完成全自动洗衣机的功能设计。 3. 单元模块设计3.1各单元模块功能介绍及电路设计3.1.1 电源模块设计 电源模块是所有电气设备的物质基础,是整个系统得以正常运行的动力部分。通常需要我们设计一个直流稳压电源模块,直流稳压电源一般情况下包括整流桥、滤波电路和稳压电路几个部分。 图3.1 双路直流稳压电源模块本次设计电源模块设计采用双路直流稳压电源,首先将常用的220V电压降压为15V,然后经过整流桥、滤波电路、稳压电路分别得到12V和5V电压,作为电磁阀驱动电源和电路工作电源。原理图如图2.1所示。3.1.2 LED显示模块设计 本次设计中LED的状态有6种:薄物洗涤、厚物洗涤、漂洗、甩干、暂停、停止和报警,也代表着真个过程中的运行顺序。他们通过与锁存器相连接,有单片机的P1口进行控制。原理图如图2.2所示。 图3.2 LED显示模块原理图3.1.3倒计时显示模块设计 图3.3 LM016L液晶倒计时显示模块本次设计采用AT89C52单片机驱动LM016L液晶,其工作原理图如图2.3所示。LM016L是字符液晶显示器,分两行进行显示,每行能够显示16个字符。两行字符的地址分别为:80H-8FH与C0H-CFFH。2500Hz是它的工作频率。元件引脚功能说明:(1) D0-D7为数据端;(2) RS=0表示对指令寄存器的选择,RS=1表示对数据寄存器的选择;(3) RW=0代表进行写的操作,RW=1代表进行读的操作。3.1.4 浊度传感器模块的设计 浊度传感器是对水的透明度进行检测,一般情况应用在洗衣机的排水管道附近,如图3.4所示。 图3.4 浊度传感器的工作示意图 本次设计采用TS浊度传感器对排水口水的透明度进行检测,然后通过ADC0804进行数模转换得到相关数据,然后后反映给单片机,从而确定合理的洗涤时间,其工作原理图如图3.5所示,衣物浊度与洗涤参考时间的关系如表3-1所示。B图3.5浊度传感器的工作示意图 表3-1 洗涤水浊度与洗涤参考时间的关系情况浊度值A(A/D值/十进制)洗涤时间(分钟)1A 556255 A 948394 A 126104126 A 152125152 A 173146173 A 191167191 20820表表表3.1.5 水阀模块设计 本次设计中对于水阀的动作采用电磁阀来进行控制,然后用通过HRS2H-S电磁继电器耦合对该大功率的电磁阀进行控制,由于有进水和排水两个过程,所以需要两个电磁阀。在进水和排水即将开始时,单片机便会发出相应的指令,使得继电器触点进行吸合动作,进而接通水阀的电磁铁,带动阀门完成相应的动作。由于是进行仿真,本次设计特意增加了两个发光二极管使得效果更加明显,水阀对应电路图如3.6所示。 图3.6 水阀控制电路3.1.6 电机驱动模块的设计3.1.7单片机最小系统模块设计 单片机最小系统包括三个部分:单片机、晶振电路、复位电路。晶振电路:单片机内部有一个用于构成振荡器的高增益反向放大器,单片机的引脚XTAL1与XTAL2分别为这个高增益反向放大器的输入端和输出端。XTAL1与XTAL2跨接石英振荡器(晶振)和两个磁片电容,构成了一个稳定的自激振荡器,也就是晶振电路。晶振的震荡频率的范围通常处于1.2MHz-12MHz之间。复位电路:复位是单片机的初始化操作,只需要给单片机的复位引脚RST加上大于2个机器周期(24个时钟振荡周期)的高电平就可以使单片机复位。复位时,PC初始化为0000H,使单片机从0000H单元开始执行程序。正常情况下复位引脚与复位电路之间通过一个施密特触发器相连接,目的是为了抑制噪声。本次设计的最小系统电路图如3.7图所示。 图3.8 单片机最小系统3.2 特殊器件的介绍3.2.1 AT89C52AT89C52是日常应用较为广泛的一种8位CMOS单片机,它电压低、性能高。其主要功能如表3-2所示,其封装引脚排列如图3.9所示。 表3-2 AT89C52的主要功能兼容MCS51指令系统8K可反复擦写Flash ROM32个双向I/O口256x8bit内部RAM3个16位可编程定时/计数器中断时钟频率0-24MHz2个串行中断可编程UART串行通道2个外部中断源共6个中断源2个读写中断口线3级加密位低功耗空闲和掉电模式软件设置睡眠和唤醒功能 图3.9 AT89C52封装与引脚排列AT89C52单片机的40个引脚基本上可以按照功能分为3类: (1)Vcc、Vss;XTAL1、XTAL2被归纳为:电源及时钟引脚。 (2)PSEN、ALE、EA、RESET被归纳为:控制引脚。 (3)P1、P2、P3、P4被归纳为:I/O口的外部引脚。这3类中各个引脚的具体功能如表3-3所示。 表3-3 AT89C52各个引脚的功能电源及时钟引脚 功能Vcc(40)单片机的工作电源,接+5V电源Vss(20)接地XTAL1(19) XTAL2(18)通常情况下用于单片机最小系统中,晶振电路的构成,分别连接晶振的两端控制引脚RST(9)连接单片机最小系统部分外围的复位电路,通过按键操作,高电平有效ALE(30)单片机上电正常工作情况下,连续输出正脉冲信号;单片机访问外部存储器情况下,用于单片机发出的低8位地址的锁存PSEN(29)单片机访问外部存储器情况下,发出信号作为读取的选通信号,能够驱动8个LS型TTL负载EA内外部程序存储器选择控制端。在高电平的情况下,单片机对片内程序存储器进行访问;相反在低电平情况下,单片机则会对片外程序存储器进行访问I/O口引脚P0口双向8位三态I/O口,它是地址总线的低8位及数据总线进行分时的复用口,它能够驱动8个LS型的TTL负载P1口8位准双向I/O口,能够驱动4个LS型的TTL负载P2口8位准双向I/O口,与地址总线的高8位复用,能够驱动4个LS型的TTL负载P3口8位准双向I/O口,它是一个双功能复用口,能够驱动4个LS型的TTL负载在I/O口中存在准双向口和双向三态口,这两者之间是有差别的,需要特别注意。两者的区别最主要体现在片内有无固定上拉电阻,P1、P2、P3这3个8位准双向I/O口在片内均有固定的上拉电阻,而P0口片内没有固定上拉电阻。再者,准双向口在作为输入口应用时,必须先向这个口进行写1,另外它不存在高阻的“浮空”状态。而P0口是通过两个MOS管串接的,它不仅能开漏输出,还能处于高阻“浮空”状态,这也是之所以把它称为双向三态I/O 口的原因。AT89C52的特点:AT89C52单片机功耗低,体积小巧,携带方便,价格低廉,同时应用广泛,技术成熟,性价比极强。这也是本次设计选择它的最重要原因。3.2.2浊度传感器3.2.3 ADC08043.2.4 继电器 表2-1 AT89C52主要功能Table 2-1 the main function of AT89C52兼容MCS51指令系统8K可反复擦写Flash ROM32个双向I/O口256x8bit内部RAM3个16位可编程定时/计数器中断时钟频率0-24MHz2个串行中断可编程UART串行通道2个外部中断源共6个中断源2个读写中断口线3级加密位低功耗空闲和掉电模式软件设置睡眠和唤醒功能图2.4 AT89C52引脚排列与引脚功能Fig.2.4 the AT89C52 pin and pin function2.3.3 LED灯显示与74HC573锁存器节能洗衣机系统有六个基本的状态,分别是厚物洗涤,薄物洗涤,漂洗,脱水,暂停,停止和报警。本系统用六个发光二极管作为状态指示灯,使用共阳极接法,由单片机P1口通过一个锁存器来控制它们的亮灭。LED灯的电路接法如图2.5所示。图2.5 LED状态指示灯Fig.2.5 LED status indicator锁存器(Latch)是一种对脉冲电平敏感的存储单元电路,它们可以在特定输入脉冲电平作用下改变状态。典型的锁存器逻辑电路是 D 触发器电路13。本设计使用的74HC573锁存器的真值表如表2-2所示。表2-2 锁存器的真值表Tab Table 2-2 latch truth table输出使能(/OE)锁存使能(LE)输入端(D)输出端(Q)LHHHLHLLLLXQ0HXXZ74HC573的八个锁存器都是透明的D型锁存器,当使能引脚LE为高电平时,Q输出将随数据D输入而变化;反之,锁存器进入锁存状态,D将保持原有信号的输出而不受输入信号变化的影响14。锁存器的引脚功能与封装如图2.6所示。在在本课题的应用中,单片机P0口和P1口的八路 I/O 口上分别需要外接锁存器,这是为了实现数据和地址在I/O口上的复用。2.3.4七段数码管显示图2.6锁存器的引脚及其功能Fig. 2.6 lock pin and function registerLED(Light Emiting Diode)是发光二极管英文名称的缩写。常用的LED有共阳极和共阴极2种。共阴极LED显示器的发光二极管的阴极连在一起,通常此公共阴极接地15。本次设计是用于显示时间,采用共阴极LED显示就可以有较好的显示效果。在多位LED显示时,通常将所有位的段码线相应段并联在一起,由1个8位I/O口控制,形成段码线的多路复用,而各位的共阴极或共阳极分别由相应的地址线控制,形成各位的分时选通16。七段数码管电路如图2.7所示。图2.7 七段数码管显示Fig. 2.7 seven digital tube display2.3.5浊度检测模块设计TS浊度传感器是GE公司开发的一种专门用于家电产品的低成本传感器,主要用于洗衣机、洗碗机等产品的水污浊程度的测量,其内部结构原理图如图2.8所示。此种浊度传感器体积小,兼容TTL电平,使用方便17,故本次设计采用TS浊度传感器。图2.8 TS浊度传感器结构原理图Fig. 2.8 TS turbidity sensor principle structure diagram浊度传感器的工作原理是:当光线穿过一定量的水时,光线的透过量取决于该水的污浊程度:水越污浊,透过的光就越少。光接收端把透过的光强度转换为对应的电压大小。通过测量接收端的电压,就可以计算出水的污浊程度。洗涤水的透光度与洗涤时间t的关系曲线如图2.9所示。(a)图为洗涤全过程的浊度变化(a) diagram for turbidity change the whole process of washing (b)图为轻污和重污的透光度比较(b) diagram for light pollution and heavy pollution of the transmittance comparison图2.9洗涤水的透光度与洗涤时间t的关系曲线Fig. 2.9 Relation curves of washing water transmittance and washing time t在节能洗衣机系统中,浊度传感器安装在洗衣机的排水管口附近,如图2.10所示,在洗衣机开始排水时启动数据采集进行水质检测,并将检测结果送单片机。浊度值是由TS浊度传感器测得浊度数据,送ADC0804进行模数转换后所得的数值。实际应用中,应根据不同容量的洗衣机进行实验来确定更准确的浊度值与对应的洗涤时间。表2-3表明衣物浊度与洗涤参考时间的关系。图2.10 浊度传感器的工作示意图Fig. 2.10 schematic diagram of turbidity sensor work表2-3 洗涤水浊度与洗涤参考时间的关系Table 2-3 relationship between washing water turbidity and washing time reference 序号污浊程度A(十进制A/D值)洗涤时间(min)1A 556255 A 948394 A 126104126 A 152125152 A 173146173 A 191167191 20820ADC0804是用CMOS集成工艺制成的逐次比较型摸数转换芯片。该芯片内有输出数据锁存器,当与控制器连接时,无须附加逻辑接口电路。逐次比较型AD由一个比较器和DA转换器通过逐次比较逻辑构成,从MSB开始,顺序地对每一位将输入电压与内置DA转换器输出进行比较,经多次比较而输出数字值。其优点是速度高、功耗低。ADC0804引脚如图2.11所示。在本系统中,浊度信号转换为0V5V电压信号,浊度传感器连接ADC0804的输入接口进行采样处理,然后将电压信号转换为8位数值0x000xff送入单片机P1口。TS浊度传感器及其数据AD采样电路如图2.12所示。2.3.6电机控制 BACK图2.11 ADC0804引脚功能Fig.2.11 the ADC0804 pin function图2.12 TS浊度传感器及其数据AD采样电路 Fig.2.12 TS turbidity sensor and AD data sampling circuit本设计采用家用洗衣机常用的单相交流电机,这种电机有两个绕组:主绕组和副绕组,两个绕组在空间上相差90度。在启动绕组上串联一个容量较大的启动电容,由于电容器作用使启动绕组中的电流在时间上比运行绕组超前90度角,先到达最大值。在时间和空间上形成两个相同的脉冲磁场,使定子与转子之间产生一个旋转磁场,电机转子中产生感应电流,与旋转磁场互相作用产生电磁场转矩,使电机旋转起来。普通单相电机这两个绕组完全一样,互相可以交换。要使电机反转,只要交换两个绕组中的一个绕组的首尾接线就可反转。电机的调速是通过一个串接线圈实现。单相交流电机的正反转控制原理如图2.13所示。在本设计中,采用两只HJR1-2C电磁继电器控制电机正反转,一只HRS2H-S电磁继电器控制电机的旁路绕阻以实现脱水时电机的高转速工作。电机控制部分的电路原理图如图2.14所示。图2.13 单相交流电机的正反转控制Fig.2.13 single-phase AC motor positive inversion control图2.14 电机控制部分Fig. 2.14 motor control part2.3.7水阀水阀的动作采用电磁阀控制,使用两只HRS2H-S电磁继电器耦合来控制两个大功率电磁阀。进水或排水时,由单片机发出指令,使继电器触点吸合,接通水阀的电磁铁,带动阀门执行进水或排水操作。水阀电路如图2.15所示。图2.15 水阀控制电路Fig. 2.15 the water valve control circuit2.3.8水位传感器水位传感器采用吸簧式浮子传感器,它本身输出的就是数字信号。当水位有变化时,浮子随着水位上下浮动,内置磁石使对应高度的簧片吸合,触点导通;浮子离开时,当前触点断开,到下一个触点吸合。单片机扫描触点变化信号就可判断当前洗衣桶内的水位。水位传感器结构示意图如图2.16所示。 图2.16 水位传感器结构示意图 Fig. 2.16 schematic diagram of water level sensor structure2.3.9电磁继电器本电路系统是低压控制高压类型的程控电子线路,由芯片输出的逻辑电平+5V来控制交流220V的负载电机。当继电器线圈两端有电流时,线圈产生的磁通使衔铁吸向铁芯极面,从而推动常闭触点断开,常开触点闭合;当线圈两端电流小于一定值时,机械反力大于电磁吸力,衔铁回到初始状态,常开触点断开,常闭触点接通。继电器原理图如图2.17所示。 图2.18 继电器原理图Fig. 2.18 schematic diagram of relay3系统软件设计3.1系统主程序根据硬件设计要求,控制主程序流程如图3.1所示。洗衣机通电后,单片机上电进行程序的初始化操作,默认洗衣机工作模式为“厚物洗涤”,并显示此工作模式下的预设时间,然后扫描键盘,等待用户命令。当按下“开始”键后,系统就开始倒计时,并进入相应的工作模式程序开始洗涤.B主程序设定采用死循环的工作模式,在系统初始化后就一直按次序反复执行各个功能模块的子程序,检查各标志位的状态。这样即使系统长时间地处在暂停或停止状态下,依然能够及时响应用户的操作,快速恢复到正常的工作状态中,有效避免程序跑飞使控制器死机的情况。3.2计算时间子程序计时子程序用定时器0工作在方式0进行定时,每隔50ms产生一次中断,计数变量计满20次则为1秒,每一秒都让秒值自减1,从而实现较精确的1秒倒计时。分钟值则以秒值的变化情况作为条件作出相应的计算。走时结束后程序会关停定时器,以避免干扰和其他不可预知的情况出现。在分钟变量与秒钟变量被重新赋初值后,程序会根据系统当前工作模式来决定是否开启定时器。计算时间的程序流程如图3.2所示。 图3.1 主程序流程图Fig.3.1The main program flow 3.3中断程序系统用定时计数器0工作在方式0,每500毫秒溢出产生一次计数中断,用于定时1秒钟的计时服务。中断程序流程如图3.3所示。图3.2 计算时间子程序流程Fig. 3.2 computing time subprogram flowACK主程序流图3.3 中断程序Fig.3.3 interrupt program3.4显示时间子程序显示时间子程序用于洗衣机的倒计时时间显示。当定时器T0启动后,单片机P0口发送时间数据与位选信号,用数码管扫描方式显示时间值。显示时间子程序如图3.4所示。图3.4 显示时间子程序流程Fig.3.4 shows the time subprogram flow3.5浊度数据AD转换及漂洗控制子程序ADC程序主要用于处理来自TS浊度传感器的模拟数据,将浊度信号转换成8位的二进制信号,送单片机处理判断。当本子程序被调用时,会先启动AD转换并读取数据,若转换结果允许显示,则调用显示AD结果的子程序,否则其数据就仅仅用于给单片机判断浊度,这样避免了不必要的显示,提高程序效率。本部分是实现节水目标的核心环节,其程序流程图如图3.5所示。 图3.5 ADC子程序流程图Fig.3.5 the ADC subroutine flow chart3.6键盘扫描子程序本设计采用44矩阵键盘作为系统输入模块,其4根行线和4根列线都由单片机P3口的8个位来控制。按键采用逐行扫描的方式,分别对4行扫描,相应地读取4列的电平变化,再将行与列的值比较,其交点处就是有动作的按键,由此就可计算出相应的键值而判断是哪个按键被按下了。扫描矩阵键盘的程序流程图如图3.6所示。 图3.6 键盘扫描子程序流程Fig. 3.6 keyboard scanning subroutine flow程序中设定了键值有效性的判断,若按键键值无效或程序没检测到按键操作,系统将跳过键盘服务子程序,仅仅对其进行扫描。当有按键被按下时,程序才调用相应的服务子程序。这样节约了程序在非用户操作时的运行时间,减少调用繁杂的子程序所占用的线程,提高MCU运行效率。3.7键盘服务子程序键盘服务子程序是根据按键指令来决定系统工作的服务程序,它仅在键值有效时才被调用执行,这样可充分利用单片机内有限的硬件资源,加快程序的运行速度和减短程序的扫描周期。键盘服务子程序采用多分支判断结构,读入不同的键值来执行相应的程序。每一次扫描仅作一次判断,并设置相应的系统工作模式标志,以此来决定整机的工作状态与下达动作指令。键盘服务子程序流程如图3.7所示。图3.7 键盘服务子程序 Fig. 3.7 keyboard subprogram3.8工作模式设定程序单片机根据键盘和倒计时模块输入的命令来判断系统当前应进入的工作模式。若工作条件满足,此程序就为系统设定相应的工作模式,并修改模式标志,送至动作服务子程序执行操作。系统的七种模式可由倒计时程序或系统传感器的输入信号来自动设置,也可由用户通过按键输入来改变。工作模式设定的程序流程如图3.8所示。图3.8 工作模式设定程序流程Fig. 3.8 work mode setting procedure3.8.1“厚物洗涤”与“薄物洗涤”子程序单片机通过不同的条件来判断执行不同的洗涤方式。当启动键被按下后,洗衣机进水阀通电打开,当供水达到预定水位时,吸簧式水位传感器中对应的水位开关接通,进水阀断电关闭。然后MCU接通洗涤电机的电源,带动波轮旋转即可进行洗涤。厚物模式与薄物模式的洗衣过程基本相同,区别在于二者的水量和洗涤时间的差异。两种洗涤模式的流程如图3.9所示。 图3.9 洗涤程序流程图图3.9 洗涤程序流程图Fig. 3.9 washing procedure flow chart3.8.2“漂洗”子程序漂洗的目的在于清除衣物上的洗涤剂,因此,漂洗过程与洗涤过程的电器动作是相同的,关键在于通过实时浊度检测与漂洗时间决策达到节能洗衣的目的。漂洗程序流程如图3.10所示。图3.10 漂洗程序流程图Fig. 3.10 the rinsing procedure flow chart3.8.3“脱水”子程序漂洗过程结束后,程序转入“脱水”状态。系统使电机停车,打开排水阀门排水。当洗衣机的水位低到一定程度并满足脱水条件时,电机调到正车高速档,带动洗衣桶内的衣物高速旋转进行脱水。排水洗衣机脱水子程序的开启由工作模式标志设定,实现2min电机高速运作。排水程序流程如图3.11所示。图3.11 脱水程序流程图Fig. 3.11 dewatering program flow chart3.9系统动作服务程序系统动作服务子程序管理洗衣机各个工作模块的动作,主要是按照程序指令控制电机的启停与水阀的开闭。控制参数来自键盘和倒计时模块的输入。动作服务子程序流程如图3.12所示。图3.12 系统动作服务程序流程图 Fig. 3.12 the flow chart of the system action service program4系统调试与分析在完成全自动洗衣机控制系统的设计之后,通过Proteus软件和Keil软件来对程序进行调试,并观察现象。(1)系统上电后,会进入默认的“厚物洗涤”模式并等待操作。通过模式选择按键可切换至“薄物洗涤”模式。这时只要按下“开始”键,洗衣机就会按照程序设定开始工作。(2)在选定洗涤模式之后按下开始键,系统开始倒计时,并打开进水阀进水。在预定水位达到后,控制器关闭进水阀,主电机在程序的控制下间歇正反转,带动波轮和洗衣桶转动进行洗涤。(3)洗衣机完成漂洗后进入历时2分钟的脱水模式工作。脱水状态指示灯点亮,排水阀打开,电机在高速档运作。若此时在时间剩余1分钟内水位降至最低,则洗衣机直接跳出脱水程序,完成洗涤,进入停机等待状态。(4)在系统的正常工作中,若有异常情况出现,系统会立刻中断当前工作任务,进入“报警”状态:使电机停车等待,蜂鸣器发出告警音响。当处理异常情况后,按下“开始”键洗衣机就会恢复到原来的工作状态,继续洗涤工作。经过仿真验证,本系统除具备洗衣机基本功能外,也具有智能判断浊度,自主决策漂洗时间,根据水位情况制定洗涤任务等功能,本课题设计基本实现节能洗衣机的预期功能。5结论与总结本课题采用AT89C52单片机对家用洗衣机进行智能控制,设计的控制洗衣机系统充分应用了浊度检测技术,通过硬件设计与软件编程,实现了洗衣机的节能控制,一个按钮就能完成洗衣的全过程,且将洗衣机水耗降至最低。本设计系统的特点有:BACK(1) 由TS浊度传感器和水位传感器检测到衣物的污浊度与洗涤所用水量,既能保证洗净衣物又使洗涤时间缩短,最大限度地提高洗涤效果,节约能源及用水量,达到了本设计设定的节水这一主要目的。(2) 本设计还考虑到半自动时的情况,用户可以根据自己的需求自由选择洗衣机的工作方式与洗涤时间。在洗衣机工作的任一过程中,用户可根据需要随时暂停洗衣机,机盖检测和过载保护能有效保证用户安全与洗衣机稳定工作,延长使用寿命。BACK在本课题的设计过程中,也出现了不少问题。如浊度传感器暂时找不到,找到的虽然精度高质量好,但是价格不菲。经过分析,发现浊度传感器在工作中输出的是0V5V的模拟电压信号,而这个信号可用电位器输出,给设计和实物检验带来极大方便。BACK 本设计仍存在一些不足之处,如洗衣机水位调节只有二级水位变化,在实际应用中可以增加水位调节级别,以便把洗衣机的节能功效发挥到最大;在软件设计方面,本课题的软件设计只考虑了各功能模块都正常运行的情况,而没设计在某个关键器件故障时系统的自检与保护性停机的程序,故在不同的系统中可视具体情况在程序中加入更加全面的故障处理与保护功能以使系统完善。由于时间所限,本设计的硬件模拟只能做出节能洗衣机的几大基本功能,不能做出较完善和较全面的多功能控制系统,也是本设计的遗憾之

温馨提示

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

评论

0/150

提交评论