预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共14页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

作者09电信MT实验步骤接收方式 红外线发射与接收的方式有两种,其一是直射式,其二是反射式。直射式指发光管和接收管相对安放在发射与受控物的两端,中间相距一定距离;反射式指发光管与接收管并列一起,平时接收管始终无光照,只在发光管发出的红外光线遇到反射物时,接收管收到反射回来的红外光线才工作。注意事项 1.为STC12C4052AD下载HEX文件时应在STC-ISP软件中选择“内部RC振荡器”。 2.避免在强光下使用,过强的光线会降低感应距离。 3.单片机的P1.7接口输出无锁存低电平,可连接继电器制作感应水龙头。 4.单片机的P1.6接口输出锁存开关电平,可制作感应电灯开关,上电初始时为高电平。 5.可通过增加红外发射二极管的亮度(功率)来提高感应区距离。 6.必须使用STC12C4052AD或STC12C2052AD(有ADC功能),而不可使用STC12C2052代替。 实验材料:-3节7号电池盒-将编号源程序的单片机插入面包板关键问题与解决之道2.如何解决临界点的感应波动问题? 微微向前一点就触发,微微向后一点就关断,这是临界点问题的困扰。问题的根源在于触发的临界点和 关断的临界点是同一个距离。只要在基于单片机系统中把这两个临界点分开,就可以解决这个问题了。 我们知道了,单片机需要处理的数据是“最终数值”,它是红外发光二极管开、关状态时ADC读出的数值 之差。最终数值也是一个从0到255之间不断变化的变量,反射物理离传感器越近,“最终数值”就越大。 如果我们在程序里设置当“最终数值”大于某一值时(例如200)就触发开关,小于这一值时就关断开 关。这样编程的效果就是单一临界点的不稳定开关,单片机既然都可以模仿不稳定的开关,自然也很容 易创造稳定的开关了!只要写一下程序的设置就可以很轻松的让它变得稳定。双临界点的设计只需要两 个数值的条件判断:当“最终数值”大于某一值时(例如200)就触发开关,当“最终数值”小于另一 个数值时(例如150)就关断开关。这样一来,在150和200之间就会创建一块中间区域。当反射物理 在这个区域前后移动时,开关仍保持其原来的状态,或判断、或触发。这种双临界点的设计,其实是给 反射物体一个活动空间,对反射物体的稳定性要求降低了,系统状态就自然稳定了下来。在实际调试过 程中可以根据应用的需要修改双临界点的两个数值。比如做自动手龙头,手的移动范围较大,所以应该 留出较大的活动区域。如果是做自动寻迹小车的传感器,则可以用较小的活动区域,甚至改用单临界点 来实现。双临界点的设计是有启发性的,你可以利用此设计来做更多的事情,或者用在其他传感器的稳 定性设计之中。3.如何增加感应的成功率和可靠性? “最终数值”处理和双临界点设计都可以增加系统的稳定性,可以如果检测出错、或者出现误差,在多 次数据采集中出现几次失败和误差是很正常的事情,但如果这些误差左右了开关的状态,那么这种失败 又由谁来负责呢?大家要需要我写的文章错别字很多,杂志社的编辑老师都说我无药可救了。当你看到 本文的时候你要知道一件事,那就是已经有好几位编辑老师瞪大的眼睛帮我改掉文中的错别字。最后大 家看到的才是精美而通顺的文章。在感觉编辑老师的同时我们也要帮我们的红外感应开关配备几位“编 辑老师”,给采集到的数据把关。一旦出现错误就放弃当前的数据,重新采集,这种设计就是一种冗余。 我在程序中设计了一段循环检测语句,连续20次检测和判断采集到的数据,如果20次中有1次误差就 马上放弃当前的所有数据,重新检测。连续20次检测已经算是很稳定的了,当然你也可以为了更稳定而 改用连续50次、100次的检测,但是系统的反应速度会慢,灵敏度下降。灵敏度和稳定度之间的矛盾是 纲性的,在实际测试中找到适合目标系统的检测次数就可以了。“最终数值”、双临界点和20次连续检测 听上去好像是很复杂的事情,可是在程序里面却是很简单的几条语句。设计的重点不在于程序的复杂性, 而是整个系统的设计思路。下面列出一段关键程序部分与大家分享,这个简单的程序包含了以上讲到的3 种抗干扰设计。成品展览-IR_NEARV2红外感应开关