人体感应模块控制LED.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
人体感应模块控制LED

实 验 报 告 传感器应用技术 课程名称 人体感应控制LED 班 级 10电子1 姓 名 龚洋洋 学 生号 指导教师 承浩 2011-2012学年第二学期 一、传感器说明 技术参数: 1.工作电压:DC5V至20V 2.静态功耗:65微安 3.电平输出:高3.3V,低0V 4.延时时间:可调(0.3秒~18秒) 5.封锁时间:0.2秒 6.触发方式:L不可重复,H可重复,默认值为H 7.感应范围:小于120度锥角,7米以内 8.工作温度:-15~+70度 9.PCB外形尺寸:32*24mm,螺丝孔距28mm,螺丝孔径2mm,感应透镜尺寸:(直径):23mm(默认) 功能特点: 1.全自动感应:当有人进入其感应范围则输入高电平,人离开感应范围则自动延时关闭高电平。输出低电平。 2.光敏控制(可选):模块预留有位置,可设置光敏控制,白天或光线强时不感应。光敏控制为可选功能,出厂时未安装光敏电阻。如果需要,请另行购买光敏电阻自己安装。 3.两种触发方式:L不可重复,H可重复。可跳线选择,默认为H。 ??? A.不可重复触发方式:即感应输出高电平后,延时时间一结束,输出将自动从高电平变为低电平。 ??? B.可重复触发方式: 即感应输出高电平后,在延时时间段内,如果有人体在其感应范围内活动,其输出将一直保持高电平,直到人离开后才延时将高电平变为低电平(感应模块检测到人体的每一次活动后会自动顺延一个延时时间段,并且以最后一次活动的时间为延时时间的起始点)。 4.具有感应封锁时间(默认设置:0.2秒):感应模块在每一次感应输出后(高电平变为低电平),可以紧跟着设置一个封锁时间,在此时间段内感应器不接收任何感应信号。此功能可以实现(感应输出时间和封锁时间)两者的间隔工作,可应用于间隔探测产品;同时此功能可有效抑制负载切换过程中产生的各种干扰。 5.工作电压范围宽:默认工作电压DC5V至20V 6.微功耗:静态电流65微安,特别适合干电池供电的电器产品。 7.输出高电平信号:可方便与各类电路实现对接。 使用说明: 1.感应模块通电后有一分钟左右的初始化时间,在此期间模块会间隔地输出0-3 次,一分钟后进入待机状态。 2. 应尽量避免灯光等干扰源近距离直射模块表面的透镜,以免引进干扰信号产生误动作;使用环境尽量避免流动的风,风也会对感应器造成干扰。 3. 感应模块采用双元探头,探头的窗口为长方形,双元(A元B元)位于较长方向的两端,当人体从左到右或从右到左走过时,红外光谱到达双元的时间、距离有差值,差值越大,感应越灵敏,当人体从正面走向探头或从上到下或从下到上方向走过时,双元检测不到红外光谱距离的变化,无差值,因此感应不灵敏或不工作;所以安装感应器时应使探头双元的方向与人体活动最多的方向尽量相平行,保证人体经过时先后被探头双元所感应。为了增加感应角度范围,本模块采用圆形透镜,也使得探头四面都感应,但左右两侧仍然比上下两个方向感应范围大、灵敏度强,安装时仍须尽量按以上要求。 硬件设计 主连接图 图为人体感应模块实际演示,当有人体在检测范围内移动时则点亮LED灯(延时一段时间),然后熄灭没有人体移动时则一直熄灭状态。 模块连接图 电位器对着自己三个插针自左往右分别为GND、OUT、VCC 软件设计 程序部分 //************************************************** //程序功能:通过人体感应模块实现点亮LED灯 //P1.1人体感应模块OUT //TIME:2012年6月14日 08:55 //************************************************* #includeAT89X52.h sbit k0=P1^1; //sbit k1=P0^4; void delay10ms() //延时10ms { unsigned i,j; for(i=0;i50;i++) for(j=0;j100;j++); } void Key(void) //输入判断子程序 { if(k0==0) //P1.1按键功能,计数增 { delay10ms(); if(k0==1) { k1=0; } k1=1; } } main() { while(1) { Key(); } } 体会 通过老师每节课的介绍,我跟着学习了多种传感

文档评论(0)

qwd513620855 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档