プログラミングROS ―Pythonによるロボットアプリケーション開発
by Morgan Quigley, Brian Gerkey, William D. Smart, 河田 卓志, 松田 晃一, 福地 正樹, 由谷 哲夫
6章ロボットとシミュレーター
これまでの章では、ROSの基本的な概念について説明をしてきました。それらはかなり曖昧で抽象的なものに思われたかもしれませんが、これらの概念は、ROSの中でデータがどのように流れ、ソフトウェアシステムがどのように構成されているのかを説明するために必要でした。本章では、共通して使われるロボットサブシステムについて紹介し、ROSのアーキテクチャーがそれらをどのように扱うかを説明します。そして、本書を通して利用するロボットを紹介し、これを最も簡単に試すことができるシミュレーターについて説明します。
6.1 サブシステム
すべての複雑な機械と同様に、ロボットも、1つ1つのサブシステムに分けて考えることで、非常に簡単に設計、解析することができます。この節では、本書で紹介するロボットで共通に利用する主要なサブシステムについて紹介します。大まかには、それらのサブシステムは、アクチュエーション、センシング、コンピューティングの3つのカテゴリーに分類されます。ROSでは、アクチュエーションサブシステムは、ロボットの車輪や腕をどのように動かすかに直接関わるサブシステムです。センシングサブシステムは、センサーのハードウェア、例えばカメラやレーザーセンサーなどと直接やり取りをします。最後に、コンピューティングサブシステムは、アクチュエーションサブシステムとセンシングサブシステムとを結ぶものであり、何らかの(理想的には)知能的な処理を行い、結果としてロボットに私たちの役に立つ何らかの仕事ができるようにさせます。これらのサブシステムについて、それぞれこの後の節で説明していきます。ただし、それぞれについて包括的に説明するつもりではなく、それぞれのサブシステムについて、ソフトウェア開発の立場から、それらを扱うときに直面する典型的な課題を理解するのに十分な範囲で詳しく説明します。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access