URDF-Importerを使うコツ我得到了模式

URDF 文件是 ROS 的 3D 模型,可以加载到 Unity 中。
如果你使用已经提供的 URDF-Importer 是可以的,但是根据文件的不同,你可能需要一些技巧来导入它。
所以我会在处理每种情况时尝试读取无法一口气读取的URDF。
URDF-Importerを使うコツ

准备1

首先,URDF-Importer的介绍总结如下。还包括一个视频。

本文假设 URDF-Importerv0.5.2 版本。

准备2

下载已发布的 URDF。
① 劳埃德一号:https://github.com/Ninagawa123/roid1
②高达:https://github.com/gundam-global-challenge/gundam_robot
③预制:https://github.com/chikuta/premaidai_description
这样的

如果你习惯了,请使用 git clone。
当然,您也可以以 zip 格式下载它并在桌面上继续您的工作。从上面存储库的绿色代码按钮下载 ZIP。

URDF-Importerを使うコツ

提示 1 如果您可以阅读 .urdf 文件

①roid one 有一个适合进口商的.urdf 文件。
URDF-Importer 已经安装在 Unity 的 Assets 目录中 → 放下 URDF 文件夹 → 在里面roid1_urdf_unity.urdf右键单击 → 从选定的 URDF 文件中选择导入机器人。
你可以通过这样做来阅读它

提示2:如果有.urdf文件但层次结构不同

② Gundam 有一个.urdf 文件,但目录不适合原来的样子。因此,需要在导入时告诉 URDF-Importer 根目录或单个文件的路径。我在上面的视频中向您展示了如何。
另外,如果根目录的选择不起作用,我认为技巧 3 会有所帮助。

提示 3:当您需要重写 .urdf 文件时

如果不能一口气读完,可以通过组织URDF-Importer的层次结构来读。
首先,将 Assets 中的 .urdf 文件目录更改为

URDF
 ├ xxx_description
 │       └meshes
 │         └.stlや.daeファイル
 └ xxx.urdf

重新排列它
似乎顶级目录现在应该是 URDF。

接下来,清理 xxx.urdf 中文件的网格数据路径。

      <geometry>
        <mesh filename="package://xxx_description/meshes/xxx.stl" />
      </geometry>

“package://”表示“URD​​F”目录,如上所示,指定路径,以使网格文件主体的位置与之前重新排列的层次结构相匹配。
如果您在代码中找到一个相关部分,让我们一次性转换它并替换。

技巧 4 从 .xacro 转换为 .urdf

不幸的是,URDF-Importer v0.5.2 版本只能读取 URDF。只有 .xacro 文件的文件无法按原样读取,因此需要转换一次。

例如,目前③的premade中没有.urdf。
整个模型的.xacro在robots目录下,所以转换成.urdf。

要进行转换,您现在将使用带有 ROS 的 Ubuntu 环境。
如果没有ROS环境,请搜索如何安装ROS...

$ cd ~catkin_ws/src #いつものROSのワークスペース

,把对应的.xacro文件所在的目录和父目录放在一起,然后

$ roscd
$ catkin build
$ source ~/catkin_ws/devel/setup.bash(環境によりパスが違うかも?)


现在转换的路径已经通过了,所以cd到xxxx.xacro文件所在的层次,

xacro xxxx.xacro > xxxx.urdf

会做。
这将创建一个扩展的 .urdf,因此我认为您可以在技巧 3 → 技巧 1 的过程中阅读它。

执行结果

URDF-Importerを使うコツ

我能够使用相同的步骤将各种 URDF 文件加载到 Unity 中。
RP2经常在ROS书籍中被提及,但我感觉这次是第一次在三个维度上看到它。

我还没能仔细研究每个模型的内部结构,所以有些可能需要修改才能使用。

奖励 1:召唤 nao 有点困难

nao 似乎并没有提供mesh文件本身的数据,所以似乎有必要单独构建。
下面给出了有关如何构建的说明。

一旦创建了网格,就可以通过以技巧 3 的格式分层组织它并重写路径来导入它。
不过内部处理好像挺难的,花了很长时间才完成导入。
如果你有时间,为什么不把它当作一个益智游戏来试试呢?

奖励 2:让我们召唤一个四足动物!

以下是您提供的存储库。好像可以统一下载URDF。

参考

致谢

ROS japan UG slack 的问题一角教会了我必须指定层级的技巧。非常感谢。


原创声明:本文系作者授权爱码网发表,未经许可,不得转载;

原文地址:https://www.likecs.com/show-308626079.html

相关文章: