ROS学习--(十九)使用Gazebo模拟器
来源:互联网 发布:java环境变量有什么用 编辑:程序博客网 时间:2024/05/21 16:37
Stage模拟器是模拟二维平面的模拟器,而Gazebo则是三维的,可以自己在地图上添加几何体。
先按前面的教程做完,安装了turltebot,启动Gazebo模拟器
$ roslaunch turtlebot_gazebo turtlebot_world.launch
这样就启动成功了,第一次启动可能要等个几分钟或十几分钟,因为要从网络上获取模型的更新,如果打开后发现窗口中什么都没有,则看看终端有没没有说是在获取更新之类的信息。
先执行一下命令$ sudo apt-get install ros-indigo-turtlebot-apps ros-indigo-turtlebot-rviz-launchers
接下来控制模拟机器人移动,有两种方法,一种是通过手柄,一种是用键盘
键盘:$ roslaunch turtlebot_teleop keyboard_teleop.launch --screen
罗技手柄:$ roslaunch turtlebot_teleop logitech.launch --screen
接着在开一个RViz,Gazebo相当于模拟现实世界,而RViz获得对周围的事物的传感器信息。
接下来我们试着创建地图
roslaunch turtlebot_gazebo gmapping_demo.launch
如果运行了这条命令行后报错,那么就要执行一下步骤
先下载压缩包ros-indigo-gmapping_1.3.7.orig.tar.gz,这个只能自己找了。
下载完后将目录转到~/catkin_ws/src
执行tar xvf ../../ros-indigo-gmapping_1.3.7.orig.tar.gz
意思是将压缩包解压。
然后执行mv ros-indigo-gmapping-1.3.7/ gmapping
将文件夹移动到src/gmapping,到catkin_ws下的src文件夹中看,应该有gmapping。
然后进入该文件夹的src文件夹中,打开slam_gmapping.cpp,找到409行,将FLT_EPSILON改为0。003。保存,退出
回到终端,执行以下命令你个
cd ..catkin_makesudo cp devel/lib/gampping/slam_gmapping* /opt/ros/indigo/lib/gmapping/
再次执行roslaunch turtlebot_gazebo gmapping_demo.launch,再执行roslaunch turtlebot_rviz_launchers view_navigation.launch
控制模拟机器人运动,可以看到地图正在丰富(如果遇到rviz打开连机器人都没有显示或者打不开提示rviz进程死掉的,试试source /opt/ros/indigo/setup.bash)
保存地图 $ rosrun map_server map_saver -f /tmp/my_map
关掉所有终端,从第一步开始重新做起,但最后一步是打开地图而不是保存
roslaunch turtlebot_gazebo amcl_demo.launch map_file:=<full path to your map file>
这里我们的路径就是/tmp/my_map,yaml
- ROS学习--(十九)使用Gazebo模拟器
- ROS的初步学习(二)--使用Gazebo模拟器
- ROS中gazebo工具学习(使用gazebo加载机器人模型)
- ROS Gazebo(一):安装与使用
- ROS学习--(十八)使用stage模拟器
- ROS Gazebo(三):启动gazebo/URDF
- ROS Gazebo(二):概述
- ROS Gazebo(四):ROS Control
- 【ROS Gazebo专题】二、Gazebo的使用上
- 【ROS Gazebo专题】三、Gazebo的使用下
- RoboCup中使用Gazebo和ROS
- 机器人操作系统ROS笔记--Gazebo的使用
- ROS Gazebo(五):ros_control和gazebo仿真总结
- 安装ros、gazebo、moveit(rviz)
- ROS-NAOqi(rviz moveit gazebo等)
- ROS-NAOqi(rviz moveit gazebo等)
- ROS学习(三)机器人模拟器
- gazebo学习(一)
- STL之vector简单实现
- springMVC
- Oracle分区表的概念及操作
- ReactNavtive框架教程(6)(完)
- 利用python获取指定url在ATS中缓存对象的信息
- ROS学习--(十九)使用Gazebo模拟器
- WSGI研究
- HDU 1394 Minimum Inversion Number
- java类的加载及初始化过程
- 20150806解题报告
- poj 1186
- Reactive Cocoa中@weakify和@strongify实现分析
- golang入门之环境配置和基本语法
- js实现继承的多种方式