输入ros2 launch nav2_bringup tb3_simulation_launch.py headless:=False后只能打开RVIZ而无法打开Gazebo的问题,多次尝试解决后发现只是多等待一会儿即可,在此给同样学习Navigation2的朋友们提个醒 。
Getting Started — Nav2 1.0.0 documentation
1.安装Navigation包
sudo apt install ros-<ros2-distro>-navigation2
sudo apt install ros-<ros2-distro>-nav2-bringup
2.安装Turtlebot 3包
sudo apt install ros-<ros2-distro>-turtlebot3-gazebo
将<ros2-distro>改为你的版本,比如我的版本是foxy,如下:
sudo apt install ros-foxy-navigation2
sudo apt install ros-foxy-nav2-bringup
sudo apt install ros-foxy-turtlebot3-gazebo
3.设置环境变量
source /opt/ros/<ros2-distro>/setup.bash
export TURTLEBOT3_MODEL=waffle
export GAZEBO_MODEL_PATH=$GAZEBO_MODEL_PATH:/opt/ros/<ros2-distro>/share/turtlebot3_gazebo/models
4.在3的终端中输入以下ros2命令
ros2 launch nav2_bringup tb3_simulation_launch.py headless:=False
这时顺利的话,RVIZ和Gazebo都将成功打开。
但是小古这里只打开了RVIZ,而Gazebo却卡住了,小古四处寻找解决方法,还是无济于事,最终看到下面这里https://github.com/ros-navigation/navigation2/issues/2757#top ,其中也有类似之前无法解决问题的回答,此外也有两个回答是:多等一会儿,等待了四五分钟之后Gazebo确实成功打开了,等待过程中最好不要进行其他影响此进程的操作。
这时左下角的“Startup”是无法操作的,需要我们手动确定机器人当前位置,点击RVIZ页面上方的“2D Pose Estimate”,然后用鼠标光标确定大致位置即可。