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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Kazuya N
January 06, 2016
0
270
つくばチャレンジシンポジウム2016 - ROSの仕組みとつくばチャレンジにおけるその活用
Kazuya N
January 06, 2016
Tweet
Share
Featured
See All Featured
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.7k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
150
Optimizing for Happiness
mojombo
378
71k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
150
Evolving SEO for Evolving Search Engines
ryanjones
0
170
Chasing Engaging Ingredients in Design
codingconduct
0
150
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
92
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
Done Done
chrislema
186
16k
Amusing Abliteration
ianozsvald
0
140
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
490
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