【基于单片机的自动门控制系统的设计与实现8600字(论文)】_第1页
【基于单片机的自动门控制系统的设计与实现8600字(论文)】_第2页
【基于单片机的自动门控制系统的设计与实现8600字(论文)】_第3页
【基于单片机的自动门控制系统的设计与实现8600字(论文)】_第4页
【基于单片机的自动门控制系统的设计与实现8600字(论文)】_第5页
已阅读5页,还剩21页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

[8]当自动门运行过程中发生异常时,比如在自动门关闭的时候遇到移动的物体或者行人阻碍到自动门正常运行时,则进入故障程序处理。其硬件框图如图3.1所示。图3.1红外线自动门控制系统硬件框图3.2系统硬件总体设计逻辑就目前市场上的自动门种类繁多令人眼花缭乱,从平移的自动门到旋转的自动门再到欧式双翼自动门等等,使得消费者在自动门的市场中无从下手,但是本设计考虑到实用性和成本,在这里,我们将平移型感应自动门作为此次设计重点研究对象。其它的构成部分如下所示:(1)主控制器:它通过它内部的集成板发出相应指令,指挥电机工作。(2)检测器:当它检测到有人经过它时,它就会将检测到的人体信号传给主控制器,从而控制自动门使它接收到开门的命令从而打开门。(3)马达:在检测器检测到信号时传送给控制器,然后马达接收指令为开门提供动力使门打开。3.3设计电路原理图图3.2设计电路原理图第4章系统软件设计本设计采用的两个软件分别是KeiluVision3和Proteus8Professional两个软件。Keil主要负责程序编写的作用,由于它相比较与其它编程软件容易理解,效率高,因此它对于初学者而言能够在短时间内更好的上手。Proteus主要负责电路仿真的作用它的元件库里有着近千种元器件,几乎涵盖了设计中的所有器件,因此它可以实现我们的设计需求,满足仿真的条件,在最后对设计进行提前检测实验,所以它对整个设计起着重要作用。4.1系统主程序流程图图4.1系统主程序流程图图4.1这个流程图主要说明了自动门控制系统中主程序的工作流程,使得主程序在本文中简洁明了的展现它的工作状态。4.2开门子程序流程图图4.2开门子程序流程图图4.2流程图主要为了说明设计在开门这个状态时的工作原理,它能够简洁明了的反应出开门这个动作的设计思路。4.3开门中断程序流程图图4.3开门中断程序流程图图4.3流程图是描述在开门这个命令执行之后遇到紧急事件时能够自动中断的一种功能,它反应了在门开启的过程中实现中断的设计思路。4.4T1中断服务流程图图4.4T1中断服务流程图图4.4描述的是当CPU正在进行某项程序时此时收到中断信号那么CPU中断目前的程序转入相应子程序的流程图达到中断的目的。4.5程序源代码#include<reg52.h>#defineucharunsignedchar//无符号字符型宏定义 变量范围0~255#defineuintunsignedint //无符号整型宏定义 变量范围0~65535unsignedcharcodezheng[4]={0x08,0x04,0x02,0x01};//正转表格unsignedcharcodefan[4]={0x01,0x02,0x04,0x08};//反转表格ucharflag_start;//启动标志位ucharflag_z_f;//正反标志位uintflag_moshi; //模式变量sbitled1=P2^0;//指示灯发光二极管IO口定义sbitled2=P2^1; //sbitled3=P2^2; //sbitled4=P2^3; //sbithw1=P2^4; //红外人体传感器IO口定义sbithw2=P2^5; //uintbjdj_value;//步进电机的量ucharflag_sj,flag_zdg; //延时关门时间打开和关闭的变量sbitkey1=P3^4; //按键IO口定义sbitkey2=P3^5; //sbitkey3=P3^6; //sbitkey4=P3^7; ///***********************1ms延时函数*****************************/voiddelay_1ms(uintq){ uinti,j; for(i=0;i<q;i++) for(j=0;j<120;j++);}/********************独立按键程序*****************/ucharkey_can; //按键值voidkey() //独立按键程序{ if(key1==0||key2==0||key3==0||key4==0) //有按键按下 { delay_1ms(1); //按键延时消抖动 if(key1==0) //确认是按键按下 key_can=1; //得到按键值 if(key2==0) //确认是按键按下 key_can=2; //得到按键值 if(key3==0) //确认是按键按下 key_can=3; //得到按键值 if(key4==0) //确认是按键按下 key_can=4; //得到按键值 }}voidbujindj() //步进电机函数{ uchari; if(flag_z_f!=0) { if(flag_z_f==1) //开 { if(bjdj_value>=512) { flag_z_f=0; flag_zdg=1; }else bjdj_value++; } if(flag_z_f==2) //关 { if(bjdj_value<=1) { flag_z_f=0; bjdj_value=1; }else { bjdj_value--; } } for(i=0;i<4;i++)//4相 { if(flag_z_f==1) //开 P1=zheng[i];//// elseif(flag_z_f==2)//关 P1=fan[i];//// } }}/******************主程序**********************/voidmain(){ unsignedcharvalue; while(1) { key(); if(key_can==1) //按下按钮,自动门进入自动模式 { flag_moshi=0; flag_z_f=0; led4=0;led3=1; //指示灯 } if(flag_moshi==0) //按下按钮自动门进入自动模式 { if((hw1==1)||(hw2==1))//检测到信号 { flag_z_f=1;//自动门打开 led2=1;led1=0; //指示灯 flag_zdg=0; flag_sj=0; } if(flag_zdg==1) //延时自动关 { value++; if(value>100)//1m { value=0; //此时检测系统没有检测到信号 flag_sj++; if(flag_sj>=3)//自动门延时3秒自动关门 { flag_zdg=0; flag_z_f=2; } } delay_1ms(10); //10ms } } bujindj(); //步进电机函数 }}4.6仿真原理图本次的仿真是由Keil和Proteus两个软件联合运行的,首先利用Keil软件在上面编写好本文设计中所需要的代码,然后通过运行查看该程序有没有错误或者有问题的地方最后如果程序无误再生成所需要的hex文件保存起来。其次进入Proteus软件选好设计所需要的元器件,将它们布局连接起来就可以通过导入程序开始进行仿真,点击AT89C51单片机芯片将之前所生成的hex文件导入进去,添加完之后就可以开始运行,最后我们就可以生成如下图4.5的仿真原理图。因为单独使用单片机它的输出电流较低,所以本文选用了ULN2003A与单片机一起来驱动负载,它可以实现功率放大,输出5VTTL电平,输出可达500mA/50V,这样就可以实现对负载的驱动。图4.5仿真原理图第5章结论本次的毕业设计是利用单片机技术设计一个自动门控制系统,在设计这个方案的同时不仅要考虑到它的功能实用性,还要考虑它的经济型和安全性。首先要提前在网上搜集一些相关知识,然后结合自己所学的知识去设计出最合理的地方案。其次还要了解国内外关于自动门的主要制造方法和原理,并且通过多重比较选择最优方案,而在众多单片机中,本文选择了89C51单片机作为整个系统最核心的部分,也利用了ULN2003A单片机来进一步对步进电机进行控制。于此同时也加入了温度和速度传感器来监测步进电机的工作状态,这样可以保证电机的工作效率达到最大化延长其使用寿命。本文在整个方案的基础上详细阐述方案的原理和可行性,并且还要说明传感器与步进电机的工作原理,设计出了与之相对于的硬件和软件。最后通过测试表明,本文所设计的电路能够完成其基本的功能。在此次的毕业设计中学到了许多,收获了许多。从一开始开题报告的无从下手到慢慢阅读文献一步步的学习,再到论文的开始写作,这每一项都是一个进步。写论文一开始都毫无头绪,只有看得多了才能下笔如有神。就比如说电路设计部分,如果不去查阅大量资料很难完成电路的设计,只有通过不断地阅读文献,寻找相似的部分,与其它方案进行比较才能有针对性的提出可行方案。在设计硬件之前脑海里想到的第一个器件就是电机,但是了解到的电机有多种多样,于是就开始查阅资料发现进步电机最适合作为自动门的驱动系统,于是就选择了进步电机作为自动门的驱动系统。通过此次的毕业设计,明白了一个好的设计得有一个好的创意和可实行的方案。因为通常在设计的时候,都是根据一开始的想法去搜索资料,解决问题。首先自动门是生活中非常常见的事物,本文选择这个课题也是因为它在日常生活中太常见了,以至于认为它设计起来十分简单。但是从参考别人的设计时才感觉到它并不是那么容易,要考虑到用什么电机,然后选用什么样的单片机去控制电机,整个过程都得仔细研究,慢慢斟酌。虽然本文最后设计出来了此方案,但是由于经验匮乏,设计方案还有待提高。整个设计中最大的收获还是在设计过程,通过反复的对比和修改才确定最终方案。参考文献[1]《可编程控制器与变频器的自动门控制系统设计》.钢祥,周斌萍,高锋;《中国科技投资》.2017.[2]《传感器工作原理及应用实例》.黄继昌.徐巧鱼等编著.人民邮电出版社.2002.[3]《单片机原理应用与实验》.张友德,等编著.复旦大学出版社.2000.[4]《向凤红.自动控制原理》.陈玉宏编著.重庆:重庆大学出版社.2003.[5]《传感器及其应用》.张金铎

金欢阳名编著.西安电子科技大学出版社,2002.[6]《单片机基础》李广弟

朱月秀

冷祖祁

编著[7]《单片微行计算机原理、应用及接口技术》.张迎新编著.国防工业出版社.200

温馨提示

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

评论

0/150

提交评论