ROS学习--(十八)使用stage模拟器
来源:互联网 发布:三国杀 姜维 知乎 编辑:程序博客网 时间:2024/06/06 20:44
因为实验室的kuboki创建地图有些问题,所以我先学如何使用模拟器
> roslaunch turtlebot_stage turtlebot_in_stage.launch
这样就可以打开了。
在turtlebot_stage中有以下文件,都是预设的launch和设置文件
$ launch/turtlebot_in_stage.launch$ maps/maze.png$ maps/maze.yaml$ maps/stage/maze.world$ maps/stage/turtlebot.inc$ rviz/robot_navigation.rviz
因为我们要修改到里面的文件,所以我们先做个备份可以直接在文件夹中操作,也可以用命令行
cp maps/maze.png ~/stageTutorial/tutorial.pngcp maps/maze.yaml ~/stageTutorial/tutorial.yamlcp maps/stage/maze.world ~/stageTutorial/tutorial.world
第一行输入后就会发现有错误了。找不到maps/maze.png这个文件,我们先用cd把路径转到turtlebot_stage就行了,cp的意思是把第二个参数复制粘贴到第三个参数路径,且名字重命名
修改地图
图片可以用任意图片编辑器修改,,然后我们的world和yaml文档仍然指向之前的文件,所以我们需要做些修改
首先是tutorial.yaml文档。将image从maze.png改成tutorial.png
image:maze.png
改成
image:tutorial.png
接着是tutorial.world,将
name "maze"bitmap "../maze.png"
改成
name "tutorial"bitmap "tutorial.png"
×这里我在学习时遇到的问题,维基上是name “tutorial”world是错的,还有要将tutorial.png前面的。。/去掉,因为是在同一个文件夹中,而。。/意思是上一级目录,如果不这样做会提示有一个进程死掉了
注意到include “turtlebot.inc”,但我们的路径需要修改,修改为include “/opt/ros/indigo/share/turtlebot_stage/maps/stage/turtlebot.inc”
接着我们启动模拟器
roslaunch turtlebot_stage turtlebot_in_stage.launch map_file:="~/stageTutorial/tutorial.yaml" world_file:="~/stageTutorial/tutorial.world"
可以看到rviz和stage simulator正常启动。
接下来我们往地图里面添加障碍
先新建文档myBlock.inc,复制代码
define block model( size [0.500 0.500 1.500] gui_nose 0)
gui_nose的意思是我们的模型的前方是否需要有一个方向指示器
接着修改world文档
第二行添加include "myBlock.inc"
最后添加
#adding blocksblock(pose [2.000 4.000 0.000 0.000 ] color "green")block(pose [2.000 4.000 0.000 0.000 ] color "red")
再次启动,可以看见stage模拟器上多了两个小方快
- ROS学习--(十八)使用stage模拟器
- ROS学习--(十九)使用Gazebo模拟器
- ROS的学习(十八)使用rosserial创建一个publisher
- ROS的初步学习(二)--使用Gazebo模拟器
- ROS 使用stage进行(LaserScan)激光扫描仿真
- ROS学习(三)机器人模拟器
- ROS 使用stage进行(LaserScan)激光扫描仿真 51cto
- ROS(6):ROS安装rviz模拟器
- ROS 模拟激光仿真数据 使用stage进行仿真 在stage中控制两个机器人
- ROS教程(十八):接下来做什么?
- ROS学习--(九)使用rosed编辑ROS的文件
- MYSQL学习笔记(十八)使用视图
- ROS探索总结(十八)——重读tf
- 学习笔记(十八)
- 《汇编语言》学习(十八)
- 机器学习(十八)
- python学习(十八)
- ROS学习笔记:tf的学习与使用(一)
- Implement Queue using Stacks
- 细数百度公司的知名开源项目
- pat-advance(1069-1072)
- Jquery 判断radio,selelct,checkbox是否选中
- 搞懂树状数组
- ROS学习--(十八)使用stage模拟器
- Mysql的DATE_FORMAT()应用
- iOS开发系列--C语言之构造类型
- 结构体套用二级指针
- 用脚本批量执行redis命令
- 【数据库】MySQL乱码解决(存入数据乱码和查询输出乱码)
- 物联网架构演进和微信智能设备平台开发
- CArray类
- WinDbg入门教程