書店員向け情報 HELP
ロボットプログラミングROS2の実装・実践-実用ロボットの開発-
- 書店発売日
- 2021年7月21日
- 登録日
- 2021年7月6日
- 最終更新日
- 2021年7月6日
紹介
この本を手に取られた皆さんは、ジャズをお聞きになるでしょうか。著者は、あまり詳しい方ではないのですが、youtube 動画で楽しんでいます。とくに、ジャムセッションが好きで、各プレイヤーが臨機応変に演奏を披露する姿に感動をします。あるときはソロ、またあるときは、プレイヤーが前のプレイヤーに重ね、場合によっては、すべてのプレイヤーが息を合わせて演奏をします。
ジャムセッションには面白いことに、指揮者、マスターなどいません。各プレイヤーが自分の判断に基づいて演奏をします。もちろん周りの演奏者とは全く独立ということではなく、全体として調和がとれ、素晴らしいハーモニーと一体感を醸し出します。ジャムセッションでは、プレイヤーが自由に演奏をしているように見えますが、暗黙のルールが存在します。ルールというよりもマナーに近いのかもしれません。演奏する曲、イントロの始め方、メロディーラインの担当、ソロの順番、曲の終わらせ方などでしょうか。意外とルールがあるものだと思いますが、それでも、クラシックの交響曲などは、指揮者を中心に事前に綿密にルールを決め、練習を重ね、本番に臨みます。クラシックに比べれば、ずいぶんと自由に思えます。
本書で扱うROS2 は、ジャムセッションと本当によく似ていると思います。ROS2 はロボットを動かすシステムです。ROS2 ではノードを作り、ロボットを動かすための細分化した役割を任せます。それぞれのノードはお互いに通信をとって、タイミングよく動作します。ノードへの通信、ノードからの通信、ノードの動作も、それらの処理は、各々が独立した並列処理によって行われます。ROS2 はこのようにすべてのノードを独立に有意差なく運用するシステムと理解していただければいいかと思います。
実は、ROS2 の前のシステムのROS では、すべてのノードが平等というわけにはいかず、ROS master というものが存在して、そのほかのノードを運用していました。ROS2 になって、マスターはなくなりました。よりジャムセッションに近くなりました。ジャムセッションでは暗黙のルールで、円滑で調和のとれた演奏ができますが、ROS2 では暗黙のルールではなく、きちんと決められたルールが定められています。窮屈に思うかもしれませんがルールを守るといろいろなことができ、それにちょっとしたアレンジを加えていくと、ジャムセッションのようにいろいろなバリエーションと一体感を両立するロボットが出来上がります。
この本では、これ以上ジャムセッションのことは書きません。ROS2 について説明をしていきます。本書が皆様のお役に立つことを希望します。
目次
目次
第1章 はじめに
第2章 ロボットを取り巻く環境とROS2
2-1 ロボットを取り巻く環境と発展
2-2 ROSの登場とROS2
2-3 ROS2とディストリビューション
第3章 ROS2の基礎
3-1 ROS2のインストール
3-2 ROS2の操作
第4章 ROS2のプログラミング
4-1 プログラミングの流れ
4-2 トピック
4-3 型の定義
4-4 サービス
4-5 パラメータ
4-6 ローンチ
第5章 ROS2を支えるシステム
5-1 ROS2のアーキテクチャ
5-2 DDSとRTPS
5-3 通信のサービス品質(QoS)
第6章 ROS2を拡張するツール
6-1 RQt
6-2 rosbag2
6-3 RViz 2
6-4 Navigation 2
6-5 Cartographer
6-6 Gazebo
第7章 ROS2で使うハードウェア
7-1 USBカメラ
7-2 デプスカメラ、トラッキングカメラ
7-3 Laser LiDAR
7-4 IMU
7-5 GPS
第8章 マイクロコントローラ
8-1 マイクロコントローラを使うためのシステム
8-2 ROS2で使うマイクロコントローラ
8-3 Dockerの活用
8-4 マイクロコントローラへの実装
第9章 Raspberry PiへのROS2の実装
9-1 Raspberry Piについて
9-2 Ubuntuの書き込み
9-3 WiFiの設定
9-4 Raspberry Piの立ち上げ
9-5 ssh接続
9-6 ROS2 Foxy Fitzroyのインストール
9-7 GPIO libraryのインストール
第10章 Raspberry Pi制御 ROS2ロボット
10-1 サーボモータのコントロール
10-2 センサ入力
10-3 自立制御のためのプログラム
10-4 カメラからの画像情報の取得
第11章 おわりに
上記内容は本書刊行時のものです。