版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、学 号 天津城建大学单片机原理及应用课程设计设计说明书自动洗碗机的控制系统设计起止日期: 2014 年6月23日 至 2014年6月27日学生姓名班级成绩指导教师(签字)控制与机械工程学院2014年 06月27 日天津城建大学课程设计任务书2013 2014 学年第 1 学期 控制与机械工程 学院 电气自动化 专业 13电气11 班级课程设计名称: 单片机原理及应用A课程设计 设计题目: 自动洗碗机控制系统设计 完成期限:自 2014 年 6 月 23 日至 2014 年 6 月 27 日共 1 周设计依据、要求及主要内容(可另加附页):一、课程设计的目的1、进一步熟悉和掌握单片机的结构及工作
2、原理。2、掌握单片机的接口技术及相关外围芯片的外特性,控制方法。3、通过课程设计,掌握以单片机为核心的电路设计的基本方法和技术。4、通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。5、通过完成一个包括电路设计和程序开发的完整过程,了解开发一单片机应用系统的全过程,为今后从事相应打下基础。二、课程设计的基本要求1、认真认识设计的意义,掌握设计工作程序,学会使用工具书和技术参考资料,并培养科学的设计思想和良好的设计作风。2、提高模型建立和设计能力,学会应用相关设计资料进行设计计算的方法。3、提高独立分析、解决问题的能力,逐步增强实际应用训练。4、课程设计的说明书要求简洁、通顺,计算正
3、确,图纸表达内容完整、清楚、规范。5、课程设计说明书封面格式要求见天津城市建设学院课程设计教学工作规范附表1。三、课程设计具体要求1、要求每位同学独立完成设计任务。2、原理图设计。 1)原理图设计要符合项目的工作原理,连线要正确。 2)图中所使用的元器件要合理选用,电阻,电容等器件的参数要正确标明。 3)原理图要完整,CPU,外围器件,扩器接口,输入/输出装置要一应俱全。3、程序调计 1)根据要求,将总体项能分解成若干个子功能模块,每个功能模块完成一个特定的功能。 2)根据总体要求及分解的功能模块,确定各功能模块之间的关系,设直出完整的程序流程图。4、设计说明书 1)原理图设计说明简要说明设计
4、目的,原理图中所使用的元器件功能及在图中的作用,各器件的工作过程及顺序。 2)程序设计说明对程序设计总体功能及结构进行说明,对各子模块的功能以及各子模块之间的关系作较详细的描述。 3)画出工作原理图,程序流程图如并给出相应的程序清单。四、设计任务使用单片机AT89S51和键盘显示管理芯片设计的自动洗碗机的硬件控制系统的设计方法,给出了用控制键盘和显示的硬件电 路,同时给出了系统软件和功能软件模块的流程图。该系统应能实现洗碗机的自动控制,完成自动进水、加温、清洗、消毒等功能。 五、参考资料1 2 指导教师(签字): 系(教研室)主任(签字): 批准日期:2014 年 6 月 18 日摘 要介绍了
5、一种以AT89S51为核心的自动洗碗机系统; 同时给出了系统软件和功能软件模块的流程图。该系统经过试验调试,可有效地实现洗碗机的自动控制,完成自动进水、加温、清洗、消毒等功能。关键词:全自动;AT89S52;洗碗机目录一、绪论1二、自动洗碗机基本机构工作原理1三 设计思路2四、控制器的介绍2五 洗碗机的设计35.1 系统总体设计方案45.2 洗碗机控制系统硬件设计55.3 洗碗机控制系统的软件设计65.4 控制器程序设计7六 总结11七 参考文献13一、绪论随着数字信息家用电器应用的普及,洗碗机已经广泛进入人民大众的家庭之中,从而使得人们能够从繁杂的家务劳动中逐步解放出来。作为一种家庭自动化设
6、备,洗碗机一般需要实现诸如自动控制进水、自动加洗涤剂、冷洗、自动加温洗、清洗、排水、杀菌消毒,以及定时和故障报警等功能。从被控制量角度出发,一个洗碗机通常需要满足图1所示的一些具体要求,其中涉及的开关量信号有两种,一种是传感器的高、低电平信号检测,如机门开关、水位高低、温度调节保护器和行程开关等;另一种开关信号经由固态继电器控制强弱电压信号的断开和加载,如进水电磁阀门的开合、恒温加热器的开合、瞬间加热器的开合、清洁剂控制盒和消毒剂控制盒的工作等。图1中所涉及的模拟量信号主要用于实现以下几方面的功能:(1)用温度传感器实现水温/消毒水温度检测;(2)通过人机接口的显示输出、键盘输入和声音输出等实
7、现水温显示、洗涤过程显示以及故障类型显示等;(3)根据用户需要通过设置键选择洗涤模式,并通过功能键启动相关功能;(4)机器使用情况统计、清洁剂和消毒剂剂量的使用情况计数等;(5)故障报警以及、洗涤完成报告等。AT89S52开关量人机接口模拟量机门磁传感器水位磁传感器进水电磁阀温度调节控制器恒温加热器消毒剂控制盒电机马达传动形成开关消毒水温度清洁器控制盒计数器显示接口键盘接口振铃接口图1 洗碗机被控制量二、自动洗碗机基本机构工作原理本设计的全自动洗碗机是前开门式结构的,它的外部结构如图2所示,内部还有加热管、进水电磁阀、洗涤装置、排水电机、过滤网、碗架、导轨、漂洗剂供料装置、排气风扇等。洗涤装置
8、主要由旋转喷臂、清洗水泵等构成。清洗水泵安装在机座的底部,由清洗电机与叶轮泵构成。清洗电机直轴驱动叶轮泵,把水进行加压,通过喷臂的喷水孔从三维方向喷出具有一定压力的热水流,从而对餐具进行冲洗,结构如图3所示。由于喷水孔喷水时,受水的反作用力的作用,产生了一个转矩,使喷臂连同轴套一起绕空心轴转动,从而达到改变方向,从不同的角度清洗的目的。全自动洗碗机即是通过控制器的程序运行控制,由旋转喷臂将水从不同的角度喷射到餐具上,依靠水的压力、温度和洗涤消毒剂的作用,实现对餐具的清洗、消毒,最后烘干。图2 全自动洗碗机外部结构图3 旋转臂装置结构图(1-排气口2-把手3-门扣4-透明观察窗5-方式选择按钮6
9、-时间选择按钮7-启动止停按钮8-状态指示灯;9-电源插头10-排水管11-进水管12-机壳)三 设计思路根据洗碗机的控制要求,洗碗机主要过程为:(1) 冲水与洗涤。利用单片机控制电磁阀门,向水箱中注水,然后进行适当加热,冲水只要控制阀门的开关就可以实现;洗涤时尽量将混合液温度控制在40度到55度时,这样洗涤的效果更好。(2) 反复冲洗。由于乙肝类细菌高温杀菌不能实现清除,需要反复冲洗实现,大概控制在57次。(3) 烘干、消毒。烘干与杀菌同步进行,可以节省洗完时间,同时也可以达到要求,需要将温度控制在60度以上,同时打开紫外线灯,可以消灭大部分细菌。四、控制器的介绍本设计中的核心器件微控制器,
10、我们采用了Atmel公司的AT89S52单片机。下面简单介绍一下AT89S52。AT89S52功能特性描述AT89S52是一种低功耗、高性能CMOS 8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能: 8k字节Flash, 256字节RAM, 32位I/O口线,看门狗定时器, 2个数据指
11、针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外, AT89S52可降至0Hz静态逻辑操作,支持2种软件选择节电模式。空闲模式下, CP停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下, RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。AT89S521主要性能:u 与MCS-51单片机产品兼容u 8K字节在系统可编程Flash存储器u 1000次擦写周期u 全静态操作:0Hz33MHzu 三级加密程序存储器u 32个可编程I/O口线u 三个16位定时器/计数器u 八个中断源u 全双工UART串
12、行通道u 低功耗空闲和掉电模式u 掉电后中断可唤醒u 看门狗定时器u 双数据指针u 掉电标识符图4 AT89S52结构 五 洗碗机的设计5.1 系统总体设计方案洗碗机自动控制系统的总体设计框图如图5所示。系统以单片机AT89S52为控制核心,包含水温检测电路、水位检测电路、门控电路、键盘电路、蜂鸣器、液晶显示电路及强电驱动电路等部件。其中,水温检测电路结合温度设置,采集水温信息,控制电阻丝加热;水位检测电路进行最高水位和最低水位判断,控制进水电磁阀和排水电磁阀开关;门控电路判断洗碗机门是否关闭;键盘电路设置洗涤水温及洗涤时间。为了实时显示洗碗机工作状态及可能出现的故障信息,系统中添加液晶显示电
13、路和蜂鸣器,方便用户知道洗碗机工作模式和工作状态,便于故障排查。强电驱动电路作为单片机与外部器件的接口电路,驱动电磁阀、电阻丝、电动机及紫外线消毒器工作。图5 系统总体设计方案5.2 洗碗机控制系统硬件设计针对上述功能及可靠性、成本和方便使用维护等因素,笔者设计了图2所示的洗碗机控制系统。单片机最小系统采用与MCS-51兼容的AT-MEL公司低功耗高性能CMOS芯片AT89LS8252设计2,其中片内8k字节在线可编程闪存用以存放系统程序,可通过SPI接口来下载程序;而2k字节的EEPROM则用以存放关键参数,如开机维护密码、产品的序列号、开机次数、洗涤设置参数等; 256字节的RAM用来存放
14、临时变量。鉴于本洗碗机有较多的开关量信号,故此,设计中使用并行芯片8255来扩展I/ O接口,以配合P1和P3口部分管脚的使用,其输出和输入的比例为21/ 14,其中蜂鸣器由P1.3控制。从可靠性角度出发,输入和输出部分都采用光电隔离措施。考虑到部分驱动信号所要求的驱动电流较大,因此,本设计选用功率驱动器件ULN2803来驱动。温度采集有两种方案:一是使用热敏电阻配合芯片MAX150进行AD转换,然后通过存放在程序存储器里的表格来求得当前温度;二是使用三端温度传感器DS18B20进行采集,直接得到温度数据。相比之下,后一种方案较为经济简捷。键盘和LED显示选用HD7279A来进行控制,其电路图
15、如图5所示。HD7279A无需外围元件即可直接驱动8位共阴式LED数码管;引脚DIG03对应03位数字输出驱动;引脚SASG和DP则对应于段ag及小数点的驱动输出;各位可独立控制译码/不译码及消隐和闪烁等属性。该芯片共有三种类型的指令:第一种是6条不带数据的8位纯指令,如复位、测试、左/右(循环)移位等;第二种是7条16位带数据指令,包括下载数据按方式0/ 1译码、下载不译码、闪烁、消隐、段点亮、关闭等;第三种是读取键盘数据指令。它们均采用串行方式与AT89LS8252进行通讯,串行数据从DATA引脚送入芯片并由CLK端同步。当片选信号CS变为低电平后, DATA引脚上的数据将在CLK引脚的上
16、升沿时被写入HD7279A的缓冲寄存器。此外, HD7279A片内含有去抖动电路,可控制64键键盘矩阵。图6中,元件JKEY为4×4键盘接口,当有键按下时,KEY引脚输出低电平,发光二极管LED1发亮,该状态一直保持到按键松开。此时如果接收到“读键盘”指令15H,在指令前半段, DATA引脚将处于高阻状态以接受来自微处理器的指令。而在指令后半段, DATA引脚则从输入状态转为输出状态,用以输出所按下的键代码值。图6 HD7279A的控制键盘/LED电路图图7 控制器硬件设计方案5.3 洗碗机控制系统的软件设计本系统功能模块按洗碗过程可分为六个阶段:进水过程、加温过程、注入清洁剂过程、
17、控制电机旋转清洗过程、注入消毒水消毒过程和排水过程。同时为确保洗碗机正常工作,对容易出故障的过程,系统还设置了故障报警或停机功能。系统软件可按照洗碗机的工作流程进行编写。主要的软件模块有开机自检、状态初始化、显示当前默认状态,进入键盘扫描状态并等待操作键按下,以及根据操作键转入相应流程等,其主程序流程见图6所示。用户使用前,应首先检查洗碗机状态是否正常,若状态正常,按下弱电源开关,根据洗涤要求设置洗涤模式(或使用默认方式),将碗放入清洗室,然后关上机门,按下开始键。之后,控制器检测水位高低和水温,以决定是否进水与恒温加热,至此准备工作完成,启动电机进行清洗。接下来再把清洁剂注入清洗室,同时检测
18、水位高低,若水位较低,则立即进水,以保证清洗效果。清洗完成后,等碗上的水空一段时间后,洗碗机再注入高温消毒水进行消毒。洗涤完成后,蜂鸣器鸣叫,表明洗涤完成,同时控制器回到用户初始设置模式。洗涤中每一过程和按键均对应有一发光二极管的亮灭,用以显示过程和按键的正常与否。洗涤完成后,用户打开机门,取出碗盘,然后断电即可结束整个洗碗过程。在该系统软件子程序中,需要对键盘/显示管理模块进行说明,包括初始化子程序、发送子程序、接收子程序、中断子程序、显示子程序等。其中用户通过键盘设置模块可以设定洗涤模式、每一过程的时间长短以及洗涤剂量大小,也可随时按相应的功能键暂停或中止洗涤过程。技术维护人员可以通过键盘
19、/显示管理模块输入正确密码来查询机器的使用状况,如机器序列号、机器的使用次数等,也可对关键参数根据实际情况进行设置。故障报警功能模块可在工作电压故障、进水阀故障、加热器故障、电机故障、清洁剂注入故障以及高温消毒水注入故障发生时用蜂鸣器报警,同时断掉强电控制信号,以确保系统安全。5.4 控制器程序设计整个洗碗过程分为:进水,冲水洗涤,烘干,消毒四个过程。因此可以按照这四个过程设计主程序,主程序流程图如图8。主程序代码如下#include <reg52.h>/包含单片机寄存器的头文件#include <intrins.h>/包含_nop_()函数定义的头文件#define
20、uchar unsigned char#define uint unsigned int /数据宏定义/定义接口sbit waterin=P13;/水箱加水sbit waterout=P14;/排水sbit swim=P15;/冲水sbit warm=P16;/加热sbit disinfect=P17;/消毒和烘干#define TIMEWATERIN 60 /定义各环节时间#define TIMEWARM 30#define TIMEWATEROUT 60#define TIMEWASHING 150#define TIMEDIS 150uint totetime;void displayl
21、ed(uint m);void delays(uchar ms);void initimer1();void inisystem() /程序初始化checkstop=0; TMOD=0x32;ET1=1;EA=1;void main() /主函数uchar key;inisystem();while(1)key=scankey();if(key=KEYSTART)if(PINCONVER=0)totletime=TIMEWATERIN+TIMEWATEROUT+TIMEWASHING+TIMEWARM+TIMEDIS;waterin=1;delays(TIMEWATERIN);waterin=
22、0;warm=1;delays(TIMEWARM);warm=0;swim=1;delays(TIMEWASHING);swim=0;waterout=1;delays(TIMEWATEROUT);waterout=0;disinfect=1;delays(TIMEDIS);disinfect=0;显示主程序主要负责显示洗碗剩余时间,单位是秒。硬件使用LED数码管显示器,采用74LS64驱动,程序代码如下:void displayled(uint m)uchar i,j;for(i=0;i<3;i+)j=m%10;m/=10;leddatai=LEDCODEj;for(i=0;i<3;i+)TI=0;SBUF=leddatai;while(TI=0);TI=0;delays()函数用于延时,主要控制进水时间、洗碗时间、烘干时间以及消毒的时间,为了方便程序设计,在延时函数中调用dispalyled()以刷新显示,程序代码如下:void delays(uchar ms)uchar i;for(i=0;i<ms;i+)initimer1();while(flagls=0);totletime-;display(totletime);timer1()是定时器T1的中断服务函数。T1用于定时,基本定时时间为50ms,通过对mseccnt计数,实现
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 建筑工程质量管理 课件 项目一 项目一 建筑工程施工质量验收统一标准
- 地质矿业初级练习卷附答案
- 大象杯信号工复习测试有答案
- 地理空间思维课程设计
- 化工课程设计项目总结
- 剪纸与课程设计
- 双pd倒立摆课程设计
- 大学花卉养护课程设计
- 创意美术阶段性课程设计
- 双有源桥双向dcdc课程设计
- GB 6675.12-2014玩具安全第12部分:玩具滑板车
- 音乐肖邦简介课件
- 第12章-导弹战斗部
- 【外科】骨折概论-课件
- 《产妇焦虑抑郁情绪护理开题报告》
- 工作流程清单excel模板
- 下肢动脉置管溶栓的护理要点课件
- xx银行厅堂服务营销氛围打造及联动技巧课件
- 专题14 数列求和综合必刷100题(解析版)
- 2023深圳工务署品牌名单
- 《出塞》优秀课件
评论
0/150
提交评论