本发明涉及一种机器人密度自适应行间导航方法,属于机器人自主导航。
背景技术:
1、近年来,随着科技的飞速发展,机器人已成为实现高效作业不可或缺的重要工具,尤其在复杂多变的环境中,其自适应性和智能化程度的要求愈发严格。传统的导航技术,如全球导航卫星系统(gnss)和即时定位与地图构建(slam)技术,在各类应用场景中发挥着重要作用。gnss技术依赖于卫星信号实现精准定位,但在某些特定环境中,如树冠遮挡、信号反射及多路径干扰等复杂场景下,gnss信号可能变得不稳定甚至失效,导致导航精度大幅下降。而slam技术,虽然通过传感器实时获取环境信息并构建地图,实现自主定位,但在障碍物密集、环境变化迅速的环境中,其定位准确性和地图构建的实时性也会受到显著影响。
2、尽管现有的导航技术在众多领域取得了一定的应用成果,但仍存在不容忽视的缺陷。一方面,由于复杂环境的特殊性,如信号遮挡、反射等干扰因素,gnss和slam技术的定位精度和可靠性受到严重挑战,机器人在自动导航过程中难以保持高精度和高可靠性,进而影响了工作效率和作业质量。另一方面,不同应用场景中的障碍物密度差异显著,这对机器人的导航策略提出了更高要求。在障碍物稀疏的环境中,机器人可以采用较为简单的导航策略;但在障碍物密集的区域,机器人需要对行进路径进行更为精细的规划,以避免碰撞。因此,障碍物密度的变化使得导航过程更加复杂多变,机器人需要具备根据环境动态调整导航策略的能力。然而,现有的机器人行间导航方法往往缺乏这种动态调整机制,导致机器人在不同密度的环境中导航效果不佳,难以满足实际应用的需求。
技术实现思路
1、本发明的目的是提供一种机器人密度自适应行间导航方法,通过在不同密度分布的环境中,使机器人能够自适应地选择最优导航策略,既能在低密度环境中高效直线导航,又能在高密度环境中灵活避障,以解决现有的机器人行间导航方法往往缺乏这种动态调整机制,导致机器人在不同密度的环境中导航效果不佳的问题,从而显著提高机器人的导航精度和效率。
2、为解决上述技术问题,本发明是采用下述技术方案实现的。
3、本发明提供一种机器人密度自适应行间导航方法,包括:
4、获取密度分布不均的环境的三维点云数据,利用半径滤波降低点云密度并限定点云的半径范围;
5、重复以下步骤,直到达到导航结束条件:
6、对所述三维点云数据进行地面点云分割去除地面点云后再进行点云聚类,得到被物体点云簇包裹的三维立方体;
7、记录机器人的当前行驶距离;
8、当机器人的当前行驶距离在预设范围内时,若三维立方体最大长度大于点云半径长度的2/3,则环境密度低,否则环境密度高:
9、若环境密度低,采用改进的随机采样一致性算法拟合所述环境中物体的分布行直线,根据所述物体构成的几何结构得到导航路径,控制机器人自主导航;
10、若环境密度高,将所述三维点云数据压缩为二维点云数据,根据二维点云数据确定机器人前方无障碍物体,并基于人工势场机制将物体几何形状中心线上的点作为虚拟目标点提供引力,将所述虚拟目标点两侧的物体作为斥力障碍物,控制机器人自主导航;
11、其中,当机器人的当前行驶距离不在预设范围内时,将机器人的当前行驶距离重置为0,结束本次迭代。
12、进一步地,还包括,在获取密度分布不均的环境的三维点云数据之后进行点云预处理,得到预处理后的三维点云:
13、利用半径滤波对所述三维点云数据当前帧的左右两侧物体行点云,设定一个以传感器为中心的圆形区域,去除所述圆形区域外的所有点并剔除机器人后方180°点云,得到聚焦后的点云;
14、利用体素下采样技术,将聚焦后的点云所在的点云空间划分为三维体素网格,并在每个体素网格中选择一个代表点云,得到稀疏化后的点云;
15、利用异常值滤波消除稀疏化后的点云中的噪声,得到预处理后的三维点云。
16、进一步地,所述采用改进的随机采样一致性算法拟合所述环境中物体的分布行直线,根据所述物体构成的几何结构得到导航路径,控制机器人自主导航,包括:
17、a. 预设左侧物体行拟合直线和右侧物体行拟合直线,用于表示所述环境中物体的主要分布趋势;
18、b. 根据左侧物体行拟合直线和右侧物体行拟合直线,从所述预处理后的三维点云中获取表示左右两侧物体行的点云簇,并从表示左右两侧物体行的点云簇中各随机选取一个点作为候选点,根据两个候选点得到一条候选直线;
19、c. 预设容差阈值,比较表示左右两侧物体行的点云簇中其余点到候选直线的距离d和容差阈值r大小,进行内外点分割;将所得到的内点进行拟合得到物体的分布行直线;其中,如果d<r则分割为内点,否则分割为外点;
20、d. 重复步骤b-步骤c进行多次拟合,将所得到的内点数量最多的候选直线作为最优物体的分布行直线;
21、e. 预设最优物体的分布行直线属于左侧物体行的点云簇,得到左侧物体行拟合直线的最佳斜率与最佳截距,得到最佳左侧物体行拟合直线,根据左右两侧物体行平行并且行距为固定值,得到最佳右侧物体行拟合直线;
22、f 根据最佳左侧物体行拟合直线和最佳右侧物体行拟合直线,基于平行直线关系得到导航路径,控制机器人自主导航。
23、进一步地,所述导航路径表示为:
24、;
25、式中,表示环境密度低情况下导航路径,表示左侧物体行拟合直线的最佳斜率,表示最佳右侧物体行拟合直线的内点,表示左侧物体行拟合直线的最佳截距,表示左侧物体和右侧物体平行时的行间距。
26、进一步地,还包括利用lqr控制算法在低密度环境下跟踪所述导航路径。
27、进一步地,将所述三维点云数据压缩为二维点云数据,根据二维点云数据确定机器人前方无障碍物体,并基于人工势场机制将物体几何形状中心线上的点作为虚拟目标点提供引力,将所述虚拟目标点两侧的物体作为斥力障碍物,控制机器人自主导航,包括:
28、a. 将所述三维点云数据压缩为二维点云数据;
29、b. 以二维点云数据的中心位置为基点,根据所述环境中物体的形状在机器人前方建立初始几何体并逐步扩大初始几何体的体积,直到一定数量的二维点云落入扩大体积后的几何体内停止,其中,机器人左右两侧的物体可以自由移动;
30、c. 基于人工势场机制建立斥力势场和引力势场,将机器人行驶时左右两侧的物体行作为障碍物对机器人施加斥力,在机器人前方几何体的中心线上距机器人线性距离1m处点设定虚拟目标点对机器人施加引力;
31、d. 将所述斥力和所述引力进行矢量合成得到机器人受到的合力,根据机器人受到的合力,更新机器人的线速度与角速度并控制机器人自主导航。
32、进一步地,所述基于人工势场机制建立斥力势场和引力势场;
33、其中,将所述斥力势场表示为:
34、;
35、式中,表示机器人当前位置所受到的斥力势场,表示斥力势场系数, 表示机器人当前位置到当前障碍物位置的最近距离;表示斥力作用的阈值距离,即左右两侧的物体行宽度的中心距离;
36、其中,将所述引力势场表示为:
37、;
38、式中,表示机器人当前位置所受到的引力势场,表示引力势场系数; 表示在机器人前方几何体的中心线上距机器人线性距离1m处点设定虚拟目标点的位置,引力向量的欧几里得距离平方。
39、进一步地,所述将机器人行驶时左右两侧的物体行作为障碍物对机器人施加斥力,在机器人前方几何体的中心线上距机器人线性距离1m处点设定虚拟目标点对机器人施加引力;
40、其中,将所述斥力表示为:
41、;
42、式中,表示机器人当前位置所受到的斥力,表示机器人当前位置到当前第个障碍物位置的最近距离,表示斥力向量的欧几里得距离;
43、其中,将所述引力表示为:
44、;
45、式中,表示机器人当前位置所受到的引力。
46、进一步地,将所述合力表示为:
47、;
48、式中,表示机器人当前位置所受到的合力,表示吸引势场和排斥势场在当前位置 q 的梯度。
49、进一步地,所述根据机器人受到的合力,更新机器人的线速度与角速度并控制机器人自主导航;
50、其中,将机器人的线速度表示为:
51、;
52、式中,表示机器人的线速度,表示机器人的线速度调节参数。
53、其中,将合力的方向作为机器人的期望行驶方向,计算机器人当前行驶方向与期望行驶方向之间的差异,并利用比例控制方法调整机器人的角速度,将机器人的角速度表示为:
54、;
55、其中,表示机器人的角速度, 表示机器人的角速度调节参数,表示期望行驶方向,表示机器人当前行驶方向。
56、与现有技术相比,本发明所达到的有益效果:
57、1、在导航过程中,本发明能够根据机器人当前行驶距离动态判断环境密度,并灵活选择改进的随机采样一致性算法或人工势场机制进行路径规划,确保了机器人在低密度环境中能快速拟合物体分布行直线,实现高效导航,在高密度环境中能精确识别障碍物,灵活规划避障路径,本发明显著提高了机器人在不同密度环境下的导航效率与精度。
58、2、在低密度环境中,本发明通过预设左右两侧物体行的拟合直线,并从预处理后的三维点云中随机选取候选点生成候选直线,再进行内外点分割,经过多次拟合确定最优物体的分布行直线,有效滤除了噪声点,确保了拟合直线的精确性。进一步地,利用左右两侧物体行平行且行距固定的特性,自动推导出最佳左侧物体行的拟合直线和最佳右侧物体行的拟合直线,从而快速生成导航路径,不仅简化了导航路径的规划流程,还提高了路径的可靠性和实用性,尤其适用于复杂多变的环境,为自动驾驶、机器人导航等领域提供了更为高效和智能的解决方案。
59、3、在高密度环境中,本发明通过人工势场机制,实现了对机器人前方无障碍物体的精准识别与虚拟目标点的智能设定。同时本发明能够动态感知并应对左右两侧自由移动的障碍物,通过计算斥力与引力的合力来实时调整机器人当前行驶方向和速度,从而实现了机器人在复杂环境中的自主导航与灵活避障,显著提升了导航的精确性和安全性。
60、4、本发明还结合了人工势场机制和lqr控制算法,进一步增强了机器人的稳定性和响应速度,使得机器人能够在复杂环境中实现更加平稳、可靠的自主导航,不仅显著提高了机器人的工作效率,还大大降低了对外部监控和干预的依赖。