Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
MoveItを使った産業用ロボット向け動作作成方法の紹介 / Introduction to ...
Search
Ryo Kabutan
November 09, 2024
Science
0
150
MoveItを使った産業用ロボット向け動作作成方法の紹介 / Introduction to creating motion for industrial robots using MoveIt
第20回FA設備技術勉強会 in TOKYO
LT
2024.11.9
Ryo Kabutan
November 09, 2024
Tweet
Share
More Decks by Ryo Kabutan
See All by Ryo Kabutan
CoRL2021論文読み会
ry0_ka
0
4
Unity道場 ロボティクス 秋のLT祭り 2021
ry0_ka
0
4
myCobotがある生活
ry0_ka
0
3
MoveItの新機能、OMPL Constrained Planningを試してみた
ry0_ka
0
3
MoveItの新機能、 pilz industrial motionを試してみた
ry0_ka
0
5
MoveIt Day 2019 TrajOpt
ry0_ka
0
6
MoveItで実装されているプランニングアルゴリズムについて
ry0_ka
0
4
Other Decks in Science
See All in Science
JSol'Ex : traitement d'images solaires en Java
melix
0
110
機械学習を支える連続最適化
nearme_tech
PRO
1
140
Snowflake上でRを使う: RStudioセットアップとShinyアプリケーションのデプロイ
ktatsuya
0
400
Introduction to Graph Neural Networks
joisino
PRO
4
2k
深層学習を利用して 大豆の外部欠陥を判別した研究事例の紹介
kentaitakura
0
220
大規模言語モデルの開発
chokkan
PRO
84
33k
ベイズのはなし
techmathproject
0
280
(Forkwell Library #48)『詳解 インシデントレスポンス』で学び倒すブルーチーム技術
scientia
2
1.4k
山形とさくらんぼに関するレクチャー(YG-900)
07jp27
1
210
拡散モデルの原理紹介
brainpadpr
3
4.7k
(2024) Livres, Femmes et Math
mansuy
0
110
非同期コミュニケーションの構造 -チャットツールを用いた組織における情報の流れの設計について-
koisono
0
130
Featured
See All Featured
Docker and Python
trallard
40
3.1k
For a Future-Friendly Web
brad_frost
175
9.4k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Building a Scalable Design System with Sketch
lauravandoore
459
33k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
700
Optimizing for Happiness
mojombo
376
69k
A Philosophy of Restraint
colly
203
16k
GraphQLとの向き合い方2022年版
quramy
43
13k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Fireside Chat
paigeccino
33
3k
Transcript
1 2024.11.9 第20回FA設備技術勉強会 in TOKYO を使った 株丹 亮 Kabutan Ryo
産業用ロボット向け 動作作成方法の紹介
今日のLTの内容 2 MoveItと呼ばれるOSSを使って産業用ロボットの動作を作成する方法を紹介。
MoveItを使ったら何ができる? • ロボットアームの動作を自動で作ることができる。 • センサで障害物を検知しながら、複雑な動作が自動生成できる。 (自動ピッキングシステム等のロボットアプリが比較的簡単に作成できる。) 3 3次元距離センサ MoveItの画面 障害物
myCobot
MoveItの特徴(FA寄りの目線から) 4 Bad! Good! • 従来型の産業用ロボットのティーチングと異なり、動作を自動で生成することが できる(障害物を回避する複雑な動作も自動生成可)。 • ROSで産業用ロボットを繋げば、C++やPythonでロボットのメーカ・種類関係 なく共通のロボットアプリが作れる。
• かつてのMoveIt(MoveIt 1と呼称)では先進的な動作生成技術が使える一方、 従来のティーチングでよく使う関節補間(MOVJ)、直線補間(MOVL)が 簡単に使える状況ではなかった。 • MoveIt 1では前者と後者の組み合わせた動作が作れなかった。 この区間は障害物があるので回避動作を自動生成、この区間は単純に 直線補間でZマイナス方向に手先をおろすなど。 最新バージョンのMoveIt 2では上記のデメリットが解消されていたので、 紹介させていただきます。
実際にやってみた MoveItでは以下のような動作生成アルゴリズムがプラグインとして活用できる 5 種別 プラグイン名 特徴 動画 自動生成系 プラグイン •
OMPL • CHOMP • STOMP • TrajOpt 障害物を事前定義または センシングすることで障害物を 回避できる複雑な動作を自動生成 可能。 右の動画は障害物回避している例 産業用ロボット 動作系 プラグイン pilz industrial motion planner 以下の動作が作成可能。 • 関節補間(PTP) • 直線補間(LIN) • 円弧補間(CIRC) 右の動画は直線補間の例
実際にやってみた • MoveIt 2のC++/Python APIでは、区間ごとに使用する プラグイン名と動作生成ロジックが指定可能。 6 Pythonでの実装例 動作生成ロジックを切り替える場合はここの 実装を変更する
MoveIt 2のIFで提供された新しいAPI (MoveIt 1はできなかった) 直線補間 OMPLの RRT-Connect を使った自動生成 手先の位置姿勢の指定 だけでなく 関節角度の指定でもOK 参考サイト: https://moveit.picknik.ai/main/doc/examples/motion_planning_python_api/motion_planning_python_api_tutorial.html
実際にやってみた 障害物回避動作と直線補間動作を組み合わせて動作作成テストを行った。 7 テストシナリオ 開始姿勢 中間姿勢 障害物回避区間 ?? 直線移動 障害物回避
終了姿勢 直線移動区間 ① ② ③
実際にやってみた 障害物回避動作と直線補間動作を組み合わせて動作作成テストを行った。 8
まとめ • MoveIt 2では、 動作を自動生成できるだけでなく、 従来のティーチングのような確定的な動作の生成も どちらも同じ使用感で実行できるようになっている。 • 今日示したサンプルのような実装を切り貼りするだけで、 そこそこ色々なロボットアプリが作れる気がする。
• 産業用ロボットのROS 2対応も順次進んできているので、 MoveItをFA領域で活用できるシーンは増えてきそう。 9
ご静聴ありがとうございました。 質問があれば、お気軽にどうぞ!! 10