OPERA対応油圧ショベルzx120の土木研究所公開ROS2パッケージ群
- 国立研究開発法人土木研究所が公開するOPERA(Open Platform for Eathwork with Robotics Autonomy)対応の油圧ショベルであるZX120用のROS2パッケージ群である
- 本パッケージに含まれる各launchファイルを起動することで、実機やシミュレータを動作させるのに必要なROSノード群が立ち上がる
- 動作確認済のROS Version : ROS Humble Hawksbil + Ubuntu 22.04 LTS
-
ワークスペースの作成(既にwsを作成済の場合は不要.以下、新規作成するワークスペースの名称を"ros2_ws"と仮定して表記)
$ cd ~/ $ mkdir --parents ros2_ws/src $ cd ros2_ws $ colcon build
-
~/ros2_ws/以下にbuild, install, log, srcディレクトリが作成される
-
依存パッケージ群をインストールした上でパッケージのビルドと自分のワークスペースをインストール環境上にOverlayする
vcstoolに関する参考サイト$ cd ~/ros2_ws/src $ git clone https://github.com/pwri-opera/zx120_ros2.git $ sudo apt update $ sudo apt install python3-rosdep2 $ rosdep update $ rosdep install -i --from-path src --rosdistro humble -y $ colcon build --symlink-install $ . install/setup.bash
- zx120の実機を動作させる際に必要なノード群を一括起動するためのlaunch用のサブパッケージ
- ros_controlの枠組みに倣い、作業機(=swing_joint, boom_joint, arm_joint, bucket_joint, bucket_end_joint)の部分をjoint_state_controller(type: joint_state_controller/JointStateController), upper_arm_contoller(position_controllers/JointTrajectoryController)という名称で実装したサブパッケージ
- zx120用のロボットモデルファイル(dae, xacro含む)群
- zx120をunityシミュレータ(OperaSim-AGX, OperaSim-PhysX)上で動作させるのに必要なノード群を一括起動するためのlaunch用のサブパッケージ
- zx120の作業機(=swing, boom, arm, bucketの4軸)のモーション制御のためのライブラリ
- MoveIt2に準拠しMoveIt Setup Assistantを用いて作成
- OPERAのUnityシミュレータ(OperaSim-AGX, OperaSim-PhysX)と連携するために必要なノード群を一括起動するためのlaunch用のサブパッケージ
- 実機動作に必要なROS2ノード群の起動方法
注)実機特有の非公開パッケージが含まれるため、実機以外の環境ではlaunchに失敗します$ ros2 launch zx120_bringup zx120_vehicle.launch.py
- Unityシミュレータとの連携に必要なROS2ノード群の起動方法
$ ros2 launch zx120_unity zx120_standby.launch.py