crane_plus_examples package from crane_plus repocrane_plus crane_plus_control crane_plus_description crane_plus_examples crane_plus_gazebo crane_plus_moveit_config |
|
Package Summary
Tags | No category tags. |
Version | 2.0.1 |
License | Apache License 2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/rt-net/crane_plus.git |
VCS Type | git |
VCS Version | humble-devel |
Last Updated | 2023-09-08 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- RT Corporation
Authors
- Shota Aoki
- Atsushi Kuwagata
- Yusuke Kato
crane_plus_examples
このパッケージはCRANE+ V2 ROS 2パッケージのサンプルコード集です。
準備(実機を使う場合)
1. CRANE+ V2本体をPCに接続する
CRANE+ V2本体をPCに接続します。 接続方法は製品マニュアルを参照してください。
※CRANE+ V2本体が接触しないように、十分なスペースを確保してください。
2. USB通信ポートの接続を確認する
USB通信ポートの設定についてはcrane_plus_control
の
README
を参照してください。
正しく設定できていない場合、CRANE+ V2が動作しない、振動する、などの不安定な動きになるので注意してください
3. move_groupとcontrollerを起動する
標準のCRANE+ V2を使用する場合
次のコマンドでmove_group (crane_plus_moveit_config
)と
controller (crane_plus_control
)を起動します。
$ ros2 launch crane_plus_examples demo.launch.py port_name:=/dev/ttyUSB0
Webカメラ搭載モデルを使用する場合
Webカメラ搭載モデルの場合は、次のコマンドを実行してください。
```は使用するWebカメラを指定してください。
```sh
$ ros2 launch crane_plus_examples demo.launch.py port_name:=/dev/ttyUSB0 use_camera:=true video_device:=/dev/video0
準備(Gazeboを使う場合)
=======
1. move_groupとGazeboを起動する
次のコマンドでmove_group (crane_plus_moveit_config
)とGazeboを起動します。
$ ros2 launch crane_plus_gazebo crane_plus_with_table.launch.py
サンプルプログラムを実行する
準備ができたらサンプルプログラムを実行します。 例えばグリッパを開閉するサンプルは次のコマンドで実行できます。
$ ros2 launch crane_plus_examples example.launch.py example:='gripper_control'
終了するときはCtrl+c
を入力します。
Gazeboでサンプルプログラムを実行する場合
Gazeboでサンプルプログラムを実行する場合はuse_sim_time
オプションを付けます。
$ ros2 launch crane_plus_examples example.launch.py example:='gripper_control' use_sim_time:=true
Examples
demo.launch.py
を実行している状態で各サンプルを実行できます。
実行できるサンプルの一覧は、examples.launch.py
にオプション-s
を付けて実行することで表示できます。
$ ros2 launch crane_plus_examples example.launch.py -s
Arguments (pass arguments as '<name>:=<value>'):
'example':
Set an example executable name: [gripper_control, pose_groupstate, joint_values, pick_and_place]
(default: 'gripper_control')
gripper_control
グリッパを開閉させるコード例です。
次のコマンドを実行します。
$ ros2 launch crane_plus_examples example.launch.py example:='gripper_control'
<img src=https://rt-net.github.io/images/crane-plus/gripper_control.gif width=500px />
pose_groupstate
group_stateを使うコード例です。
SRDFファイルcrane_plus_moveit_config/config/crane_plus.srdf
に記載されているhome
とvertical
の姿勢に移行します。
次のコマンドを実行します。
$ ros2 launch crane_plus_examples example.launch.py example:='pose_groupstate'
<img src=https://rt-net.github.io/images/crane-plus/pose_groupstate.gif width=500px />
joint_values
アームのジョイント角度を1つずつ変更するコード例です。
次のコマンドを実行します。
$ ros2 launch crane_plus_examples example.launch.py example:='joint_values'
<img src=https://rt-net.github.io/images/crane-plus/joint_values.gif width=500px />
pick_and_place
モノを掴む・持ち上げる・運ぶ・置くコード例です。
次のコマンドを実行します。
$ ros2 launch crane_plus_examples example.launch.py example:='pick_and_place'
<img src=https://rt-net.github.io/images/crane-plus/pick_and_place.gif width=500px />
Camera Examples
Webカメラ搭載モデルのカメラを使用したサンプルコードです。
「Webカメラ搭載モデルを使用する場合」の手順に従って、
demo.launch
を実行している状態で、
各サンプルを実行できます。
実行できるサンプルの一覧は、camera_example.launch.py
にオプション-s
を付けて実行することで確認できます。
$ ros2 launch crane_plus_examples camera_example.launch.py -s
Arguments (pass arguments as '<name>:=<value>'):
'example':
Set an example executable name: [color_detection]
(default: 'color_detection')
aruco_detection
モノに取り付けたArUcoマーカをカメラで検出し、マーカ位置に合わせて掴むコード例です。 マーカはaruco_markers.pdfをA4紙に印刷して、一辺50mmの立方体に取り付けて使用します。
検出されたマーカの位置姿勢はtfのフレームとして配信されます。
tfのframe_id
はマーカIDごとに異なりID0のマーカのframe_id
はtarget_0
になります。
掴む対象はtarget_0
に設定されています。
マーカ検出にはOpenCVを使用しています。
次のコマンドを実行します。
ros2 launch crane_plus_examples camera_example.launch.py example:='aruco_detection'
Videos
color_detection
特定の色の物体を検出して掴むコード例です。
デフォルトでは赤い物体の位置をtfのフレームとして配信します。
tfのframe_id
はtarget_0
です。
色検出にはOpenCVを使用しています。
次のコマンドを実行します。
ros2 launch crane_plus_examples camera_example.launch.py example:='color_detection'
Videos
Changelog for package crane_plus_examples
2.0.1 (2023-09-08)
- READMEにカメラサンプルデモのGIFを追加 (#70)
- Contributors: YusukeKato
2.0.0 (2023-08-01)
- 軌道生成の失敗時にpick_and_placeを中断する機能を追加 (#65)
- カメラサンプルのHumble対応 (#64)
- Feature/support humble (#58)
- Contributors: Shota Aoki, YusukeKato
1.1.0 (2022-08-16)
1.0.0 (2022-06-22)
- パッケージバージョン表記の更新 (#40)
- crane_plus_ignition パッケージを追加し、Gazeboの使用を非推奨にする (#38)
- xacroファイルの読み込みを一元化するためのPythonスクリプトを追加 (#36)
- GripperActionControllerに関するコメントを削除 (#37)
- hardware_interfaceのパラメータをxacro引数から変更する (#35)
- Update crane_plus_gazebo (#30)
- Contributors: Atsushi Kuwagata, Shota Aoki
0.1.0 (2020-11-11)
Wiki Tutorials
Package Dependencies
System Dependencies
Name |
---|
libopencv-dev |
Dependant Packages
Name | Deps |
---|---|
crane_plus |