Turtlebot3模拟仿真(参考书《ROS机器人开发实用案例分析》卡罗尔·费尔柴尔德, 托马斯·L.哈曼 机械工业出版社, 2020年4月)

1.下载turtlebot3模拟软件(注意替换为自己的ROS版本)

sudo apt-get install ros-noetic-joy ros-noetic-teleop-twist-joy ros-noetic-teleop-twist-keyboard ros-noetic-laser-proc ros-noetic-rgbd-launch ros-noetic-depthimage-to-laserscan ros-noetic-rosserial-arduino ros-noetic-rosserial-python ros-noetic-rosserial-server ros-noetic-rosserial-client ros-noetic-rosserial-msgs ros-noetic-amcl ros-noetic-map-server ros-noetic-move-base ros-noetic-urdf ros-noetic-xacro ros-noetic-compressed-image-transport ros-noetic-rqt-image-view ros-noetic-gmapping ros-noetic-navigation

2.下载编译功能包到catkin_ws/src目录下(无法访问尝试切热点)

创建工作空间

mkdir -p catkin_ws/src

cd ~/catkin_ws/src

git clone ​​​​​​​https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git

git clone https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git

git clone https://github.com/ROBOTIS-GIT/turtlebot3.git

cd ~/catkin_ws

catkin_make

说明:turtlebot3,turtlebot3msgs,turtlebot3simulations目录位于工作空间的src目录下。turtlebot3_simulations目录下包含了turtlebot3_fake功能包,用于在Rviz下对Turtlebot3进行模拟。turtlebot3_simulations目录下包含了turtlebot3_gazebo功能包,用于在Gazebo中对Turtlebot3模拟

3.设置环境变量

export ROSCORE_URI=http://localhost:11311

export ROS_HOSTNAME=localhost

4.Rviz启动turtlebot3模拟软件

选择模型

export TURTLEBOT3_MODEL=burger

设置环境变量

source devel/setup.bash

启动模拟环境

roslaunch turtlebot3_fake turtlebot3_fake.launch

说明:该语句启动了3个节点ros_state_publisher,rviz以及turtlebot3_fake_node

快捷键Ctrl+alt+T新建终端(第2个终端),用于键盘控制turtlebot(每新开一个终端都要重新输入一遍前三句话)

cd catkin_ws

export TURTLEBOT3_MODEL=burger

source devel/setup.bash

roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch

 注意把终端窗口放在rviz窗口上面,用WASD键控制(类似于turtle)

5.Gazebo启动Turtlebot3模拟软件

可以把之前的2个终端都关掉了,或者留1个终端(输入Ctrl+C终止,觉得太乱输入clear清除代码,这样做不需要重新设置环境变量)

(1)选择模型、设置环境变量

cd catkin_ws

export TURTLEBOT3_MODEL=burger

source devel/setup.bash

启动空模拟环境(终端1)

roslaunch turtlebot3_gazebo turtlebot3_empty_world.launch

在Gazebo界面左上角file-Quit并在终端按下Ctrl+C,若关闭终端需要重新设置TURTLEBOT3_MODEL模型

启动一个包含多物体的场景(还是在终端1操作,也可以在VSCode环境下跑,这里就不再赘述)

roslaunch turtlebot3_gazebo turtlebot3_world.launch

新建终端控制burger的移动(类似于rviz的步骤)(终端2)

cd catkin_ws

source devel/setup.bash

export TURTLEBOT3_MODEL=burger

roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch

(2)自主导航,Ctrl+C终止键盘控制进程,关闭终端窗口,打开新界面窗口(终端2)(终端1保留,其实就是多物体的环境保留,把操作机器人移动的终端关掉)

cd catkin_ws

source devel/setup.bash

export TURTLEBOT3_MODEL=burger

roslaunch turtlebot3_gazebo turtlebot3_simulation.launch

(3)Rviz将以Turtlebot3为中心进行可视化显示(终端3)

新建终端,设置模型,启动launch文件

cd catkin_ws

source devel/setup.bash

export TURTLEBOT3_MODEL=burger

roslaunch turtlebot3_gazebo turtlebot3_gazebo_rviz.launch

说明:3个终端分别运行:环境,gazebo中自主导航的机器人,rviz雷达显示——每个终端都要设置环境变量source devel/setup.bash和设置模型export TURTLEBOT3_MODEL=burger

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值