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
190
つくばチャレンジシンポジウム2016 - ROSの仕組みとつくばチャレンジにおけるその活用
Kazuya N
January 06, 2016
Tweet
Share
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
0
48
Become a Pro
speakerdeck
PRO
13
4.6k
The Cult of Friendly URLs
andyhume
74
5.7k
BBQ
matthewcrist
80
8.8k
Imperfection Machines: The Place of Print at Facebook
scottboms
261
12k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
9
1.3k
It's Worth the Effort
3n
180
27k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
21
1.6k
Bash Introduction
62gerente
605
210k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
221
21k
RailsConf 2023
tenderlove
9
570
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
126
32k
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