基于单片机的光控自动窗帘控制系统设计说明书1 - 图文(6)

2019-03-28 22:59

uchar code rev[]={0xf9,0xf3,0xf6,0xfc }; //2相励磁反转表 sbit k1=P3^0; //定义K1开关 uint m=1;

void delay(uint x) //延时函数 { uchar i;

while(x--) //i=x即延时约x毫秒 for(i=0;i<60;i++); }

/********以下是步进电机正转函数********/ void setp_motor_ffw(uchar n) { uchar i,j;

for(i=0;i<5*n;i++) {

for(j=0;j<4;j++) {

P1=ffw[j]; //取正转数据

delay(250); //转一个角度停留的时间,可调节转速

//转n圈

} } }

/********以下是步进电机反转函数********/ void setp_motor_rev(uchar n) { uchar i,j;

for(i=0;i<5*n;i++) //转n圈 {

for(j=0;j<4;j++) {

//if(k2==0) break;

25

P1=rev[j]; //取反转数据

delay(250); //转一个角度停留的时间,可调节转速

} } }

/* 主程序 */ void main() {

while(m--) { if(k1==1)

{ delay(10); if(k1==1) {

setp_motor_ffw(3);

//调用电机正转函数 //K1送入高电平 //电机转m圈

}

}

//K1送入低电平

else {

delay(10);

setp_motor_rev(3); //调用电机反转函数 } } }

5. 总体设计

随着社会的发展,人们对生活追求,各式各样的窗帘出现。窗帘不仅具有遮挡作用 ,还具有美观性,给大家带来美的视觉享受。人们对居室的舒适度和自动化程度要求越开越高,为了满足生活的需要,通过以往的人为的通过拉动使窗帘开与闭则就比较费事,也易损坏。因此,设计一种能够控制居室窗帘的检测自动控制装置,能够在夜间关闭,白天打开,具有很强的实用性。

本文设计通过光电传感器采集数据 (光强度),反映出光信号变化,然后将光电元件光数字信

26

号输送到单片机中。光电检测方法具有精度高、反应快、非接触等特点,且可测参数多,传感器的结构简单,形式灵活多样。该设计通过检测光线的强弱,并根据光线的强弱自动将窗帘打开和关闭,实现了自动控制的功能,极大地方便了人们的日常生活,并在生活中得到了广泛的应用。

PROTEL总电路图&&PROTUES仿真图

图15 基于单片机的室内光线自动控制系统总体原理图

上图是我的设计完整原理图,本文主要光敏传感器ULN3330,它是一个开关型的光电传感器,直接输出数字信号,OUTPUT端根据外部光照度的变化输出相应的数字信号------高电平或低电平,ULN3330的其他相应引脚分别接地或电源,然后把OUTPUT端接单片机的P3.0端口。

单片机本身包括复位电路和振荡电路,片内振荡电路:通常外接一个晶振,两个电容, 电容值取值范围15~45pf,取值范围晶振值0~24MHZ;复位电路:当振荡器运行时,在此引脚上出现2个机器周期以上的高电平使单片机复位,一般在此引脚与VSS之间接一个下拉电阻,与VCC引脚之间接一个电容;

驱动步进电机芯片采用L298,通过单片机的I/O输入改变芯片控制端的电平,改变绕组脉冲信号的顺序即可对电机实现正反转。L298的输入引脚与单片机的P1.0~P1.3口分别相连,IN1~IN4引脚从单片机输入控制电平,控制步进电机的正反转,OUT1~OUT4分别接步进电机的四个相线,ENA、 ENB接控制使能端控制步进电机的转、停。当ENA、 ENB同时接高电平时L298芯片是工作的,即使能端有效,控制IN1~IN4引脚电平的频率即可控制步进电机的转速。芯片的输出引脚分别接2个续流二极管,起到保护电路作用。芯片的VCC和VSS引脚与地必须连接100nF

27

电容器,图中0.1μF和100μF电容并联即为100nf。

对本自动系统的设计还必须满足用户想要窗帘停的某一位置停下来的需求,为此设计了步进电机停止开关,为简化程序,更加利用L298芯片本身的功能,本文采用了一个单刀双掷开关SW1,开关一端接使能端ENA、 ENB,另两端一段接+5V的电源,为芯片使能端提供高电平,另外一端接地,限制使能端的使用,当开关接到地时,两个使能端接地,L298芯片不再起作用,电机停止运动,由此达到停止的目的。

行程开关控制步进电机极限位置停止:天亮时,光敏传感器接受到高电平,依程序所设步进电机正转,顺时针转动,窗帘以某一速度被慢慢拉开,走到极限位置时,窗帘碰到右端的行程开关SW3,开关闭合使能端关闭,电机停止转动。当天暗时,光敏传感器输出低电平,电机要逆时针转动了,窗帘打开,障碍物去除,开关断开,使能端打开,电机反转,同样电机反转碰到左边的行程开关SW4时,开关闭合,使能端关闭,电机停止转动。

图16 基于单片机的室内自动光线控制仿真图

5.2 主要元器件清单:

器件名称 AT89C52微控制器 电机驱动芯片L298 42BYG型号步进电机 电阻、电容、按键、肖特基二极管等 器件数量 1片 1片 1个 若干 表8 主要元器件清单

6.结论

28

我经过将近四个月的努力,终于完成了基于单片机的室内自动光线系统的设计,虽然有部分功能尚未实现,但总体上完成了一个从硬件到软件完整的设计的流程。

论文设计的核心控制器选用AT89C52单片机,光线采集选用光电传感器ULN3330。它输出单片机能读入数字信号,然后由L298驱动芯片驱动步进电机转动,调节其转动角度。电机选用比较容易进行角度调节的步进电机,单片机与步进电机之间的连接采用L298驱动器,它是一种两相和四相步进电机专用驱动芯片。

该系统经过多次改进,参考了现在实际电路通用的做法,在现有技术的状态下各项指标已经达到技术要求,但由于自身水平有限,电路中还有些技术方面还可以进一步加强。如电路可以进一步调试其精确度和灵敏度,通过多只光敏电阻更加准确的控制窗帘升降。通过此次毕业设计,使我进一步熟悉MCS-51单片机和步进电机的工作原理及应用,对于C51程序设计的编写也较熟练了,锻炼了独立思考与勤快耐心的能力。在设计过程中,我通过查阅大量有关资料,与同学交流经验和自学,并向老师请教等方式,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨大。在整个设计中我懂得了许多东西,也培养了我独立工作的能力,树立了对自己工作能力的信心,相信会对今后的学习工作生活有非常重要的影响。而且大大提高了动手的能力,使我充分体会到了在创造过程中探索的艰难和成功时的喜悦。虽然这个设计做的也不不足之处,但是在设计过程中所学到的东西是这次毕业设计的最大收获和财富,将使我终身受益。

7. 致谢

在此要感谢我的指导老师颜丙生老师对我悉心的指导,感谢老师们给我的帮助。颜老师在整个系统设计的过程中给了我很大的帮助,在论文任务制定时,他不仅肯定了我们项目的大方向,而且又帮我具体分析设计的各个模块,这在我对室内自动光线控制这个具体目标的设计时起到了不可估量的作用,受能力限制,在论文提纲制定时,我的思路不是很清晰,经过老师的指导,我的设计思路逐渐明晰。完成初步方案论证后,颜老师认真查看了我的各个方案,指出了方案中存在的很多问题。在软件仿真环节,我遇到了些许困难,每每请教老师时,颜老师都很负责的耐心解决了我无法解决的问题,之后在多次修改论文的过程中他以极大的耐心帮助修改我的论文,使我深受感动。同时感谢所有曾经教导过我、帮助过我的老师,正是因为他们多年来孜孜不倦的教诲才使得我的专业技能有很大的提高。最后要感谢在整个论文写作过程中帮助过我的每一位校友、宿友!

参考资料

[1]光敏窗帘自动控制器设计,陈莉明,彭芳芳,内江科技2008年第三期。

29

[2]自动窗帘控制系统设计,孙勇,杨文月,赵宇新,电子技术应用。

[3]光电传感器在自动窗帘中的应用,刘芹,秦魏,赵继聪,科技向导2011年第08期。 [4]余瑞芬.传感器原理[M].北京:航空工业出版社,1995 [5]康华光.电子技术基础,高等教育出版.2006.

[6]沈聿农.传感器及应用技术,化学工业出版社.2002. [7]戴维、戴卫恒编著 51单片机C语言应用程序设计实例精讲 北京:电子工业出版社 2006 [8]孙余凯 吴鸣山 项绮明编著 传感器应用电路300例 北京:电子工业出版社 2008.3 [9]朱云芳 江桦 翟旭的编著 PROTEL99SE电路设计与制板 北京:机械工业出版社 2007.11 [10]刘建清编著 轻松玩转51单片机C语言 北京:北京航空航天大学出版社 2011.3

30


基于单片机的光控自动窗帘控制系统设计说明书1 - 图文(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:第五讲如何提高销售网络覆盖率-第二节:可口可乐产品的22种销售

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

马上注册会员

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