JetBot ROS AI Kit 教程三、自主导航
来自Waveshare Wiki
JetBot ROS AI Kit 进阶教程目录
- JetBot ROS AI Kit 教程一、雷达数据分析
- JetBot ROS AI Kit 教程二、SLAM激光雷达建图
- JetBot ROS AI Kit 教程三、自主导航
- JetBot ROS AI Kit 教程四、ROS OpenCV
- JetBot ROS AI Kit 教程五、ROS智能语音
- JetBot ROS AI Kit 教程六、Jetson nano 安装ROS系统及环境配置
- JetBot ROS AI Kit 教程七、Ubuntu 虚拟机安装ROS系统及环境配置
- JetBot ROS AI Kit 教程八、ROS语音环境配置
- JetBot ROS AI Kit 主页
步骤1、启动导航程序
- 首先保持雷达正常转动,在机器人端,运行如下命令启动导航程序
- 【注意:启动slam建图节点时会默认开启底盘节点和雷达节点,所以请先关闭机器人底盘节点和雷达节点,避免启动nav建图节点时发生冲突,产生错误】
roslaunch jetbot_pro nav.launch
- 在虚拟机中输入如下命令,通过RVIZ图像工具查看slam建图。
roslaunch jetbot_pro view_nav.launch
- 图像界面显示如下,由于启动后初始化机器人坐标为地图原点,与机器人实际位置不一致,可以使用 2D Pose Estimate工具设置机器人位置,点击绿色箭头图标,选择机器人在地图中的大概位置点击一下不松开,拖动鼠标使绿色箭头指向小车正前方朝向
步骤2、单点导航
- 正确设置机器人位置后,使雷达数据与地图大概重合即可,导航时ACML会重新定位校正
- 可以使用2D NaV Goal工具,可以发布导航目标位置,机器人将自动规划路径导航到目标位置
步骤3、多点导航
- 在上面单点导航的基础上,在机器人中运行如下命令启动多点巡航
rosrun jetbot_pro multipoint_nav.py
- 点击 Publish Point 添加导航点,机器人将在导航点之间巡航导航
步骤4、边导航边建图
- 在机器人端运行如下命令启动导航程序
roslaunch jetbot_pro slam_nav.launch
- 在虚拟机中运行如下命令启动rviz图像工具查看
roslaunch jetbot_pro view_nav.launch
- 点击2D NaV Goal工具,可以发布导航目标位置,机器人将自动探索路径导航到目标点,而且边扫描地图发布
- 扫描完成地图后,在机器人中运行以下命令保持地图
cd ~/catkin_ws/src/jetbot_pro/maps && ./savemap.sh
- 同时可以运行以下程序启动多点巡航
rosrun jetbot_pro multipoint_nav.py