设计了通过超声波传感器测距的方法,测量机器人和障碍目标的位置,然后在给机器人以动作。
1.1 超声波测距避障的原理
超声波测距作为一种典型的非接触式测量方法,具有易于定向发射、方向性好、强度易控制、与被测量物体不需要直接接触的优点[2]。超声波测距实验原理相对比较简单,测距的原理如图1所示。
超声波在空气中的传播速度为已知,首先超声波发射探头发射产生脉冲信号,脉冲信号遇到障碍物返回,返回信号由超声波接收探头接收后经放大检波,通过测量从发射到接收到信号过程所经历的时间差Δt后,再利用,计算得到发射点到障碍物的实际距离。[3]超声波测距的单片机控制部分主要分为主程序和中断服务程序两个部分。主要流程如图2所示。
主程序完成初始化工作、超声波发射和接收顺序的控制。外部中断服务子程序主要完成时间值的读取、距离计算、结果的输出、数码管显示等工作。主程序首先是对超声波模块初始化,通过延时函数产生10us的高电平,再将计数器初始化,判断超声波接收端是否收到回波,进而执行外部中断程序。单片机主程序通过控制超声波的发射和接收,以及时间的读取,通过计算最终得到结果,输出在数码管显示等工作。为了避免超声波从发射器直接传送到接收器引起的直射波触发,需要延时约0.1ms后接收返回的超声波信号。
具体实现中,我们使用STC89C51单片机和HC-SR04超声波传感器,实现了一套超声波测距和避障的系统,采集到的距离信息通过数码管实时显示。
1.2 脉冲激光测距的原理
从不断测试机器人运动过程来看,超声波测距实现的机器人状态监控,由于傳感器局限性,超声波辐射角度范围宽,导致其工作的误差比较大,在一些复杂环境,会出现错误的判断。激光传感器因为方向性好、亮度高、相干性好等优点,已经被广泛应用在自动控制的各个领域中[4-5]。考虑到工作寿命、经济因素,可以选取半导体激光脉冲测距传感器,其工作原理如图3所示。
半导体激光器发射的脉冲激光碰到待测目标后反射,反射光被测距系统的光电探测器接收并放大。以发射光脉冲信号为计时起点时刻,接收光脉冲信号为计时结束,通过计算两者之间的时间,即可获得激光往返于测距系统和目标之间所需要的时间t,进而可以算出两者之间的距离,从而实现机器人目前行走准确状态的实时监控。激光直线传输,测距更加精确,在机器人轨迹准确控制和对精度要求较高的复杂环境中,基于半导体激光器进行测距的优点是非常明显。
2 结语
通过超声波和激光测距,可以测定障碍物和目标的距离,进而实现机器人前进,后退,左转,右转等动作,可以帮助机器人在碰到障碍物进行躲避,规划新的前进路线。随着计算机技术、传感器技术的发展,运动机器人的避障应用领域将不断地扩大,应用复杂程度也越来越高。
参考文献
[1] 张燕.移动机器人控制系统的设计[J].工业控制计算机,2017,30(1):18-20.
[2] 周晴.基于单片机的超声波测距仪系统设计[J].电脑知识与技术,2018,14(35):216-217.
[3] 张野.基于STC89C52单片机的超声波测距仪设计[J].科技与企业,2015(3):59.
[4] 徐玉华.基于激光测距仪的移动机器人避障新方法[J].机器人,2010,32(2):179-183.
[5] 朱星宇.提高激光脉冲测距精度的方法[J].电子世界, 2017(15):21-22.