【ROS】Gazebo仿真环境搭建

最近博主学习了如何在Gazebo中搭建仿真环境,并编写相应的launch文件去调用自定义地图,故在这里分享给大家,大家也可以学习以下,首先,参考上一讲中【ROS】URDF集成Gazebo的例程,上一讲内容荣链接如下,有需要的小伙伴可以去查看一下。
链接: ROS】URDF集成Gazebo.

一、Gazebo中自定义地图

打开vs code,打开fjy_xm路径下的catkin_urdf_gazebo文件,并在urdf_gazebo功能包下新建一个worlds文件夹。
打开两个终端,在其中一个终端中启动roscore,在另一个终端中输入以下指令,启动gazebo环境,在上一讲中也说明了如何导入gazebo_models。

rosrun gazebo_ros gazebo

在这里插入图片描述
在这里插入图片描述
点击Edit菜单中的Building Editor,进行地图的创建,在下图的白板位置可以拖拽左侧菜单栏中的东西自定义设计地图,下图是博主自己设计的一个地图。
在这里插入图片描述
添加完毕后,选择File中的Exit Building editor,然后再选择 File中的Save World as 选择保存路径(将其放到刚才创建的worlds文件夹中),文件名自定义,后缀名设置为 .world,博主在这里将自己创建的地图命名为map1.world。
在这里插入图片描述
这样我们就完成了自定义地图的创建了。

二、在launch文件编写程序将自定义地图导入gazebo

在urdf_gazebo功能包下的launch文件夹下新建一个gazebo_map.launch文件,编写以下程序。在加载地图的同时,将上一讲的小车模型也加载到自定义地图中。

<launch>
    <!-- 将 Urdf 文件的内容加载到参数服务器 -->
    <param name="robot_description" command="$(find xacro)/xacro $(find urdf_gazebo)/urdf/xacro/gazebo_car_union.xacro" />
    <!-- 启动 gazebo -->
    <include file="$(find gazebo_ros)/launch/empty_world.launch" >
         <arg name="world_name" value="$(find urdf_gazebo)/worlds/map1.world" />
    </include>
    <!-- 在 gazebo 中显示机器人模型 -->
    <node pkg="gazebo_ros" type="spawn_model" name="model" args="-urdf -model mycar -param robot_description"  />
</launch>

在vs code终端下运行roslaunch urdf_gazebo gazebo_map.launch,运行效果如下。
在这里插入图片描述
这样,我们就完成了自定义地图的创建和自定义地图的加载了。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值