The repository is meant for leveraging system development and robot deployment for ground-based autonomous navigation and exploration. Containing a variety of simulation environments, autonomous navigation modules such as collision avoidance, terrain traversability analysis, waypoint following, etc, and a set of visualization tools, users can develop autonomous navigation systems and later on port those systems onto real robots for deployment.
Please use instructions on our project page.
- TARE Planner安装
- DSV Planner安装
- FAR Planner安装
- 论文翻译:Autonomous Exploration Development Environment and the Planning Algorithms
vehicle坐标系对应的是机器人的转向中心, turtlebot的话对应的就是机器人的中心位置, 而一般的localization发布出来的都是传感器的位置 比如在我们的代码里面localization最后发布的是sensor的坐标, 所以只需要把localization最后发布出来的传感器坐标系加上一个x和y的偏置就可以得到vehicle坐标系了, 实际上vehicle坐标系只有local planner会用到,在local planner的launch文件里有两个参数sensorOffsetX和sensorOffsetY,这两个就是控制车辆中心和传感器中心之间的偏移量。
代码里当使用摇杆控制的时候,如果把摇杆往两侧推,车就会转向。一样的,如果希望底层能够处理带方向的waypoint,比较简单的方式是写一个类似摇杆控制器的node专门来把处理waypoint的转向,先让机器人使用现有代码到达目标点,然后再发布转向指令让机器人转到目标方向。
-
system_indoor.launch
将 vehicleX vehicleY 传递给 local_planner.launch 下的goalX goalY 表示发送给小车的初始目标位置 将 vehicleX vehicleY 传递给 vehicle_simulator.launch 下的vehicleX vehicleX 表示初始小车状态位置 两者应保持一致,否则启动仿真,小车会自动启动到达goalX goalY
- 生成路径以及在线搜索的时候都是有考虑运动学约束的
vehicleX是当前的机器人位置,vehicleRec是接收到第一帧数据时的位置,因为后面需要使用noDataInited来辅助判断一些负障碍物,也就是没有数据的地方,需要确保是因为传感器视野限制导致没有看到数据而不是当前没有接受到数据导致的没有数据,所以需要设置vehicleRec。在每次清理地形图之后也需要重置这个参数。