ImageVerifierCode 换一换
格式:DOCX , 页数:37 ,大小:368.61KB ,
资源ID:17180627      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17180627.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于单片机的洗衣机课程设计Word文档下载推荐.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于单片机的洗衣机课程设计Word文档下载推荐.docx

1、电机一般工作在这三种状态的不断转换之中,从而实现洗涤。但在脱水时,只工作在正转高速状态。进水阀和派排水阀则只有开.关这两种状态。从控制电路中可以看出:AT89C51的P1端口中的P0.0P0.3共四条I/O线通过4块电磁继电器分别直接驱动洗衣机的这些工作部件。电磁继电器是一种常用继电器,内有电磁铁心及磁力开关,通电就可使开关切换。之所以选用这个器件,是因为它一方面可使电路进一部简化,另一方面还可使强.弱两类电完全隔离,保证主板的安全。ULN2003A为7相反相驱动器,用其作为中间反相器,其中的4个反相器可分别驱动4个SP1110继电器,1个驱动蜂鸣器。ULN2003A还有隔离功能,可保护主板。

2、74LS139为双2-4线译码器,选用它可解决CPU I/O线数量的不足。从控制要求可知,洗衣机有4种不同的显示来加以区别。74LSW139双2-4线译码器仅占用CPU的P3.7和P3.6两口线即可提供4种不同显示的驱动, 其逻辑关系是:P3.7,P3.6为“11”时D9亮,指示高水位;为“10”时D8亮,指示中2水位;为“01”时D7亮,指示中1水位;为“00”时D6亮,指示低水位。74LS47为共阳极BCD译码器,可把BCD码译为共阳极七段码。洗衣机的三大功能是现衣物的洗涤,漂洗,脱水,而这三个可形成6种过程(或更多)在本设计中只有到6种,洗衣机的过容安全保护和脱水安全保护及防震动功能采用

3、中断处理方式。这两个中断分别对应于CPU的外部中断“0”和外部中断“1”。中断为下跳沿触发分别对k8和K9进行监测。开盖(安全保护)或不平衡(防振动)中断信号通过K9加到P3.3。本系统对开盖和不平衡中断采取相同的处理方法,因此,共用外部中断“1”。在洗衣机未进入工作状态期间,P1.0为输入线,用于监测启动键的状态,当启动键按下时,洗衣机即进入工作状态。P1.1,P1.3被设为输入键分别用于模式设定和水位设定,接K2和K4,确定后课按K1确认并进入洗衣状态。D6为低水位,D7为中1水位,D8为中2水位,D9为高水位。在洗衣机进水期间,P1.4被用作输入线,用于监测水位开关状态(K5),P1.5

4、用于监测越线水位开关(K6)为CPU提供洗衣机的水位信息;在洗衣机高速脱水期间,当发生开盖和不平衡中断时,P1.2为输入线(盖开关K3),用于撤消中断请求信号。CPU的P0.4线通过ULN2003A用于驱动蜂鸣器发出各种告警信号。P1.6(K7)做输出线用于脱水完成检测。4 5脚外接12Hz的晶振。1脚通过10uF电容接到+5v电源,可实现上电自动复位。洗衣机的洗衣模式可通过K2贱进行循环选择。洗衣机水位可通过K4键循环选择。洗衣机的水位可通过D6D9进行显示。脱水期间系统在响应开盖或不平衡终止后,CPU采取软件查询的方式方式通过P1.2线对盖开关进行监测以确定洗衣机是否继续进行脱水操作。D1

5、为洗涤脱水指示;D2为进水指示;D3为排水指示;D4代表进水阀;D5代表出水阀。D16D20为续流二极管,用于保护电磁阀和蜂鸣器。3.2各个部分软件设计原理说明由AT89C51控制的全自动洗衣机的工作主程序框图如附图2-1所示。从主程序框图可以看出,这个控制程序也较为简单,所以,占用的存储器容量不大。从程序框图中可以看出程序的基本流程,系统上电复位后,首先进行初始话,按K1启动后默认标准洗衣工作程序和低水位,然后扫描K4,K2和启动键K1,这时洗衣机处于待命状态。通过K2,K4可分别修改洗衣工作程序和水位。扫描过程中当发现启动键K1按下时,洗衣机即从待命状态进入工作状态。洗衣机进入工作程序后,

6、系统首先根据RAM中R4单元的特征字判断洗衣机的洗衣工作程序,若特征字为00H则为标准洗衣程序、01H则为轻柔洗衣、02快洗、03单次洗衣、04漂洗、05脱水程序。(水位和模式选择如框图1-1) 洗衣机的三大功能是 实现衣服的洗涤、漂洗和脱水,进入工作状态后跳到所选工作程序,所有工作程序都是对这三大功能的调用和复写只是时间代码和洗涤力度不同,所以完成一次洗衣过程所需的动作为下列过程或其中几种. (1)进水动作 进行洗涤时,盛水桶内的水量必须达到水位设 定要 求。洗衣机的进水和水位 判断,是 由水位开关K5和进水阀的开合来进行控制的。当桶内没有水或水量达不到设定水位时,单片机程序将控制进水阀打开

7、,开始注水;当桶内的水位达到设定水位时,水位开关K5受压闭合,程序就可进入下一步 (洗涤)处理。若水位越线即K6闭合则控制排水阀打开进行排水直到K5打开为止。进入下一过程。(2)排水动作 进入脱水动作前应先排水。为了避免空排水造成时间浪费以及排水不完而带水脱水造成对电机的损害,洗衣机能够根据实际水量 (缸底水位检测开关K7决定)对排水进行动态控制。K7打开则排水完成,关闭排水阀。 (3)洗涤动作 洗涤动作指的是电机周期性的 “正转 一停止 一反转 一停止 “。不 同的洗衣过程 ,控制 电机执行“正转 一停止 一反转 一停止“的时间是不同的,标准洗涤过程可取:正转4秒 一停止2秒 一反转4秒 一

8、停止2秒。对于轻柔洗涤过程,这个时间要作相应调整为正转3秒 一停止2秒 一反转3秒 一停止2秒。 (4)脱水动作 排水结束后进入脱水动作,脱水是通过电机的正转来实现的,同时要求排水阀一直打开,也正是由于排水阀的打开,才使脱水时的电机正转速度不同于洗涤时的电机正转速度(通过机械装置实现)。脱水分短脱水和长脱水,短脱水时间为 2分钟。脱水时电机将一直高速正转,一般5分钟的长脱 时间。进入脱水前若洗衣机桶盖是打开的,则进行呜叫、显示 警。进 行脱水时 若遇洗衣机桶盖打 开或脱水不平衡,则暂停脱水并进行 显 告警,直至用户合上桶盖后或调整衣物后,才继续进行脱水。脱水结束后,进入下一动作。(5)抗干扰设

9、计 在设计中,我们将软件抗干扰的重点放在了C P U抗干扰问题上。在洗衣机洗涤的过程中, 如果干扰强烈, 干扰就很可能通过三总线扰乱 C P U按正常流程执行这些程序。 我们抗干扰的目的就是发现c P u如何受到干扰, 如何拦截失去控制的程序流向, 如何使程序的损失减小, 如何尽可能无扰动地恢复系统正常状态。 这些可以通过以下两个途径实现 指令冗余和软件陷阱。洗衣过程结束后,蜂鸣器将断续呜叫以提醒用户可以取走衣服并关掉洗衣机 的电源。3.3各部分程序框图 总程序流程图:;四、调试与实现4.1功能实现过程(图释)单洗过程短洗过程短脱水过程长脱水过程排水过程4.2 调试出现的问题及解决办法开始由于

10、P0口没有上拉电阻而产生电机不能运转的问题,后经老师指导和查阅相关书籍讨论得以解决。1、 上电后,按启动键K1进入设定部分,可通过K2设定洗衣模式,K4设定水位。设定结束后再按K1键进入相应模式并进水到设定位。2、 洗衣机进水指示灯亮,闭合K7,K5后进入下一步(05单脱无此步)3、 洗衣机脱水-洗涤指示灯闪烁,表明进入洗衣状态。4、 进入排水状态后,排水指示灯亮,打开K7则排水结束进入下一步5、 若没有闭合K3在脱水时则不脱水并警报蜂鸣,直到闭合K2,进入脱水(脱水-洗涤指示灯亮,排水指示灯亮)。6、 K8只在确定设定以前起作用,发出中断请求。按下后会蜂鸣报警提醒用户减少洗衣量7、 K9只在

11、脱水是起作用,当抖动厉害时由于抖动按下筒壁外的K9,发出中断请求,报警知K9放开。五、总结 本文介绍了采用AT89C51单片机对家用洗衣机进行智能控制,经过实际检测,本设计具有结构简单,使用方便,可靠性高等特点。经过本次设计使我对所学单片机知识的得到了深化,能够把知识综合的应用起来而不使像以前一样各个知识点是孤立的不能融会贯通。加强了对实际问题的分析解决能力。在这里我要感谢段老师以及姚超仁,罗春富,朱江和华雪松在设计中给我的帮助。六、参考文献 1. 段晨东 单片机原理及接口技术 2008 清华大学出版社2. 张义和,陈敌北 例说8051 2006 人民邮电出版社3. 张毅刚 单片机应用设计 2

12、002 哈尔滨工业大学出版社4. 李仁 电器控制 2002 机械工业出版七、附录7.1电路原理图进水过程3-5排水过程 短脱水过程 短洗过程7.2程序清单AT89C52RC控制的全自动智能波轮洗衣机程序A_BIT EQU 43H ;存放个位数变量 B_BIT EQU 44H ;存放十位数变量FLAG EQU 45H ;DS18B20是否存在标志DQ EQU P1.3 ;DQ引脚由P2.5控制 ORG 0000H LJMP START ORG 0003H LJMP PINT0 ORG 0013H LJMP PINT1 ORG 001BH LJMP P_T1 ORG 0030HSTART: MOV

13、 SP,#60H MOV IP,#01H ;INTI为高优先级 SETB EA ;CPU允许中断 SETB IT0 ;跳变触发方式 SETB IT1 ;跳变触发方式 MOV TH1,#3CH MOV TL1,#0B0H MOV 40H,#20 ;1S定时 MOV TMOD,#10H SETB EX1 ;允许INT1中断 SETB EX0 ;允许INT0中断 SETB ET1 ;允许定时器T1中断 BACK: JB P1.4,KSSM1 ;P1.4为1即使自动模式,转到扫描键盘 JNB P1.5,TODANXI ;P1.5为0即为选择单洗,转到单洗 JNB P1.6,TOPX ;P1.6为0即为

14、选择漂洗,转到漂洗 JNB P1.7,TOCTS ;P1.7为0即为选择长脱水,转到长脱水 JMP BACK ;没有检测到手动选择的是什么,换回重新检测 ;手动单洗程序TODANXI: SETB TR1 MOV 30H,#07 MOV 31H,#13 MOV 2AH,#01H ;电机动作6分钟 MOV 2CH,#01H ;进排水40秒 MOV 25H,#09 ;设正反转次数 MOV 26H,#08 ;转动8+10s MOV 27H,#02 ;停2秒 MOV 28H,#20 ;进排水40秒,20+20x1 LCALL DJSCZ LCALL DANXI JNB P1.6,TOPX LJMP TH

15、END手动漂洗程序TOPX: SETB TR1 MOV 31H,#18电机动作进排水20+20 LCALL PX JNB P1.7,TOCTS LJMP THEND 手动长脱水TOCTS: MOV 30H,#16 ;状态显示查表参数 MOV 31H,#12 ;脱水1分钟 MOV 2CH,#00H LCALL CTS LJMP THEND ;*键盘扫描1*KSSM1: MOV P2,#0F0H ;置P2.0P2.3为输出,P2.4P2.6为输入 MOV A,P2 ANL A,#0F0H XRL A,#0F0H JZ NO_KEY1 ;A为0则无按键 LCALL DL20MS ;延时消抖 ANL

16、A,#0F0H ;重读键盘 MOV R2,#11110111B ;列扫描初值LSM1: MOV A,R2 MOV P2,A ANL A,#11110000B MOV R3,A CJNE A,#0F0H,KEY1 ;有键按下则跳转 MOV A,R2 RR A MOV R2,A XRL A,#01111111B JNZ LSM1 NO_KEY1: LJMP KSSM1KEY1: ANL A,#0FH ORL A,R3 MOV R4,ASHIFANG1: MOV A,P2 JNZ SHIFANG1 LCALL DL20MS MOV A,R4 CJNE A,#0D7H,NEXT1 LJMP FANGS

17、HI1NEXT1: CJNE A,#0DBH,NEXT2 LJMP FANGSHI2NEXT2: CJNE A,#0DDH,NEXT3 LJMP FANGSHI3NEXT3:KEY_TAB: DB 0EBH,0EDH,0EEH,0DBH,0DDH DB 0DEH,0BBH,0BDH,0BEH *实际键盘扫描2* KSSM2: JZ NO_KEY2 ;LSM2: CJNE A,#0F0H,KEY2 ; JNZ LSM2NO_KEY2: LJMP KSSM2KEY2: MOV DPTR,#KEY_TAB MOV R5,#00ZHAOJZ2: MOV A,R5 MOVC A,A+DPTR XRL A

18、,R4 JZ SHIFANG2 INC R5 LJMP ZHAOJZ2SHIFANG2: JNZ SHIFANG2 CJNE A,#0B7H,NEXT4 LJMP SHUIWEI1NEXT4: CJNE A,#0BBH,NEXT5 LJMP SHUIWEI2NEXT5: CJNE A,#0BDH,NEXT6 LJMP SHUIWEI3NEXT6: CJNE A,#77H,NEXT7 LJMP SHUIWEI4NEXT7:*自动情况下方式一即为标准模式* FANGSHI1 : MOV 2AH,#07H ;设置时间1的参数7分钟 MOV 30H,#01 ;显示方式为1 MOV 25H,#06 ;正

19、反转次数 MOV 26H,#08 ;转动8+10s MOV 27H,#02 ;停两秒 LCALL KSSM2 ;调用键盘扫描程序,选择水位*自动情况下方式二,即为轻柔模式* FANGSHI2: MOV 2AH,#04H ;设置时间1的参数04分钟 MOV 30H,#02 ;显示方式为2 正反转次数 MOV 26H,#03 ;转动3+10s 停两秒 *自动情况下方式三,即为快洗模式* FANGSHI3: MOV 2AH,#05H ;设置时间1的参数05分钟 MOV 30H,#03 ;显示方式为3 MOV 25H,#03 ;转动8+10s *水位一* *SHUIWEI1: MOV 2CH,#04H

20、 ;时间2,为4分钟 MOV 31H,#01 ;显示水位为1 MOV 28H,#20 ;进排水时间,20s+20s LCALL XYCHX RET*水位二* SHUIWEI2: MOV 2CH,#03H ;时间2,为3分钟 MOV 31H,#02 ;显示水位为2 进排水时间,20s+20s *水位三* SHUIWEI3: MOV 2CH,#02H ;时间2,为2分钟 MOV 31H,#03 ;显示水位为3 进排水时间,20s+20s *水位四* SHUIWEI4: MOV 2CH,#01H ;时间2,为1分钟 MOV 31H,#04 ;显示水位为4 *洗衣程序* XYCHX: SETB TR1 ;开定时器 LCALL DANXI ;调单洗程序 LCALL PX ;调漂洗程序 LCALL CTS ;调长脱水程序 RET *单洗程序 * DANXI: LCALL DJSCZ ;倒计时初值 LCALL JSH ;调进水程序GOON2: MOV 32H,#07 MOV 33H,#13 LCALL ZFZ ;调正反转程序 DJNZ 25H,GOON2 ;循 环几次 LCALL PSH ;排水*漂洗程序

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1