ロボットオペレーティングシステム(講義)の趣旨
ロボット用オペレーティングシステムであるRobot Operating System(ROS)が2011年にリリースされ,ロボット開発・研究に大きな影響を与えています.近年ではROSに対応したロボットやオープンソースも増加したことに伴い,ROSユーザー,コミュニティも拡大を続けてます.ROSを習得した人材が求められている背景を受け,本講義ではROSの基本的な原理や使用方法,ROSを介したソフトウェア開発技術を習得することを目的とします.なお,本講義はロボット理工学演習A及びプロジェクト演習Aと連動して講義を進めます.
講義計画
講義の進行状況,時間配分等を考慮し,演習内容が前後することがあります.
- ROSの概要
- C++言語の理解
- 複数のノードを同時に起動する方法
- 同一のノードを複数起動する方法
- シミュレータstage及び関連パッケージのインストール
- トピック通信の復習
- トピックの記録と再生
- ROSにおける座標系の扱い
- 座標変換(tf2)
- ROSによる画像処理(Stage版)
- ar_track_alvarを用いたARタグの認識
- find_object_2dを用いた物体認識
- YOLOによるカテゴリ認識
- 地図の作成とナビゲーション(Kinetic)
- 地図の作成とナビゲーション(Noetic)
- プログラムからナビゲーションを実行する方法(C++版)
- プログラムからナビゲーションを実行する方法(Python版)
PCの環境
本講義では,下記のPCの環境を対象とします.
- ubuntu (リストの上位を推奨する)
- ubuntu 20.04
- VM環境下で構築されたubuntu 20.04
- ROS
- Noetic (ubuntu 20.04)
- その他 (最低限のスペック)
- CPU Core i3 以上
- メモリ 4G 以上