微波EDA网,见证研发工程师的成长!
首页 > 应用设计 > 机器人技术 > 基于光电传感器电路的迷宫机器人设计

基于光电传感器电路的迷宫机器人设计

时间:03-14 来源:互联网 点击:
 摘要:采用Freescale公司的MC9SDG128单片机进行控制,使用ROHM公司生产的发送接收一体化反射型光电传感器RPR220,设计了一种新型迷宫机器人。该迷宫机器人能够在程序中严格控制光电传感器的开关,同时用软件消除外界干扰,取得了很好的探测效果

 引言
  迷宫机器人走迷宫竞赛是一项综合性十分强的竞赛,它涉及的学科包括了计算机学、机械学、电工学、嵌入式开发知识以及算法的实现等。迷宫机器人是一种人工智能的机器人,又称为电脑鼠(Micromouse)。它拥有灵活的“双腿”,锐利的“眼睛”,还有聪明的“大脑”用于控制“眼睛”和“双腿”协调工作,最终走出IEEE标准迷宫。迷宫由256个方块(单元)组成,每个方块的大小为18 cm见方,排成16行×16列。
  迷宫机器人在迷宫中要能按照一定规则完成行走,所以机器人必须具备以下几种能力:
  ◆稳定且快速的行走能力;
  ◆正确判断能力;
  ◆记忆路径的能力。
  很明显,这些能力必须建立在迷宫墙壁能够被准确探知的基础上,这就要求迷宫机器人要有很强的“观察力”,即具有一双“慧眼”。现实中,能够进行避障的传感器有很多,如CCD摄像头、超声波传感器、光电传感器等。从设计成本和使用方面综合考虑,本设计采用红外式光电传感器。红外传感器的功能有两个:一是判断迷宫墙壁的有无,确定迷宫机器人的行进方向;二是根据传感器获得的数值判断迷宫机器人和墙壁之间的距离,从而对迷宫机器人的姿态进行调整,避免迷宫机器人和墙壁发生碰撞。
  1 光电传感器原理


  
红外光电传感器工作原理如图1所示。发送器对准目标发射光束,发射的光束一般来源于半导体光源、发光二极管(LED)、激光二极管及红外发射二极管。光束不间断地发射,或者改变脉冲宽度。接收器由光电二极管、光电三极管、光电池组成。在接收器的前面装有光学元件(如透镜和光圈等);在接收器后面的是检测电路,用于滤除无效信号,以及对有效信号进行利用。
  随着车体和墙壁的距离不同,接收管接收到的信号的强弱也不同。当车体距离墙壁较近时,大量发射的红外光线经墙壁反射后被接收管接收,产生的电压较高;反之,车体距离墙壁较远时,反射的红外光线在传播过程中会损耗,被接收管接收到的信号较弱,产生的电压也就较低。根据接收管产生电压的强弱,可以判断车体与墙壁之间的距离,为迷宫机器人避障提供数据。
  2 光电传感器的选用
  光电传感器的特点:不受电磁波的干扰,非噪声源,可实现非接触性测量;受环境的影响非常大,物体的颜色、方向、周围的光线都可能导致测量误差;由于发射光线是光而不是声音,可以在相当短的时间内获得较多的红外线传感器测量值;测距范围较近,大致为40 cm以内。红外传感器发射管和接收管的类型很多,其工作光波长约为800~1100 nm。通常在小功率条件下的工作电压为1.5~5 V左右,工作电流为3~10 mA左右。在本设计中选用了日本ROHM公司生产的发送接收一体化反射型光电传感器RPR220。该光电管功率为80 mW,工作波长为800 nm,完全满足迷宫机器人的使用要求。
  3 光电传感器应用电路
  在本设计中,采用Freescale公司的16位单片机MC9S12DG128对光电传感器进行控制。单片机的A/D模块进行信号采集,获知当前的墙壁信息和车体的位置信息。单片机采集到A/D数值后,通过RS232传到PC机上。然后根据传感器采得的数值为电机指定相应的动作信号,控制迷宫机器人在迷宫中的姿态,并且实时记录迷宫墙壁有无的信息,为建立迷宫地图提供数据。
  3.1 传感器电路
  传感器电路是获知迷宫信息的主要途径,其电路设计的好坏直接影响着机器人的工作。一般来说,传感器电路由控制电路、发射管、接收管和信号处理电路构成。阳光谱中含有红外成分,所以在迷宫机器人中要想方设法将红外光谱消除,才能保证迷宫机器人的正常运行。本设计使用了5路传感器,分置于迷宫机器人的正前、偏左45°、左侧、偏右45°、右侧。每一路的打开与关闭由处理器控制,如图2所示。


  本设计中的传感器电路如图3所示。CTR1为传感器的开关控制口,CTR1置高时,发射管两端没有电压差,所以传感器不会对外发射红外信号;CTR1置低时,发射管和传感器均工作,对外发射红外光谱信号。当发射的红外光谱经迷宫墙壁发射反射回迷宫机器人时,接收管会产生感应电流。此时,RPR220的3号端口的电阻将该端的电动势拉高。如果电流增大,那么3号端口输出的地电动势也会相应增大,从而实现对迷宫环境的信息探测。


  3.2 传感器电路的使用
  从前面的分析可以知道,传感器采集信号时存在着阳光干扰。在设计期间,我们也进行了相应的干扰实验。结果表明,阳光的干扰十分强烈,完全可以使得红外传感器失去作用。因此,在传感器电路的使用过程中必须考虑阳光对光电传感器的干扰,可从硬件和软件两方面去消除阳光的影响。
  在本设计中,采用了软件消除误差的方法。首先,CTR1置高,也就是传感器发射管处于关闭状态。这时使用处理器的A/D采集模块对接收管的信号进行采集,作为基值AD1。然后,将CTR1置低,将发射管打开,再一次用处理器的A/D采集功能进行信号采集。这时采得的数据为AD2,是反射光谱和阳光红外谱的混合信号,而真正的A/D值应为AD=AD2-AD1。软件消除阳光红外光误差的流程如图4所示。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top