TurtleBot3の依存パッケージをKria KV260にインストールする(2023.1)

Kria Robotics StackのLinuxイメージをビルドする(2023.1) でビルドしたPetaLinuxにTurtleBot3の依存パッケージを追加した。 ROS2パッケージ以外はPetaLinuxに …

npz35 Fri 01 December 2023

Kria Robotics StackのLinuxイメージをビルドする(2023.1) でビルドしたPetaLinuxにTurtleBot3の依存パッケージを追加した。 ROS2パッケージ以外はPetaLinuxに含めて、ROS2パッケージはKRSに含める形式をとった。

動作環境

  • OS : Ubuntu 20.04.3 LTS(64 bit)
  • Vivado : 2023.1
  • Vitis : 2023.1
  • Vitis_HLS : 2023.1
  • ROS2 : Humble
  • ボード : Kria KV260

PetaLinuxへのパッケージの追加

Kria Robotics StackのLinuxイメージをビルドする(2023.1) でビルドしたPetaLinuxにパッケージを追加する。なお、事前に components/yocto/layers/meta-kria-robotics-stack のバージョンは 0.6.0 に上げる必要がある。

petalinux-tools-docker のDockerコンテナの中で ${HOME}/xilinx-kv260-starterkit-2023.1/project-spec/meta-user/recipes-images/images/petalinux-image-minimal.bbappendROS_SYSROOT_BUILD_DEPENDENCIES に必要なパッケージを追加する。

     ltt-control \
     ltt-control-dev \
+    dynamixel-sdk \
+    hardware-interface \
+    urdf-parser-plugin \
+    robot-state-publisher \
 "

ビルドする。

petalinux-build --component rootfs
petalinux-build
petalinux-build --sdk

生成された images をホスト側にコピーする。

cp -r images ${HOME}/krs_workdir_2023_1/

SDKをインストールしなおす。

cd ${HOME}/krs_workdir_2023_1
./images/linux/sdk.sh -d sdk

今回ビルドした images を使用して、 kria-robotics-stack-docker のDockerイメージはビルドしなおす必要がある。 また Kria Robotics StackのLinuxイメージをビルドする(2023.1) の手順でKRSをビルドしなおす。

ROS2パッケージのビルド

TurtleBot3のROS2パッケージをビルドする。なお、確認した時点での humble-devel のcommit idは turtlebot3a7dd05aturtlebot3_msgs2e8f63d だった。

cd ~/krs_ws
git clone https://github.com/ROBOTIS-GIT/turtlebot3.git      src/turtlebot3      -b humble-devel
git clone https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git src/turtlebot3_msgs -b humble-devel

colcon build \
  --build-base=build-kv260 \
  --install-base=install-kv260 \
  --merge-install \
  --mixin kv260 \
  --packages-up-to \
    turtlebot3_msgs \
    turtlebot3_bringup \
    turtlebot3_description \
    turtlebot3_example \
    turtlebot3_navigation2 \
    turtlebot3_teleop \
    turtlebot3

install-kv260 にTurtleBot3のROS2パッケージのビルド生成物が追加される。