环境:Ubuntu18.04+ROS melodic 版
本文参考《ROS机器人编程实践》中的内容,一步步构建了一个能在Turtlebot3 Gazebo仿真环境中到处移动的机器人。主要步骤如下:
1、Turtlebot3 Gazebo仿真环境搭建
2、通过 cmd_vel 话题控制Turtlebot3在Gazebo仿真环境下运动
3、获取Turtlebot3的激光扫描数据话题scan (sensor_msgs/LaserScan)感知障碍物的存在
4、综合2和3 编写Python代码实现Turtlebot3在仿真环境中自动避障随机移动
1、Turtlebot3 Gazebo仿真环境搭建
安装ros的桌面完整版默认也是没有Turtlebot3相关的包的,使用前必须先安装,一开始尝试 sudo apt install 方式安装相关包,但是报错,后来通过源码编译安装的方式装好了,过程如下:
cd ~/catkin_ws/src/
git clone https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git
git clone https://github.com/ROBOTIS-GIT/turtlebot3.git
git clone https://github.com/ROBOTIS-GIT/turtlebot3_simulations
git clone https://github.com/ROBOTIS-GIT/turtlebot3_turtlebot3_machine_learning
cd ~/catkin_ws && catkin_make
编译成功后,先 source ~/catkin_ws/devel/setup.bash (也可以把这条写到 ~/.bashrc 里),然后就可以通过下面的指令启动turtlebot3_gazebo仿真环境了:
roslaunch turtlebot3_gazebo turtlebot3_world.launch
这是顶视图,有时我们喜欢改变视角观察,Gazebo界面操作方法:左键单击拖动——平移,中键单击拖动——改变观察角度,滚轮缩放,右键单击拖动——缩放。例如我们可以调整成下面的样子: