移动机器人的避障系统设计
导语:本文介绍了一种基于DSP的机器人自主避障系统。DSP作为微处理器采集传感器反馈回来的机器人外界环境和自身状态,经过判断产生机器人移动方向的控制命令,通过扩展异步通信单元发送给伺服,进而驱动电机,实现实时避障。
导语:本文介绍了一种基于DSP的机器人自主避障系统。DSP作为微处理器采集传感器反馈回来的机器人外界环境和自身状态,经过判断产生机器人移动方向的控制命令,通过扩展异步通信单元发送给伺服,进而驱动电机,实现实时避障。
本文介绍了一种基于DSP的机器人自主避障系统。DSP作为微处理器采集传感器反馈回来的机器人外界环境和自身状态,经过判断产生机器人移动方向的控制命令,通过扩展异步通信单元发送给伺服,进而驱动电机,实现实时避障。
1 引言
随着科学技术的进步和发展,机器人的研究与应用也越来越普及。它不仅广泛应用于工业生产中,而且在航天航空、深海探测等危险恶劣环境中也发挥了巨大的作用,甚至正在逐渐深入人们的日常生活当中。随着计算机的应用和传感技术的发展,对移动机器人的研究又达到了新的高度,其中,机器人自主避障就是要研究的一个重要方向。本文介绍的一种机器人自主避障系统,以高速DSP作为处理器,实时采集传感器感知的外部环境,进而做出机器人移动路径的判断,实现机器人自主避障。
2 系统设计
系统设计框架如图1所示,采用三个传感器感知前方环境,然后将采集信息送到DSP中进行判断处理;扩展DSP的异步通信单元,将控制命令以RS232异步通信协议发送到左右轮的电机。
3 系统硬件选择与设计
系统选用TI公司的TMS320LF2407A DSP作为微处理器。该DSP具有40MIPS的执行速度,能满足系统实时性控制要求;片内有高达32K字的FLASH程序存储器,自带16路10位A/D转换模块,一个串行通信接口模块,两个正交编码电路和若干个16位通用定时器 ,简化了外围硬件电路。
3.1 传感器与DSP接口设计
本文选用的传感器是Polaroid公司生产的6500系列传感器,该传感器发射和接收使用同一个换能器。其与DSP的连接如图2所示。
由DSP的通用I/O口输出脉冲触发传感器工作,同时由于DSP的输出电平与传感器输入不一致,因此需要加上电平转换单元;触发之后立即启动内部计数器,当有回波返回时,传感器输出相应脉冲作为DSP的外部中断源,同时DSP停止计数。
3.2 异步通信扩展单元设计
伺服可通过RS232接口接收控制命令。由于需要对左右两个车轮分别控制,而系统选用的DSP只有一个串行通信模块,因此选用TI公司的TL16C554A作为异步通信扩展芯片,每片TL16C554A均含有4 路异步通信单元,串行数据发送电路如图3示。
电路中,由DSP的A3、A4、A5地址线和/IS信号线经过74LV138D译码器芯片译码产生4路异步通信单元的选通信号,加上A0、A1、A2地址线和/WE、/RD读写信号就可以一起访问TL16C554A的任一寄存器。/IS是DSP的I/O空间选通引脚,即DSP以I/O地址访问TL16C554A的寄存器。TL16C554A串行通信电路采用了MAX3232驱动芯片,实现TL16C554A的电平转换。
4 测距原理
测距通常采用时间差测距法,即发射器向某一方向发射,借助空气媒质传播,由被障碍物反射回来的时间间隔长短与被反射的的强弱判断障碍物的位置和距离。由于在空气中的速度和空气的温度湿度有关,在比较精确的测量中,需要把温度的变化和因素考虑进去。在一般要求不高的应用中,可用下面的公式计算: s=c×t/2 s为距障碍物的距离;c为在空气中的速度,一般取340m/s; t为发射与接受的时间差。
5 避障策略设计
在移动机器人的行走过程中,由于随时可能遇到障碍物,而且障碍物的大小、多少未知,所以为了能够顺利的到达目的地,本设计系统使用三个传感器进行现场环境信息的检测,使它们的信息能够互为补充。安放在移动机器人上的传感器如图4所示,其中s1、s2、s3为三个传感器,箭头指向为移动机器人的运动方向。
发射端在处理器和前置电路的驱动下工作,接收端的信号在经过放大、整形后在处理器的中断口产生中断,通过发射和接收的时间差计算出机器人与障碍物的相对距离,再由处理器实现避障算法,作出判断决策,发出相应的控制指令,然后通过电机自带的实现电机的运动及转向操纵,从而实现机器人的主动避障。如图5所示为机器人的避障程序流程图。
要想实现移动机器人避障行走的自主控制,所面临的基本问题是:一方面要求有充分的环境信息,另一方面要求能处理所获得的环境信息并使其转化成控制信息。避障算法的设计主要是解决机器人如何最优的避开障碍物。在初始化阶段,机器人根据自身的尺寸和障碍物的尺寸计算出一个最小安全距离,然后通过传感器探测出当前与障碍物之间的距离,比较这两个距离的大小后即可确定机器人的运动状态。机器人的具体避障规则,如表1所示。
注:传感器的状态为0表示没有障碍物;传感器的状态为1表示有障碍物。
6 结束语
本文实现了利用测距信息来实现移动机器人的顺利行走。使用传感器测距,具有信息处理简单、速度快的优点,但它也具有一定的局限性,主要表现在发出的探测波束角度过大、方向性差,只能获得目标的距离信息,而不能准确的提供目标的位置和边界信息等。在实验过程中,发现当机器人与障碍物之间角度过大时,有可能会发生碰撞。今后的工作是要完成多传感器融合,使机器人能够快速、准却的实现避障功能。