ROS理论与实践(以移动机器人为例)连载(九) ——机器人自主导航

本文介绍了ROS中的导航框架,包括move_base和amcl功能包的详细工作原理,如全局和本地规划、Action机制、配置参数等。通过案例展示了机器人在导航仿真的动态避障能力,并提供了Python和C++的自动导航程序示例,同时探讨了move_base与gmapping结合的实时建图与导航应用。
摘要由CSDN通过智能技术生成

本章功能包链接: https://pan.baidu.com/s/1a6hUN4S3kdHzB6UplAtkrQ 密码: ri5s

可以扩展阅读的资料链接↓
在这里插入图片描述
Fetch Robotics 仓储机器人:https://fetchrobotics.com/products-technology/cloud-robotics-platform-for-warehouse-automation/.


1. ROS中的导航框架

在这里插入图片描述

Created with Raphaël 2.2.0 Goal AMCL Path Planner:全局规划(最短时间/最短路程) move_base:本地规划(实时避障) /cmd_vel+/odom Base Controller Motor Speeds

基于move_base的导航框架 wiki

在这里插入图片描述

sudo apt-get install ros-melodic-navigation
  • global_planner:全局规划,目的是规划出最优路径;
  • local_planner:本地规划,目的是根据周围障碍物避障对路径进行修改;
  • global_costmap:全局代价地图;
  • local_costmap:本地代价地图;
  • recovery_behaviors:恢复机制,“撞了南墙能回头”;
  • map_server:用来提供地图;
  • amcl:输入是激光雷达信息,是一个定位功能包;
  • odometry source:里程计信息,通过编码器微分得到的当前位置信息。

可以参见Setup and Configuration of the Navigation Stack on a Robot

2. 导航框架中的关键功能包

1)move_base

在这里插入图片描述

  • 全局路径规划(global planner)
    • 全局最优路径规划;
    • D i j k s t r a Dijkstra Dijkstra(最优距离)或 A ∗ A* A算法(时间较短)。
  • 本地实时规划(local planner)
    • 规划机器人每个周期内的线速度、角速度,使之尽量符合全局最优路径;
    • 实时避障;
    • T r a j e c t o r y Trajectory Trajectory R o l l o u t Rollout Rollout D y n a m i c
  • 8
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值