Skip to content

kzm784/kuams

Repository files navigation

kuams🐧

KUAMS (Kansai University Autonomous Measurement System) ROS 2パッケージ

目次

概要

ROS 2とNavigation2を用いてナビゲーションを行うためのパッケージを提供します。 実機には関西大学 計測システム研究室が制作するKUAMSを使用します。

ハードウェア & 開発環境

パッケージ構成

  • kuams : KUAMSのメタパッケージ
  • kuams_bringup : KUAMS、各種センサの起動を行うためのlaunchファイルを提供するパッケージです。
  • kuams_description : KUAMSの物理モデルやURDFモデル、Meshファイルを含むパッケージです。
  • kuams_navigation : Nav2の起動を行うためのlaunchファイルを提供するパッケージです。
  • kuams_slam : slam_toolboxを起動するためのlaunchファイルを提供するパッケージです。
  • kuams_teleop : Joyコントローラを使用してKUAMS3を操作するためのコード、launchファイルを提供するパッケージです。

インストール方法

以下の手順に沿って各パッケージのインストールを行ってください

  1. ROS 2 Humbleのセットアップ:
    こちらの手順に従って、ROS 2 Humbleをインストールしてください。

  2. kuams のセットアップ:

    mkdir -p ~/kuams_ws/src
    cd ~/kuams_ws/src
    git clone https://github.com/kzm784/kuams.git
    cd ~/kuams_ws
    rosdep update && rosdep install --from-paths src --ignore-src -y
    colcon build
  3. ros2_whill のセットアップ:

    sudo apt install ros-humble-xacro
    cd ~/kuams_ws/src
    git clone -b crystal-devel https://github.com/WHILL/ros2_whill_interfaces.git
    git clone https://github.com/kzm784/ros2_whill.git
    cd ~/kuams_ws
    rosdep update && rosdep install --from-paths src --ignore-src -y
    colcon build 
  4. Livox SDK2 のセットアップ:

    git clone https://github.com/Livox-SDK/Livox-SDK2.git
    cd ~/Livox-SDK2/
    mkdir build
    cd build
    cmake .. && make -j4
    sudo make install
  5. livox_ros_driver2 のセットアップ:

    cd ~/kuams_ws/src
    git clone https://github.com/Livox-SDK/livox_ros_driver2.git
    mv livox_ros_driver2/package_ROS2.xml livox_ros_driver2/package.xml
    cd ~/kuams_ws
    colcon build --packages-select livox_ros_driver2 --cmake-args -DROS_EDITION="ROS2" -DHUMBLE_ROS="humble" --symlink-install
  6. waypoint_manager のセットアップ:

    cd ~/kuams_ws/src
    git clone https://github.com/kzm784/waypoint_manager.git
    cd ~/kuams_ws
    rosdep update && rosdep install --from-paths src --ignore-src 
    colcon build
  7. lidar_localization_ros2 のセットアップ:

    cd ~/kuams_ws/src
    git clone https://github.com/rsasaki0109/lidar_localization_ros2.git
    git clone https://github.com/rsasaki0109/ndt_omp_ros2.git
    cd ~/kuams_ws
    rosdep update && rosdep install --from-paths src --ignore-src 
    colcon build

使用方法

  • KUAMSの起動:
    ⚠️ 注意: 初期セットアップ時にudevルールを編集し、USBデバイスのシンボリックリンクを作成してください。

    sudo mv ~/kuams_ws/src/kuams/docs/99-whill-serial.rules /etc/udev/rules.d/
    sudo udevadm control --reload

    WHILL Model CRとPCをシリアル接続し、以下のコマンドを実行して各種センサを含むkuamsの実機を起動します。

    cd kuams_ws
    source install/setup.bash
    ros2 launch kuams_bringup kuams.launch.py
  • Joyコントローラーを用いたKUAMSの操縦: JoyコントローラーとPCを接続した後、以下のコマンドを実行しKUAMSを操縦することができます。

    cd kuams_ws
    source install/setup.bash
    ros2 launch kuams_teleop kuams3_teleop.launch.py

    ボタンの割当、速度調節のパラメータはkuams_teleop/config/config_kuams_teleop.yamlを編集してください。

    kuams_teleop:
        ros__parameters:
            axis_linear_x: 1     # 前後方向の速度を操作するジョイスティック軸
            axis_angular: 0      # 回転速度を操作するジョイスティック軸
            axis_deadman: 5      # デッドマンスイッチのボタン番号
            scale_linear: 0.3    # 直線速度のスケール(最大速度)
            scale_angular: 0.9   # 回転速度のスケール(最大回転速度)
  • Navigation2を用いたウェイポイントナビゲーション:
    ⚠️ 事前準備: ホームディレクトリに navigation_data ディレクトリを作成し、ウェイポイントナビゲーションに必要なデータをその中に準備してください。

    navigation_data/
        │
        ├── rinpukan/
        │       ├── rinpukan.pcd        # 3次元地図
        │       ├── rinpukan.pgm        # 2次元地図
        │       ├── rinpukan.yaml       # 2次元地図情報設定ファイル
        │       ├── rinpukan_wp.csv     # ウェイポイントデータ
        │       └── rinpukan_mc.csv     # 地図切り替え設定ファイル (オプション)
        │
        └── ... # 以降も同じ形式
    

    必要なデータを準備したら、以下のコマンドで環境変数を設定してください。

    echo 'export NAVIGATION_DATA_DIR=/home/$USER/navigation_data' >> ~/.bashrc
    echo 'export NAVIGATION_DATA_NAME=rinpukan' >> ~/.bashrc

    ウェイポイントナビゲーションで使用するデータを指定:
    以下のコマンドで環境変数 NAVIGATION_DATA_NAME 変更してください。

    # Nav2・waypoint_managerの起動前に各ターミナルで実行してください。
    export NAVIGATION_DATA_NAME=rinpukan

    .bashrc を編集することでも使用するデータを指定することができます。
    その場合は .bashrc を編集後、ターミナルを開き直してください。

    Nav2の起動:
    KUAMSを起動後、以下のコマンドで Nav2 を起動します

    cd ~/kuams_ws
    source install/setup.bash
    ros2 launch kuams_navigation kuams_3d_navigation.launch.py

    waypoint_managerの起動:
    Nav2の起動後、以下のコマンドでwaypoint_managerを起動します

    cd ~/kuams_ws
    source install/setup.bash
    ros2 launch waypoint_manager waypoint_manager.launch.py

About

ROS 2 package for KUAMS

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published