基于单片机的自动感应门设计(5)

2019-04-23 13:53

安徽工商职业学院2015届毕业论文(设计)

谢辞

在此次有关自动门的控制系统的设计,让我感觉到了单片机的复杂深度性,它很贴切我们的日常生活,无所不在,应用无处不有,它并不是想象中的那么简单,也并非是无法克服的堡垒。 设计硬件之前,要首先收集好有关的基础性资料,应备有良好的应用类参考书和专业类参考书。对于有关的科技期刊和专利文献,也要经常阅读以便了解最新的发展情况,借鉴现成的经验,避免重复劳动。在设计中,要充分了解所用芯片的使用条件及输入输出的特性,这样才能避免因使用错误而多走弯路。 电路设计部分应该有的精神就是广集资料。只凭借自己头脑中的知识是远远不够的。哪里出现了问题,就要翻书本,或上网查资料。当然也要开动自己的脑筋怎样使系统电路更完美。例如我的设计题目是基于单片机的自动门控制系统设计。有自动门,自然会用到电动机,每种电机都有不同的特性和功能,你就要进行选择了。例如对电机的选择,你就要选择你所熟悉的,所了解的。

在电路设计时,应充分发挥单片机的记忆运算、判断控制能力,避免采用复杂的、稳定性较差的模拟电路。 本设计程序以汇编语言语言编写,易于读写、易于调试和修改,同时汇编语言用来编制系统软件和过程控制软件,其目标程序占用内存空间少,运行速度快。

为了使微机控制系统各种硬件设备能够正常运行,有效地实现电机各个控制环节的实时控制和管理,除了要设计合理的硬件电路,还必须要有高质量的软件支持。因此用汇编语言编写电机单片机实施控制的应用程序,是整个系统中十分重要的内容。

最后我非常感谢学校和老师给我们这么好的学习机会,让我亲身去体会一个项目开发的艰难性,第一次站在一个设计者的角度去看,体会到了他们的艰辛,同时我也感受到了老师对我们的付出,对我们的精心指导,让我顺利完成这次学习任务。

17

安徽工商职业学院2015届毕业论文(设计)

参考文献

[1]张金铎 等编著《传感器及其应用》[M].西安电子科技大学出版社,2002. [2]何希才编著《传感器及其应用实例》[M].机械工业出版社.2003.

[3]单成祥编著《传感器的理论与设计基础及其应用》[M].国际工业出版社 .2002.

[4]金庆发编著《传感器技术与应用》[M].机械工业出版社.1994.

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

[6]康华光.陈大钦编著《电子技术基础》[M].高等教育出版社,1998.

[7]胡汉才编著《单片机原理及其接口技术》[M].北京:清华大学出版社.2004. [8]陈永甫编著《红外线探测与控制电路》[M].北京:人民邮电出版社.2004. [9]黄继昌等编著《传感器工作原理及应用实例》[M].人民邮电出版社.2002. [10]沈红卫编著《基于单片机的智能系统设计与实现》[M].北京.电子工业出版社.2005.

[11]编著阳宪惠《现场总线技术及其应用》[M].清华大学出版社.1999. [12]张友德,等编著《单片机原理应用与实验》[M].复旦大学出版社.2000. [13]李朝青编著《单片机原理及接口技术》[M].北京航空航天大学出版社.1996. [14]阎石编著《数字电子技术基础》[M].高等教育出版社.1998.

[15]陈玉宏编著《向凤红.自动控制原理》[M].重庆:重庆大学出版社.2003.

18

安徽工商职业学院2015届毕业论文(设计)

附录1:设计电路原理图

附录2:信号流程说明

各部分程序设计:

红外自动门运行状态分为慢速开门、加速开门、减速开门、延时开门、慢速关门、加速关门、减速关门几个部分。在开门过程中首先进行门状态检测,根据所检测到的信号判断自动门上次停机所处位置。根据检测结果确定门此刻应运行方式,如检测出门是半开状态,门直接转入加速开门的过程。如检测出门是全开状态,门转入延时开门过程。如检测出门是全关状态,那么在检测到有人出人时,门会缓慢打开,之后加速运行,接着减速运行,最后电机停止运转,门由于惯性缓慢关闭。

自动门开门后暂停一段时间,然后关门。关门是开门的一个反过程,它经过慢速运行、加速运行、减速运行、惯性运动直至停止这几个过程。在自动门关闭过程中当系统接收到由红外线传感器电路发出的有人出入的信号时,门会重新打开。与开门情况不同的是当在关门过程中检测到故障信号时门会朝反方向运动,将门打开,这样可以排除因自动门遇到障碍物或人身体而产生故障信号使整个系统停止工作的可能

附录3:程序源代码

主程序:

//(1)函数声明及变量定义 #include

19

安徽工商职业学院2015届毕业论文(设计)

#include

#define uchar unsigned char #define uint unsigned int

sbit s1=P1^0; //定义行程开关1 sbit s2=P1^1; //定义行程开关4 sbit s3=P1^2; //定义行程开关5 sbit s4=P1^3; //定义行程开关8 sbit s5=P1^4; //定义霍尔传感器2 sbit s6=P1^5; //定义霍尔传感器3 sbit s7=P1^6; //定义霍尔传感器6 sbit s8=P1^7; //定义霍尔传感器7 sbit D1=P2^0; //定义手动开按钮 sbit D2=P2^1; //定义手动关按钮

sbit ADS=P3^2;//红外传感器输入的检测端子 sbit CP1=P0^0;//电机脉冲

sbit DIR1=P0^1;//电机方向,0为开门。1为关门 #define uchar unsigned char #define uint unsigned int

bit int_flag=0; //中断0标志位

bit contrl(bit diret) void delay(uint time1)

//(2)主函数main() void main(void) {

P1=0Xff;//P1口初始化 P2=0Xff;//P2口初始化

P3=0X13;//P3口初始化 Uchar int_close;

ip=0X01; // INT0 高优先级

ie=0X81; //INT0开中断,CUP开中断 TCON=0X04; //INT0边沿触发 while (1) {

if (int0_flag==1) //检测到人 {

int_flag=0;//标志位清零 contrl(0);//门全打开 int_flag=0;//标志位清零 wait:

while(ADS==0); //如果门前无人则等待 int_close=contrl(1) //门开始关闭 if(int_close==0) {

int0_flag=0;//标志位清零 goto wait; }

20

安徽工商职业学院2015届毕业论文(设计)

} } }

//(3) service_int0()系统外部中断0程序

viod service_int0() interrupt 0 using 2 //外部中断0,用第二组寄存器 {

int0_flag=1; }

//(4) contrl()步进电机控制程序 bit contrl(bit diret) {

Uint k;

cp1=1; //脉冲置于高电平 DIR1=diret; //运行方向输出 While(diret==0) { //开门

uint temp; temp=P1;;

if (temp==0Xf9) /*加速,直到遇上霍尔传感器3,6*/ {

K=10; While(1) {

cp1=0;

delay(2*k); //延时时间逐步减少,即加速 cp1=1; delay(2*k); k--;

if(P1==0X9f) break; } }

If (temp==0X9f) //匀速,直到遇上霍尔传感器2,7 {

While(1) {

CP1=0; delay(1); CP1=1; delay(1);

if(P1==0X6f) break; } }

if (temp==0X6f) //减速,直到遇上行程开关1,8 {

21


基于单片机的自动感应门设计(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:小学一年级剑桥英语试题Unit3 - - Toys - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: