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
つくばチャレンジシンポジウム2016 - ROSの仕組みとつくばチャレンジにおけるその活用
Search
Kazuya N
January 06, 2016
0
250
つくばチャレンジシンポジウム2016 - ROSの仕組みとつくばチャレンジにおけるその活用
Kazuya N
January 06, 2016
Tweet
Share
Featured
See All Featured
How GitHub (no longer) Works
holman
314
140k
For a Future-Friendly Web
brad_frost
179
9.8k
Faster Mobile Websites
deanohume
307
31k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.3k
Building an army of robots
kneath
306
45k
The Invisible Side of Design
smashingmag
299
50k
It's Worth the Effort
3n
184
28k
Become a Pro
speakerdeck
PRO
28
5.4k
Why Our Code Smells
bkeepers
PRO
337
57k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.3k
Transcript
ROSの仕組みと つくばチャレンジにおけるその 活用 千葉工業大学 ロボット設計制御研究室 ◦夏迫 和也, 井上 裕文, 霜村
瞭, 寺戸 翔太朗, 林原靖男
ROSとは • ロボット開発のための分散ソフトウェア フレームワーク – Stanford大AI Labによって2007年に開発 – 2013/2からOSRFが開発 •
各機能はプロセスとして独立 • 機能毎が疎に結合している
ROSとは • 提供される三本柱 – ビルドシステム • catkin, rosdep, rospack –
通信ライブラリ • Topic, Service, Parameter – コミュニティ • ROS Wiki, Github • この上にそれぞれ開発されたパッケージ – Tf, Navigation Stack, and more...
ROSとは • ロボット開発のための分散ソフトウェア フレームワーク – Stanford大AI Labによって2007年に開発 – 2013/2からOSRFが開発 •
各機能はプロセスとして独立 • 機能毎が疎に結合している
事例紹介 • DARPA Robitcs Challenge – 参加23チーム中nチームが使用 – 例) 東京大学
JSK •
ROSの仕組み(通信) Master (roscore) hokuyo_node viewer geometry_msgs/LaserScan型 の”scan”トピックを配信す る geometry_msgs/LaserScan型 の”scan”トピックを購読す
る
ROSの仕組み(通信) Master (roscore) hokuyo_node viewer geometry_msgs/LaserScan型 の”scan”トピックを配信す る geometry_msgs/LaserScan型 の”scan”トピックを購読す
る advertise(“scan”) “scan”という名前のトピックを masterに登録する
ROSの仕組み(通信) Master (roscore) hokuyo_node viewer geometry_msgs/LaserScan型 の”scan”トピックを配信す る geometry_msgs/LaserScan型 の”scan”トピックを購読す
る Topic: “scan”
ROSの仕組み(通信) Master (roscore) hokuyo_node viewer geometry_msgs/LaserScan型 の”scan”トピックを配信す る geometry_msgs/LaserScan型 の”scan”トピックを購読す
る Topic: “scan” subscribe(“scan”) “scan”という名前のトピックを 購読することをmasterに通知す
ROSの仕組み(通信) Master (roscore) hokuyo_node viewer geometry_msgs/LaserScan型 の”scan”トピックを配信す る geometry_msgs/LaserScan型 の”scan”トピックを購読す
る Topic: “scan” scanトピックが TCPで流れる
デバッグと可視化ツール • デバッグや可視化も疎結合の恩恵を受ける – トピックを購読してデバッグ・可視化 • rosbag – 配信されるトピックをすべて記録する –
あとから再生して可視化できる • 可視化ツール – Rviz – なんでも可視化ツール – rqt_plot – トピックを時系列にグラフにプロットする – And more...
Navigation stack • ROSのNavigationスタック – Adaptive Monte Calro Localization(amcl) –
move_base • ダイクストラ法による大域的経路計画 (base_global_planner) • Dynamic Window Approachによる局所的経路計画 (base_local_planner) • グローバル及びローカルな障害物マップ(cosmap_2d) • スタックからの復帰(recovery_behavior) – Rao-Blackwellized Particle FilterによるGlid-based Fast SLAM (gmapping)
ORNEにおけるROS • Navigationスタックを使用 • 本研究室で独自に実装した部分 – YPSpurとros_controlのブリッジ等 (icart_miniパッケージ) – Waypoint,一時停止地点の管理(fulanghua_w
ayponints_nav) • センサ関連 – 2D LIDARからのデータ取得(hokuyo_node) – IMUからのデータ取得(cit_adis_imu)(独自)
ORNEにおけるROS
ROSを使っていてよかったこと • 問題が起こった時にデバッグしやすい (rosbag, 各種可視化ツール) • 事例 – 特定の位置で不自然な経路が生成される •
ぱっと見では原因不明 – rosbagでの記録を走行後にrvizで解析すること で,占有格子地図における走行可能な領域が一 部専有されてしまっていたことが原因と判明
ROSを使っていてよかったこと • 研究のための実装が楽 • 事例 – 人物検出技術の開発 • 3D URGからのデータ取得を決まりきった
フォーマットで取得できた • PCL(点群処理ライブラリ)などの 各種ライブラリ(OpenCVなども利用できる) が整備されている • 点群の処理や学習部分の開発に専念できた
ROSを使うのに気をつけなければ いけないこと • 仕組みを理解するのには時間がかかる • マシンスペックはなかなか必要 – Core i7, RAM
8GB以上必須 – 経路計画が止まるなどの問題が実際に発生した • 自ら実装しなきゃいけない部分が全てなくな るわけではない • 既存の機能ありきで考えるのは推奨されない
ORNEを動かすには https://github.com/open-rdc/orne_navigation/wiki