常用的超声波测距传感器存在死角问题,如果物体不在正前方,比较偏,会收不到回波。可以采用软件方法解决,设置一个时限,如果一定时间内收不到回波就强制返回一个0,告诉机器人不能再向前走了,或返回一个合理的数值,相当于给机器人划出一个极限探测范围,比如1米5。
另一个办法就是换成红外线传感器,这就好像军舰塔台搭载的传感器一样,军舰雷达也有死区,它们会采用声波和红外雷达组合的形式。
对业余爱好者来说,市面上可用的红外测距传感器少的可怜,可以说只有夏普一家,价格还死贵,既然这样,我们就自制一个吧。
目标:制作一个安装在机器人头部的红外测距传感器,主要用途是规避障碍,比较左前、正前和右前的距离,判断应该向哪个方向走。精度不要求很高,测量前方30公分以内的大致距离就可以了。成本限制在1元。
硬件部分比较简单,和普通的开关式红外传感器一样,也是一发一收。为了加强探测范围减小死区,采用多个管子组合的形式。和超声波传感器一样,也占用2个I/O接口,一个trigger,一个echo。
实物图片:
为了方便在机器人上安装,洞洞板的尺寸做的和超声波传感器一样。通用的四个针脚。
软件:
装备:
传感器安装在机器人上的样子。
评论