Skip to content

TeamSOBITS/hsr_sim_common

Repository files navigation

JP | EN

Contributors Forks Stargazers Issues License

HSR Sim Common

目次
  1. 概要
  2. セットアップ
  3.  実行・操作方法
  4.  ソフトウェア
  5. マイルストーン

概要

これは,HSR(SIGVerse)を動かすために必要なパッケージです. ロボットのmeshやdiscriptionはここでinstallします.また物体把持やポーズの関数もこのパッケージで指定しています.

セットアップ

ここで,本レポジトリのセットアップ方法について説明します.

(上に戻る)

環境条件

まず,以下の環境を整えてから,次のインストール段階に進んでください.

System Version
Ubuntu 22.04 (Jammy Jellyfish)
ROS Humble Hawksbill
Python 3.0~

(上に戻る)

インストール方法

  1. 以下のコマンドでhsr_sim_commonパッケージをcloneします.
    cd ~/colcon_ws/src/
    git clone -b humble-devel https://github.com/TeamSOBITS/hsr_sim_common.git
  2. install.shで依存関係をインストールします.主に以下が含まれています.
    • Mongo C driver
      • SIGVerse環境でHSRを制御するにはMongoを用いる必要があります.
      • Mongoとは,代表的なNoSQLデータベース・ドキュメント指向型データベースのことです.
    • Mongo C++ driver
      • 同様にしてC++用のドライバもインストールします.
    • sigverse_ros_bridgeの設定
      • Windows側のSIGVerseとUbuntu側のROS2をbridgeするためにインストールします.
    cd hsr_sim_common
    bash install.sh
  3. colcon buildします
    cd ~/colcon_ws/
    colcon build

(上に戻る)

実行・操作方法

  1. SIGVerseと接続後,minimal.launch.pyを実行します.
     ros2 launch hsr_sim_common minimal.launch.py
  2. teleop_key.launch.pyを起動することで,ロボットを操作できます.
    ros2 launch hsr_sim_common teleop_key.launch.py
キーボード操作方法
  • 移動操作 (通常モード)

    u i o
    j k l
    m , .
  • ホロノミックモード (横移動)

    • シフトキーを押しながら操作すると、横移動 (strafing) ができます。
    U I O
    J K L
    M < >
  • 矢印キーでのシンプルなテレポート操作

  • 速度調整と関節操作

    • q / z: 最大速度を10%ずつ増減
    • w / x: リニア速度(直線移動速度)のみを10%ずつ増減
    • e / c: 角速度(回転速度)のみを10%ずつ増減
    • a + 矢印キー: arm_lift_joint を操作
    • s + 矢印キー: arm_flex_joint と arm_roll_joint を操作
    • d + 矢印キー: wrist_flex_joint と wrist_roll_joint を操作
    • f + 矢印キー: head_pan_joint と head_tilt_joint を操作
    • y + 矢印キー: linear_x と linear_y と angular_z を操作
    • g: ハンドの開閉を切り替え
    • h: 初期姿勢へ移動

(上に戻る)

ソフトウェア

点群

ライブラリサーバー

  • library_server.launch.pyを起動することで,ポーズの変更,水平移動,回転,各関節角の変更,指定したTFまでハンドを移動させるための情報などをやりとりするためのAction Serverが起動します.
  • このファイルはminimal.launch.pyの実行で自動的に実行されます.

ポーズの変更

  • pose_list.yamlを書き換えることで,利用可能なポーズを変更することができます.

左から

①initial_pose

用途:自律移動をする際に用いるpose(姿勢)
説明:アームが移動中に衝突しないようにする姿勢

②detecting_pose

用途:物体認識の際に用いるpose(姿勢)
説明:物体を認識する際に,カメラのフレーム内にアームが映らないようにする姿勢

③measurement_pose

用途:物体の高さを計測する際に用いるpose(姿勢)
説明:この姿勢を用いることで,物体の高さを求めることができ,安全な物体の配置が可能

(上に戻る)

マイルストーン

現時点のバッグや新規機能の依頼を確認するためにIssueページ をご覧ください.

(上に戻る)

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 15