はじめに
今回の記事では、ROS 2でのワークスペース・パッケージの作成方法とビルド方法について記載します。ROSとROS 2では少し異なる部分がありますので、その点も踏まえて記載します。
前提条件
今回の記事は、以下の環境で動かすことを前提に記載しています。
条件 | |
---|---|
OS | Ubuntu 22.04 |
ROS | ROS 2 humble |
ワークスペースの作成
ワークスペースの作成は、以下のコマンドで実行します。ここに関してはROSの時と同じで、mkdirコマンドでディレクトリを作成するだけになります。既に、こちらの記事のコマンドを実行している場合は、ワークスペースが作成済みのため不要です。
mkdir -p ~/ros2_ws/src
パッケージの作成
パッケージの作成については、ROSとROS 2で少々コマンドが異なります。ROS 2では、以下に記すコマンドの様に、C++用のパッケージとpython用のパッケージで異なるオプションを使用して作成する必要があります。
C++パッケージ作成コマンド
cd ~/ros2_ws/src/
ros2 pkg create --build-type ament_cmake パッケージ名
Pythonパッケージ作成コマンド
cd ~/ros2_ws/src/
ros2 pkg create --build-type ament_python パッケージ名
ビルド
ビルドについても、ROSとROS 2で異なります。ROSではcatkin_makeやcatkin buildなどを使用しましたが、ROS 2では以下の様にcolconを使用します。
cd ~/ros2_ws/
colcon build
このcolconコマンドについて、良く使用するオプションとして以下の様なものがあります。また、この他にも様々なオプションがありますが、詳細は以下のリンクを参考にしてください。
シンボリックリンクを使用してインストール
--symlink-install
指定したパッケージをビルド
--packages-select パッケージ名
おわりに
今回は、ROS 2でのパッケージの作成方法とビルド方法について記載しました。この時点では、まだROS 2でのコーディングについて触れられていませんが、次回の記事ではコーディング部分について記載する予定です。具体的にはコンポーネントを用いたPub&Sub通信について記載する予定ですので、興味がある方は是非ご覧ください。
参考資料