Contenu connexe
Similaire à 第32回信号処理シンポジウム「Raspberry PiとROSを使ったロボットシステム」 (20)
Plus de Ryuichi Ueda (20)
第32回信号処理シンポジウム「Raspberry PiとROSを使ったロボットシステム」
- 2. 本日の内容
• 1. 背景
• Raspberry Pi Mouseと自著の意図
• 2. Rasberry Pi MouseとROS
• 何ができるか?
• 3. コミュニティーについて
• まとめ
2017年11月9日 32nd SIP SYMPOSIUM 2
- 5. ロボットとインターネット
• サービスだけではない
• 開発も
• ここ数年で顕著
• 開発のための様々なサービスの登場
• Gitホスティング、CIサービス、Slack・・・。
• Twitterも
• オープンソースソフトウェア
• 逆運動学を解かなくてもマニピュレータが動く
• 確率や最適化の勉強をしなくてもセンサ情報統合
2017年11月9日 32nd SIP SYMPOSIUM 5
- 6. どれだけ簡単になっているか?
• 例: MoveIt!
• マウスで手先の位置を指定
• 逆運動学計算
• その通りに動く
• 以前: 既存のソフト利用
がそれなりに面倒
• モデルを作る
• 他のソフトとつなぐ
• ⇒ROSに従ってやっていくと迷わずすぐにできる
2017年11月9日 32nd SIP SYMPOSIUM 6
by Yutaka Kondo
- 10. 2. Raspberry Pi MouseとROS
日頃から考えていたことをソフトウェアと書籍に反映
2017年11月9日 32nd SIP SYMPOSIUM 10
- 11. Raspberry Pi Mouse
• アールティ社製
• 本体価格: 税込48,600円
• マイクロマウス型
• 4つの距離センサ
• 2つのステップモータ
• Raspberry Piで制御
• Linuxで制御
• 競技用迷路はちょっと厳しい
• そういう用途ではない
2016年12月17日 SI2016 11
- 14. 書籍について
• 2017年4月発売
• Raspberry PiとROS
• 流行りもの
• 研究者としては乗っかるだけだと
非常に恥
• 実はこれも扱っている
• GitHub
• Travis CI
• シェルスクリプト
• デバイスドライバの書き方
• ただ、今日はROSの話が中心
2017年11月9日 32nd SIP SYMPOSIUM 14
ROSを知りたければ
むしろその上下を!
と素直に記述
- 16. ソフトウェアの構成: ROSのレイヤ
• ROS: robot operating system
• 歴史、コントリビュータ
• http://www.ros.org/history/
• http://www.ros.org/contributors/
• 何か?
• ロボットのためのミドルウェア
• (主に)Linux上で動作
2017年11月9日 32nd SIP SYMPOSIUM 16
- 17. ROSのインストール
• Ubuntuが標準
• 14.04にはROS Indigo Igloo
• 16.04にはROS Kinetic Kame
• パッケージをいくつかAPTやpipで
インストール
• まだ洗練されていない印象
• シェルスクリプトを公開しています
• https://github.com/ryuichiueda/ros_setup_scripts_
Ubuntu16.04_server
2017年11月9日 32nd SIP SYMPOSIUM 17
- 18. ROSの構成
• 本体: プロセス間通信をつかさどる
• ここで言うプロセス: ROSノードと
呼ばれる機能ごとに独立したプログラム
• プロセス同士をpublish-subscribeモデル
やサービスでつなぐ
• XML-RPC等を利用
• 通信するデータに型
• 周辺
• ビルドシステム、パッケージ管理、テスト
ツール、・・・
2017年11月9日 32nd SIP SYMPOSIUM 18
- 22. データの流れ: ROSトピック
• 「メッセージ」が
非同期に流れる
• pub-subモデル
• ノード間で授受
• トピックは木構造で管理
• ディレクトリに似た構造
• 主要なセンサはAPTでソフトウェアを
インストールするとそのまま利用可能
• USBカメラ $ sudo apt install ros-kinetic-cv-camera
• 測域センサ $ sudo apt install ros-kinetic-urg-node
2017年11月9日 32nd SIP SYMPOSIUM 22
- 24. CIサービスでのテスト
• CI(continuous integration)サービス
• インターネット上でコードをビルド、
テストして本番環境に反映するためのもの
• テストに慣れるととても開発がスムーズに
• よく個人で行われる使い方
• GitHubにコードをpush→自動でテスト
→GitHub上にテストの可否を表示
• 問題: ロボットをネット上でどうテストするか?
• 海外だと結構本気で取り組んでいるようである
2017年11月9日 32nd SIP SYMPOSIUM 24
- 28. 情報の流通経路
• イベント
• ROSCon
• ROS勉強会(ROS Japan UG)
• 日常
• メーリングリスト
• Twitter, その他SNS
• GitHub, その他Gitホスティングサービス
2017年11月9日 32nd SIP SYMPOSIUM 28
- 30. 事例2: シェル芸勉強会(注意: ROS無関係)
• 一日中シェルの使い方を学ぶ
• 午前: コマンドなどの使い方
• 午後: ワンライナーの問題を解く
• Twitter上に解答が溢れる
• 夜: LT(lightning talk大会)
2017年11月9日 32nd SIP SYMPOSIUM 30