gazebo model的sdf文件中的uri路径

2023-05-16

让我们先看一个gazebo模型的sdf文件iris_depth_camera_down.sdf

<sdf version='1.5'>
  <model name='iris_depth_camera_down'>
    <include>
      <uri>model://iris</uri>
    </include>

    <include>
      <uri>model://depth_camera_new</uri>
      <pose>0 0 -0.05 0 1.5708 0</pose>
    </include>

    <joint name="depth_camera_new_joint" type="fixed">
      <child>depth_camera_new::link</child>
      <parent>iris::base_link</parent>
      <axis>
        <xyz>0 0 1</xyz>
        <limit>
          <upper>0</upper>
          <lower>0</lower>
        </limit>
      </axis>
    </joint>
  </model>

显然这里面用uri链接打开了iris和depth_camera_new两个模型。

问题是,这两个模型的文件路径是什么?

答案在https://answers.gazebosim.org/question/6568/uri-paths-to-packages-in-the-sdf-model-file/

简而言之,<uri>model://iris</uri>会去找gazebo_model_path路径,而这个路径的申明有几种方法。

1、默认路径

~/.gazebo/models是gazebo会去找的模型默认路径,gazebo中联机下载的模型也会放在这里,也可以把你的模型放在这里,那gazebo一定可以找到。

2、自制model包

也可在自己写的一些ros包的package.xml文件里export这个包里的models文件夹,这个文件夹里的模型也会成为gazebo_model_path。给个参考:

<?xml version="1.0"?>
<package format="2">
  <name>uavros_gazebo</name>
  <version>0.0.0</version>
  <description>The iris_gazebo package</description>

  <license>BSD</license>
  <author>colin</author>
  <maintainer email="lcyfly1@163.com">colin</maintainer>

  <buildtool_depend>catkin</buildtool_depend>
  <build_depend>message_generation</build_depend>
  <depend>message_runtime</depend>
  <depend>std_msgs</depend>

  <depend>gazebo_ros</depend>
  <depend>roscpp</depend>
  <depend>rospy</depend>
  <depend>camera_info_manager</depend>
  <depend>geometry_msgs</depend>
  <exec_depend>depth_image_proc</exec_depend>

  <test_depend>rostest</test_depend>

  <exec_depend>urdf</exec_depend>
  <exec_depend>xacro</exec_depend>


 <export>
    <gazebo_ros
      plugin_path="${prefix}/lib"
      gazebo_media_path="${prefix}"
      gazebo_model_path="${prefix}/models"
      />
  </export>
</package>

下面的命令可以查看gazebo_ros的model path:

rospack plugins --attrib=gazebo_model_path gazebo_ros

3、声明路径

最后,可以在终端或者.bashrc里声明GAZEBO_MODEL_PATH的路径,之后再打开相应的模型就会找到路径了,比较麻烦不推荐。

exprot GAZEBO_MODEL_PATH=${GAZEBO_MODEL_PATH}:path-to-model

 

如果多个路径下面都有同名的model,那么会用到哪个我还不知道,可能有个先后顺序。如果都找不到那就会联网去下载。

最好还是不要用同名的model。

一些gazebo plugin的资料:

http://gazebosim.org/tutorials?tut=ros_gzplugins

http://gazebosim.org/tutorials/?tut=ros_depth_camera

下面是搬运:


 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

gazebo model的sdf文件中的uri路径 的相关文章

随机推荐

  • 为什么说C++引入的强制类型转换比C风格的强制类型转换更安全?

    我目前只体会到两种转换更安全 xff0c static cast和dynamic cast 首先static cast xff0c static cast只能在有 相互联系的类型 中进行相互转换 xff0c 这个相互联系就很微妙 xff08
  • 1000瓶药水,一瓶有毒,用10只老鼠来判断到底是哪一瓶

    1 方法1 xff0c 二分搜索 500 250 125 63 32 16 8 4 2 1 假设毒性在一个小时才会发作 xff0c 这样可以用10只老鼠来判断 xff0c 但是在灌入250瓶的时候 xff0c 必须等灌入500瓶的结果 xf
  • TCP中time_wait解释及解决方法

    首先是四次挥手断开连接的状态变化图 总的来说 xff0c 主动关闭连接的一方才会进入TIME WAIT状态 客户端主动关闭连接时 xff0c 会发送最后一个ack后 xff0c 然后会进入TIME WAIT状态 xff0c 再停留2个MSL
  • git基本命令

    git branch a 显示所有的分支 xff08 本地 43 远程 xff09 git branch 显示本地分支 git branch r 显示远程仓库分支 git checkout Bran 切换到分支 git branch Bra
  • JDK+Maven环境配置

    1 下载JDK8并安装 2 下载Maven 3 配置maven vim bash profile 打开bash配置文件 export Maven 61 34 usr local ApacheMaven 34 export PATH 61 3
  • java中调用scala

    下载scala的SDK 包 xff0c https www scala lang org download all html 注意下载与pom文件中依赖对应的版本 xff0c 解压至指定文件夹 在 bash profile中配置环境变量 s
  • 2018北航计算机 北理工计算机夏令营经验分享

    今天是9月28日 xff0c 推免系统的流程也都完成 xff0c 最终一切也都尘埃落定 之前在网上看到过许多学长学姐的经验分享贴 xff0c 今天所有的事情结束之后 xff0c 也趁还记着 xff0c 就把我的经历也写下来 xff0c 供以
  • 在线教育-谷粒学院学习笔记(九)

    文章目录 1 内容介绍2 搭建项目前台环境NUXT3 整合项目首页4 nuxt路由5 首页数据banner显示 初始配置6 首页数据banner显示 接口7 首页数据banner显示 前端实现8 首页数据显示 热门课程和名师9 Redis复
  • plotjuggler实时绘制ros topic数据流

    ros里安装plotjuggler用 xff1a sudo apt install ros melodic plotjuggler ros 不要用 xff1a sudo apt install ros melodic plotjuggler
  • 汉语拼音码

    汉字拼音首字母列表 本列表包含了20902个汉字 用于配合 GetChineseSpell 函数使用 本表收录的字符的Unicode编码范围为19968至40869 summary gt private static string strC
  • Futaba SBUS协议解析

    Futaba SBUS协议解析 S bus为futaba使用的串行通信协议 实际上为串口通信 但是有几点需要注意 xff1a 在大端小端上 xff0c 网上资料都说的不是很清楚 xff1b 跟TTL串口信号相比 xff0c S bus的逻辑
  • ubuntu 暂时不能解析域名

    错误 1 http security ubuntu com ubuntu xenial security main amd64 curl amd64 7 47 0 1ubuntu2 18 暂时不能解析域名 cn archive ubuntu
  • 全局变量和局部变量的区别

    全局变量和局部变量是面试时常问的问题之一 xff0c 我曾在夏令营面试和就业面试中不止一次的被问到 在这里我总结归纳一下两者的区别 在内存中的区别 这是最重要的区别 全局变量 xff08 外部变量和静态变量 xff09 保存在内存的全局存储
  • Ubuntu18安装成功后 显示未找到wifi适配器

    因为这个问题 xff0c 耽误了好久好久的任务进度 xff0c 搞得爆粗口了好几天 xff0c 最后差点放弃了 但凭着一丝不放弃精神 xff0c 终于解决问题了 总结一些我遇到的问题 xff0c 希望能帮助恼火的朋友们节省宝贵的时间 我尝试
  • px4添加自定义消息进行仿真数据采集

    第一步 xff1a 添加一个新topic 将想要采集模块的数据信息声明成自定义的uORB消息 xff1a 在PX4 msg目录下新建一个格式为 xff1a xxxx msg xff0c 定义消息结构 xff0c 将消息记录到日志当中 简单例
  • 如何将ros下sensor_msgs.msg的Image转换为array

    使用ros numpy package Tools for converting ROS messages to and from numpy arrays Contains two functions arr 61 numpify msg
  • visdom

    跑强化学习代码 xff0c 训练曲线用到visdom Ubuntu下输入指令python m visdom server 一直是Downloading scripts this may take a little while xff0c 无
  • latex表格居中和表格内容居中

    begin table caption Table captions should be placed above the tables label tab1 begin tabular l l l hline Heading level
  • 自动化环境搭建pytest+allure

    pytest安装 安装pytest pip install pytest 61 61 4 0 2 pip install pytest html 生成html测试报告 Allure搭建 1 下载Allure安装包 xff0c 找到对应版本
  • gazebo model的sdf文件中的uri路径

    让我们先看一个gazebo模型的sdf文件iris depth camera down sdf lt sdf version 61 39 1 5 39 gt lt model name 61 39 iris depth camera dow