APP下载

移动机器人超声波测距避障系统实验测试

2022-09-19李卫鹏买买提明艾尼加合甫阿汗古丽巴哈尔托乎提

机床与液压 2022年5期
关键词:移动机器人测距车速

李卫鹏,买买提明·艾尼,加合甫·阿汗 ,古丽巴哈尔·托乎提

(1.新疆大学机械工程学院,新疆乌鲁木齐 830000;2.乌鲁木齐佰博机电科技有限公司,新疆乌鲁木齐 830002)

0 前言

近年来,避障测距系统在机器人、AGV小车、无人机、无人驾驶等方面得到广泛应用。常见的避障测距方式有激光雷达测距、红外光电传感器、视觉传感器以及超声波测距等。机器人在未知环境中的导航需要使用许多不同类型的传感器,以向机器人运动控制器提供有关速度、位置、障碍物距离和方向等数据。使用激光雷达进行距离和障碍物检测已经进行了相当多的研究,而车载摄像头用来检测图像中的障碍物。光学传感器对光敏感,摄像头往往很昂贵。一种替代方法是使用超声波传感器,该传感器适用于3~400 cm的近距离检测,并且每秒可提供多个距离测量,而成本低,可用于农业作业机器人。

超声波测距方面有很多研究。文献[2]中提出了一种基于STM32的RS485总线多路超声波测距系统,与传统超声波测距系统相比,该系统简化了控制系统的硬件和软件资源,可用于移动机器人和智能汽车的避障系统中,但并未通过实验来验证可行性。文献[3]中提出了一种基于CAN总线控制超声波测距系统,简化了移动机器人系统控制核心的工作,但并未解决多超声波传感器的抗干扰问题。文献[4]中提出了一种利用内部温度传感器和ADC检测回波的方法,避免了外部温度计和回波比较电路,简化了外围硬件,测量精度高;但实验中只是用不同大小的纸张来代替障碍物,没有真正在实际场景下进行实验。

本文作者针对以上遗留问题,首先搭建了搭载超声波测距系统的移动机器人小车,在不同车速下计入不同期望停车距离,在室内场景下进行了超声波识别障碍后急速停车试验测试。在整理试验结果的基础上建立了行车速度与识别障碍停车距离的理论模型,然后按理论模型的算法控制移动机器人小车,最后再通过试验测试完善并验证了本文作者提出的理论模型的有效性,为移动机器人急速停车避障提供了安全的理论模型和算法。

1 总体框架

1.1 系统组成

本文作者使用的超声波测距系统主要由微控制器STM32F103ZET6、HC-SR04超声波模块、轮毂驱动器、轮毂电机和电源等组成。其中,STM32F103具有144个IO引脚资源、64 kB SRAM、512 kB FLASH等,在性能上完全优于同价位的51系列单片机。HC-SR04超声波模块具有成本低、测量精度高等优点,被广泛应用于机器人避障系统中。当超声波传感器检测到障碍物时,把检测距离值返回给单片机,单片机通过处理距离值后发送控制指令给轮毂电机,从而控制机器人继续前进还是保持停止状态。机器人总体设计框架如图1所示。

图1 机器人总体设计框图

1.2 超声波测距

超声波测距方法主要包括渡越时间检测等,主要有收发一体和收发分离两种。此系统采用了收发分离方式。采用收发分路模式进行超声波测距,不仅避免了收发一体式超声波测距系统由于发射脉冲的余振而造成的检测盲区的存在,而且增大了检测距离,提高了测距精度。

超声波测距的基本原理是超声波测距传感器根据微处理器输出的触发脉冲发射超声波并检测反射波。该超声波的发射和探测之间的时间作为脉冲宽度数据输出到微处理器,并根据声速和时间差计算到障碍物的距离。假设是超声波发射器到障碍物的距离,超声波发射和接收到的声脉冲信号之间的时间差为,空气中的传播速度为,测量距离公式如下:

=·2

(1)

由于声波在空气中传播的速度与温度有关,在精度要求比较高的条件下需要做温度补偿,而温度是利用单片机自带的温度传感器反馈的。声波在空气中传播的速度与温度关系如下:

=3314+0607

(2)

式中:为测量时的环境温度;为超声波在空气介质中的传播速度。超声波测距示意图如图2所示。

图2 超声波测距示意

2 系统搭建

2.1 移动机器人小车模型

本文作者自主设计了移动机器人小车。移动机器人小车长为0.9 m、宽为0.5 m、高为0.43 m,质量约为55 kg,承载能力为2 000 N。车架所用材料为1.5 mm厚方钢,采用橡胶轮胎内置电机的方式提供动力输出,选用48 V锂电池提供动力来源。电机控制输出模式为RS485输出。传感器采用市面上常见的HC-SR04超声波传感器,采用了定时器中断计数方式来计算超声波发射与接收的时间差。图3为文中使用的移动机器人小车。

图3 移动机器人小车

2.2 移动机器人小车运动控制

(3)

(4)

由式(3)(4)可得出

(5)

其中:

(6)

(7)

图4 机器人运动学分析

3 实验测试

3.1 实验测试条件与环境

在室内5 m长的过道内进行移动机器人小车避障测距实验。因为超声波对平面有较强的反射能力,因此将墙壁作为此次实验用的障碍物。超声波传感器安装在车架的最前端,车轮相对于车架最前端突出5 cm,即车轮与墙面撞击时,传感器与墙面的距离为5 cm附近。实验中用卷尺作为测量工具,在地面上分别测取25~125 cm之间每隔10 cm处的距离值作为超声波测距的墙面识别设定值。在每一设定值下分别对5组不同车速进行实验,每一组进行5次测距求平均值。考虑到移动机器人小车自身容易跑偏、车轮与地面打滑等问题,将起步距离均设定为3.3 m处。

3.2 实验测试与结果分析

3.2.1 测试结果与误差分析

图5为在不同识别距离下实际停车距离与行车速度关系。可以看出:超声波测距预置值不同时,移动机器人小车急速停车位置到墙面的间距也不同,移动机器人小车速度越高急速停车位置到墙面的间距也越小。当超声波测距预置值设定为25 cm时,车速为0.36 km/h时,实际停车位置与墙面的距离为23.3 cm,而车速为2.1 km/h时,实际停车位置与墙面的距离为5.4 cm。同样,当超声波测距预置值设定为125 cm时,车速为0.36 km/h时,实际停车位置与墙面的距离为123.9 cm,而车速为6.46 km/h时,实际停车位置与墙面的距离为5.5 cm。这说明,移动机器人小车速度对停车特性的影响很大。从误差分析上看,当电机转速为5 r/min,即车速为0.4 km/h时,实际停车距离与设定停车距离最大误差不超过1.34 cm。这是因为当车速比较低的情况下,虽然超声波检测距离需要一定的时间等待回响信号到来,但是这个时间大约为20 μs,在车速较低时可以忽略。这与在停止状态下的测距结果基本一致。为了清晰地看出误差变化情况,在停车距离与行车速度关系曲线上作出误差线。从误差线上可以看出:当车速小于1 km/h时,最大误差不超过1.80 cm;当车速大于2 km/h时,误差稍微变大。这主要是因为小车的起步距离较长时小车容易跑偏,从而造成了传感器测距的不准确。影响测量的主要误差来源有两方面:(1)车轮与地面打滑、小车自身惯性、小车偏离运动中心线以及人为测量的误差等;(2)超声波传感器自身测距需要一定的时间来计算回响信号。从图5中还可以看出:随着车速越来越大,每一组实验中实际停车位置越来越靠近墙壁,直到小车撞到墙上。

图5 不同识别距离下实际停车距离与行车速度关系

3.2.2 结果分析

运用插值法,计算出在不同识别距离下停车位置分别为20、30、50、60、80、100 cm处的行车速度。可以得到:保证在20 cm处停车的最小速度应为0.94 km/h,最大速度应为5.89 km/h;保证在100 cm处停车的最小速度应为0.86 km/h,最大速度应为2.43 km/h;其他停车位置处的车速以此类推。当行驶速度增大时,要保证能在给定的位置下停车时的识别距离也随之增大,在不同停车位置下,识别距离与行车速度之间的变化趋势大致相近。通过多项式回归分析,可以得出识别距离与行车速度满足如下关系:

=++

(8)

其中:为行车速度,km/h;是超声波预置值的识别距离,cm。系数、和可通过试验测试获取的数据进行回归分析确定。

本文作者对试验测试的6种不同停车识别距离与行车速度关系进行了多项式回归分析,如图5所示。然后如表1所示,通过平均、和值后,确定了系数=2.4和系数=5.4。而′是与小车与障碍物之间的停车距离预置值相关的值,并用=′+来描述。由于为预置值,所以确定值就行。通过计算确定=-2 cm,如表1所示。把以上试验结果确定的参数、和值代入到式(8)可得到计入小车车速、与障碍物之间的停车预置值相关的超声波识别距离之间的关系式(9):

=24+54+′-2

(9)

式中:为小车行驶速度;为超声波识别距离。

表1 试验测试分析获取的系数

取∈[0.5,6] km/h,根据公式(8),计算出,∈[21.3,216.8] cm,如图6所示。可以看出:6种情况下保证在给定停车位置时,理论识别距离曲线与实际识别距离曲线吻合度较高。为了说明理论分析的准确性,下面对理论分析进行实验验证。

图6 不同停车距离下识别距离与行车速度关系

3.3 实验验证

为了进一步验证公式(9)在机器人实际运动情况下的适用性,在Keil5软件中编写程序,算法流程如图7所示。为了进一步验证常数′值对停车距离的影响,分别在20、50、80 cm不同位置下进行实验测试,分别取常数′-2 cm,′-5 cm,′-8 cm三种不同值,式中′为小车与障碍物之间的停车距离预置值相关的值,结果如图8所示。可以看出:当取′-5 cm、′-8 cm时,实际停车距离都出现了小于期望停车距离的情况,并且停车位置波动比较大;而取′-2 cm时,虽然实际停车距离略大于期望停车距离,但从实际角度出发,在期望停车距离之外可以停车,保证了行驶的安全性,取′-2 cm时更加符合实际需要,并且最大测量误差不超过2.9 cm。从而验证了此算法模型在机器人小车上的可行性。

图7 自动变速测距避障流程

图8 不同C′值时行车速度与停车距离之间的关系

根据此算法编写程序,并且将代码烧录到单片机中进一步验证。结果表明:识别避障距离是一个动态变化的值,车速增大识别距离增大,车速减小识别距离减小。当车速为0时,=′-2 cm,即识别距离等于期望停车距离减2 cm。此算法模型不仅解决了小车在高速运行时无法在给定的位置处及时避障停车的问题,而且进一步提高了机器人小车行驶的安全性。

4 总结

提出了一种基于 STM32 的机器人小车在不同车速下的超声波测距方案,其结构简单,在实验室已进行测试。所作工作包括:

(1)完成了移动机器人小车的搭建并进行了运动学建模分析;

(2)根据多次的实验测试结果,得到了超声波识别距离与行车速度的关系并根据多项式回归分析确定了系数、值;

(3)对提出的动态测距停止避障算法模型在STM32单片机中编程验证,得出了当取′-2 cm时此算法模型更加精确并符合期望值的结论。

猜你喜欢

移动机器人测距车速
基于RSSI测距的最大似然估计的节点定位算法
移动机器人自主动态避障方法
移动机器人路径规划算法综述
类星体的精准测距
基于四元数卷积神经网络的移动机器人闭环检测
基于改进强化学习的移动机器人路径规划方法
2012款奔驰R300车修改最高车速限制
跑跑卡丁车
浅谈超声波测距
北京现代途胜车车速表不工作