ROS2 に xacro パッケージをインストールする

ROS

ROS2 に xacro パッケージをインストールする話です.

apt 版

apt のライブラリを更新して,xacro パッケージが無いか検索します.

apt update
apt search xacro

xacro パッケージがあった場合は次のように apt install でインストールするか,使いたいパッケージの package.xml の depend に xacro を追加します.

apt install -y ros-foxy-xacro 

git 版

基本的な Git repository からのパッケージインストールになります.
<workspace> は ROS2 workspace のパスに読み替えてください.

まずは <workspace>/src に移動して xacro repository をダウンロードします.

cd <workspace>/src
git clone https://github.com/ros/xacro.git -b ros2

次に,<workspace> に移動して src 内のパッケージ依存パッケージ読み込みます.

cd <workspace>
rosdep install -i --from-path src --rosdistro foxy -y

続いて xacro パッケージをビルドします.

colcon build --packages-select xacro

今の環境を適用します.

. install/setup.bash

xacro がインストール出来ていることを確認します.インストール出来ていたら,xacro のヘルプメッセージが表示されます.

xacro -h

使い方

次のコマンドで xacro ファイルを urdf ファイルに変換します.

ros2 run xacro xacro basic1.xacro >basic1.urdf

macro で $(find mypackage) を使う場合は CMakeLists.txt に次の行を追加します(C++ 版).

install(DIRECTORY launch DESTINATION share/${PROJECT_NAME})

ただし, $(find mypackage)<workspace>/share のものを参照するのでパッケージのビルド後に urdf に変換しないといけないです.


環境


余談

apt update をしていないと,apt search xacro を実行しても何も出てこないことがあります.

コメント

  1. パスコンパス より:

    記事内の
    ros2 run xacro xacro basic1.xacro >basic1.urdf

    xacro xacro basic1.xacro >basic1.urdf
    かもしれません?

    ROS2 foxy ubuntu20.04で試しました

    • botamochi6277 より:

      どちらでも問題なく実行できます.ros2 run xacro の方はros2のパッケージであることを明示している形です.pythonのpipとおそらく同じような感じです.

タイトルとURLをコピーしました