引言
在自主行走机器人系统中,机器人要实现在未知和不确定环境下行走,必须实时采集环境信息,以实现避障和导航,这必须依靠能实现感知环境信息的传感器系统来实现。视觉、红外、激光、超声波等传感器都在行走机器人中得到广泛应用。由于超声波测距方法设备简单、价格便宜、体积小、设计简单、易于做到实时控制,并且在测量距离、测量精度等方面能达到工业实用的要求,因此得到了广泛的应用。本文所介绍的机器人采用三方超声波测距系统,该系统可为机器人识别其运动的前方、左方和右方环境而提供关于运动距离的信息。
1 超声波测距原理
超声波发生器内部由两个压电片和一个共振板组成。当它的两极外加脉冲信号,且其频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带动共振板振动,便产生超声波。反之,如果两极间未加外电压,当共振板接收到超声波时,就成为超声波接收器。超声波测距一般有两种方法:①取输出脉冲的平均电压值,该电压与距离成正比,测量电压即可测量距离;②测量输出脉冲的宽度,即发射超声波与接收超声波的时间间隔t,根据被测距离s=vt?2来得到测量距离,由于超声波速度v与温度有关,所以如果温度变化比较大,应通过温度补偿的方法加以校正。
本测量系统采用第二种方法,由于测量精度要求不是特别高,所以可以认为温度基本不变。
本系统以PIC16F877单片机为核心,通过软件编程实现其对外围电路的实时控制,并提供给外围电路所需的信号,包括频率振动信号、数据处理信号等,从而简化了外围电路,且移植性好。系统硬件电路方框图见图1。
由于本系统只需要清楚机器人前方、左方、右方是否有障碍物,并不需要知道障碍物与机器人的具体距离,因此不需要显示电路,只需要设定一距离阀值,使障碍物与机器人的距离达到某一值时,单片机控制机器人电机停转,这可通过软件编程实现。
2 超声波发射电路
超声波的中心频率为40kHz,该频率可以通过以下程序产生(部分源程序):