1,097
社区成员




非常感谢大神们的开源工作,在拜读代码的过程中遇到了几个小问题,希望大神们能够答疑解惑一下~
1、useInclToStop是使用线性速度停止的意思吗?对应的两个关联参数是slowDwnDisThre和inclRateThre,指的是停止前的减速距离和线性函数斜率吗?
2、pubSkipNum的作用是什么呢,是减少消息发布数吗?是否跟pointPerPathThre参数有关?
3、checkRotObstacle和checkObstacle的区别是什么呢?
4、adjacentRange是指的避障距离吗?
2021.11.18:
在autonomous_exploration_development_environment包中有两个与地形分析有关的cpp,terrainAnalysis.cpp和terrainAnalysisExt.cpp,这两个文件的区别是什么呢?关于(Fast Likelihood-based Collision Avoidance with Extension to Human-guided Navigation)文中体素概率分布的公式是不是在其中体现了?
2021.11.22:
在拜读过大神们的文章后,我想问一下关于Explored Volume这一项实验数据是通过什么方法画出的曲线呢?包括跟其他方法的比对?
你好,谢谢你的提问,下面逐一回答你的问题:
1.这几个参数的意义确实是和你说的一致。
2.pubSkipNum是用来控制cmd_vel发布的频率的,这个和pointPerPathThre并没有关系。使用这个参数只是想在不影响整个循环频率的前提下控制cmd_vel的频率,你可以根据自己目标节点需要的频率去调节。
3.checkObstacle是控制是否做碰撞检测的,这个值为false就是完全不做碰撞检测,设为true就是smart joystick模式。checkRotObstacle是控制是否检测在机器人半径范围内的点云导致的碰撞,比如机器人本体携带的一些物体。
4.adjacentRange是机器人做碰撞检测的最大范围(并不是最终的范围),在这个范围内的点都会首先被加入到碰撞检测的点云内,但是这并不是最终碰撞检测的范围,最终检测的范围是和速度相关的,小于这个值的。
5.terrainAnalysis.cpp是做小范围的地形分析,另一个是做大范围的地形分析,前者用于避障,比较精细,后者用于上层规划,会粗糙一些。体素概率分布在path文件夹中的.m文件里有所体现,在cpp文件直接用了离线生成的结果。
6.Explored Volume是统计机器人建出的点云地图中点的数量然后乘以每个点代表的体积得到的,每个点代表的体积实际上是点云的分辨率,这个可以使用pcl降采样得到不同密度的点云。