ROSロボットで学ぶ次世代のIoTアーキテクチャ
エンジニアや研究者として成功するための勉強方法やキャリアについて知りたい方必携!
- 発行年月日
- 2023/11/10
- 判型
- A5
- ページ数
- 230ページ
- ISBN
- 978-4-339-02938-3
- 内容紹介
- まえがき
- 目次
- レビュー
- 広告掲載情報
【本書の特徴】
本書は、あえて薄く広くなることを厭わずに、ROSを用いたロボットに関する事柄の全貌を描き出すことを目的としています。ROS自体だけでなく、ハードウェアやロボットを用いたビジネス企画についても触れ、全体が一つの技術物語になるようにまとめてあります。これによって、大学講義、企業研修等で、今後の活動の基礎となる全体像を提供します。
さらに、以下の3つの観点から視点をまとめ、ロボット技術に関して今後取り組むべき目標を提示しています。
・ ロボットに基づくAI研究
・ ロボットを支えるフォグコンピューティングを含むシステムアーキテクチャ
・ ロボット技術動向に基づくビジネス戦略
【構成】
1章では、本書の構成の理解と、例を実行するために必要なソフトウェアのインストールを行って、2章以降の内容の準備とします。
2 章では,試作目的を中心にロボットの具体像を紹介します。
3 章では,要素ハードウェアとして,センサ,アクチュエータのほかに,ロボット実現に用いるエッジ用 GPU,FPGA,RISC―Vについても触れます。
4 章では,自律移動を実現するナビゲーション機構を見ます。このための機構として,ROS2を例にとり,SLAMについて触れます。また,自律移動機能の一般的な原理について,数式によらない入門的な解説を試みます。
5 章では,アーム機構の制御に関してROS2を例にとり,アームを動かす計画を作成するモーションプランニング技術について触れます。また,その一般的な原理について,数式によらない入門的な解説を試みます。
6 章では,アームを持った自律移動ロボットの具体的なアプリケーションの例として,倉庫への適用を思考実験として検討します。これを通じ,ナビゲーション機構とアーム機構を組み合わせて,意味のある仕事を実行するための方法について,タスクプランニングを主体になるべく具体的に解説します。
7 章では,機械学習に関して,深層学習を用いた画像処理と強化学習の実現について触れます。
8 章では,ロボットをクラウドから制御するためのアーキテクチャ関連技術として,コンテナとそのオーケストレーション,フォグコンピューティングなどに触れます。
9 章では,特に物流を例にとり,技術とビジネスの関係,および動向予測を試みます。また,これに対応してエンジニアのキャリアについても考えます。学習の動機となるので,ここから読み始められても結構です。
【読者へのメッセージ】
・ロボットの要素技術に関する研究・開発を行おうとしている方に:ロボットを構成する各要素がどのような理由で相互に関係しているのか、一度全体を見渡してみることをぜひ行ってください。特定技術に深く関わるのは、その後でも遅くありません。
・ロボットのトップエンジニアを目指す方に:エンジニアの使命は、多くの要素技術を有効に組み合わせ、統合することによって価値を創造し、社会に届けることです。ロボットに関しても、それを構成する膨大な要素技術がどのようにして社会的な価値に変換されるのか、その過程を理解することに努力してください。
本書がこれらの一助となることを願ってやみません。
本書の執筆中に,米国の電気自動車メーカのテスラが,作業に用いることができる人型ロボットの開発を表明しました。ロボットの新しい時代の幕開けとも捉えられます。
これまで,工業用ロボットやFA(Factory Automation)の分野で,わが国は主導的な立場を保ってきました。また,本田技研工業のASIMOは二足歩行技術に関して驚くべき先進性を示しました。世界と歴史に誇るべき大きな成果だと考えられます。しかしながら世界では,さらに新しい方向性に基づく技術が着実に育ってきています。そこでは,クラウドや深層学習などの新しい技術が採用されているばかりでなく,技術開発の手法自体も変化しつつあります。
これを例えれば,スマートフォン(以降スマホと表記)の出現に比肩しうる,非常に大きな変革と新たな可能性が近付いているともいえます。スマホとクラウドによって,技術だけでなくIT産業の構造自体が変わったといっても過言ではありません。同等の規模の変化が近付いているのであれば,ぜひチャレンジしてみようではありませんか。うまく波に乗れるのと取り残されるのでは,雲泥の差があります。
そのためには,まず全体として何が起きつつあるのか把握することがたいへん重要です。例えば,IoT(Internet of Things)という言葉における“Things”とは,最初はセンサを指していましたが,最近では,ロボットのようなセンサ情報に基づいて自分で環境に働きかけることができる能力を持った機構も含まれるようになっています。そうなると,自動運転もIoT技術の一つとなります。また,“Internet”とは,単なるデータ通信機構ではなく,情報や価値の共有の意味合いが含まれており,そのような視点が必要になります。このように,“IoT”は非常に広い領域をまとめて指す言葉となっており,基本的な骨格をまず明確に把握する必要があります。個々の技術を深めることは,その後でも遅くはありません。
そこで本書では,自律移動ロボットに焦点を絞り,これに関連するすべての技術を山に登って周囲の地形を確認するように,全体的に俯瞰できるようになることを試みます。自律移動ロボットとは,車輪や無限軌道を用いて自分の知能で移動する機能を持ったロボットで,倉庫などの屋内で物を移動するために利用が広がっています。ここではさらに,作業するためのアームを持つ場合も含めます。
この分野では,最近,ROS(Robot Operating System)が利用されることが増えてきました。しかしながらROSは,この分野全体ではありません。本書では,ROSを道具の一つとして捉え,全体を従来よりさらに具体的かつ手軽に見通せるようにすることを試みました。
また,各章末には「チャレンジしよう」と題し,その章で理解した知識をより深く自分のものにするための課題を準備しました。解答は準備しておりませんが,ヒントや手順を掲載しています。ぜひ取り組んでみてください。
さらに本書の最後では,エンジニアや研究者の勉強とキャリアについても触れます。受験勉強のように,いろいろな技術についてひたすら詳しくなることを目指すのではなく,何のためのどのような知識をどうやって獲得するのかをよく考える必要があるのは,分野を問いません。特に,エンジニアとして成功するためには,ビジネスの方向性と技術の全体像の双方を併せて考えられるようになっていることが重要です。自律移動ロボットを例にとって,これについて考えてみることを通じて,全体のまとめとします。
なお,本書に関連したプログラムや訂正など,追加の内容を https://momoi.org/books/iot に掲示しますので,併せてご利用ください。
2023年9月
田胡和哉
1.準備作業
1.1 本書の構成
1.2 試行に必要な準備
1.3 実際の準備作業
補足資料
2.自律移動ロボットの事例
2.1 自律移動ロボットとは何か
2.1.1 自律移動機能
2.1.2 外界に働きかける機構
2.1.3 タスクプランニング
2.1.4 ロボットの機構
2.2 自律移動ロボットの利用
2.3 自律移動ロボットのハードウェア例
2.4 アームの例
2.4.1 軽量なロボットアーム
2.4.2 試作用自走型ロボットアーム
補足資料
チャレンジしよう
3.ロボットハードウェア
3.1 アクチュエータとその制御
3.1.1 アクチュエータを用いるIoTデバイス
3.1.2 IoTデバイスに使用されるモータ
3.1.3 モータの制御とサーボ機構
3.1.4 モータの形状
3.1.5 I2C
3.2 センサ
3.3 伝統的なエッジ構成技術
3.3.1 Arduino
3.3.2 メインCPU
3.3.3 エッジ基板の実装
3.3.4 処理性能
3.4 新しいエッジ構成技術
補足資料
チャレンジしよう
4.ROSと自律移動ロボットのソフトウェア
4.1 自律移動機能の実装
4.1.1 想定するハードウェア
4.1.2 実現すべき機能
4.2 ROSのプログラミング
4.2.1 ドキュメント
4.2.2 インストール
4.2.3 ROSのプログラム実行
4.2.4 ROSの通信
4.2.5 プログラムの実行
4.2.6 ROSの開発環境
4.2.7 Pythonによる通信プログラム
4.3 ROSによる自律移動の実現
4.3.1 ROSにおけるモータの制御
4.3.2 モータ制御のシミュレーション
4.3.3 MCUとの連携方法
4.3.4 odometry
4.3.5 tf2
4.3.6 Pythonによるtf2の利用
4.3.7 障害物検出とコストマップ
4.3.8 Navigation2
4.3.9 自律移動のシミュレーション
4.3.10 ROSの使いこなし
4.4 ROSナビゲーション機構利用のまとめ
4.5 自律移動機構の原理入門
4.5.1 自己位置推定
4.5.2 SLAM
補足資料
チャレンジしよう
5.ロボットアームの制御ソフトウェア
5.1 制御の目標
5.1.1 ロボットが行う作業
5.1.2 マニピュレータのモデル化
5.1.3 パスプランニング
5.1.4 トラジェクトリプランニング
5.1.5 アームのモーションプランニング
5.1.6 把持プランニング
5.2 ROSを用いたアーム制御
5.2.1 全体の構造
5.2.2 形状のモデリング
5.2.3 試行
5.3 ROSによる把持動作の実現
5.4 ロボットのモーションプランニングの原理入門
5.4.1 C―Space
5.4.2 自律移動のモーションプランニング
5.4.3 トラジェクトリプランニングの枠組み
5.4.4 経路計画
補足資料
チャレンジしよう
6.アプリケーション
6.1 ピッキングロボットによる在庫管理の思考実験
6.1.1 全体の構成
6.1.2 在庫管理システム
6.1.3 入出庫システム
6.1.4 実装方法
6.2 Behavior Treeによるタスク実行
6.3 ロボットの自律行動
6.3.1 ティーチング
6.3.2 行動の自律化
6.3.3 自律行動の必要性
6.4 全体システム
補足資料
チャレンジしよう
7.AIとコンピュータビジョン
7.1 本章で触れる事柄
7.2 コンピュータビジョンとロボット
7.2.1 OpenCV
7.2.2 ROSからのOpenCV利用
7.3 visual SLAM
7.3.1 開発現状の把握
7.3.2 対象画像の特徴点抽出による方法
7.3.3 画素の直接比較による方法
7.3.4 ロボットへの応用
7.4 機械学習と深層学習
7.4.1 機械学習
7.4.2 深層学習
7.4.3 深層学習のフレームワーク
7.5 物体検出,セグメンテーションとSpatial AI
7.5.1 物体検出
7.5.2 セグメンテーション
7.5.3 visual SLAMへの深層学習の導入
7.5.4 Spatial AI
7.6 深層強化学習とその活用
7.6.1 強化学習
7.6.2 深層強化学習
7.6.3 深層強化学習の改良
7.6.4 深層強化学習の実装
7.7 現在できることとできないこと――AI利用のまとめ――
補足資料
チャレンジしよう
8.システム基盤
8.1 クラウド技術
8.1.1 仮想化
8.1.2 VM
8.1.3 コンテナ
8.1.4 コンテナオーケストレーション
8.2 エッジのソフトウェア
8.2.1 RTOS
8.2.2 開発環境
8.2.3 専用ハードウェアへの対応
8.2.4 深層学習を用いた現実的なエッジシステムの実現
8.3 QoS管理とフォグコンピューティング
8.3.1 ネットワークとその仮想化
8.3.2 DDS
8.3.3 フォグコンピューティング
8.4 分散処理モデル
8.5 次世代のIoT基盤と技術課題
8.5.1 解くべき課題
8.5.2 システム像
補足資料
チャレンジしよう
9.エンジニアによる価値創造の具体像
9.1 エンジニアとしてすべきこと
9.1.1 エンジニアの職種
9.1.2 製品・サービスの提供におけるエンジニアの役割
9.1.3 エンジニアとして何をすべきか
9.1.4 試作の勧め
9.2 自律移動ロボットによる社会の変革
9.2.1 対象となる産業分野
9.2.2 ロボットによる物流業の変革
9.3 新しい開発エコシステムの出現
9.3.1 ROSの生かし方
9.3.2 コンテナの持つ意味
9.4 Technology Outlook
9.4.1 ロボットによる物流革命の可能性
9.4.2 技術開発スタイルの変化
9.4.3 戦略
補足資料
チャレンジしよう
あとがき
索引
読者モニターレビュー【 Manny-Lab 様 (業界・専門分野:機械学習や深層学習を用いた統計モデリング)】
「IoT」は大きな広がりを見せており、関係する技術分野も多岐に渡っています。このことは技術の深化という面がある一方で、初学者や新規参入者などにとっては、大きな壁になりかねない印象があります。その中にあって、本書は、その壁を下げることに繋がることが大いに期待できる本です。
その理由は、「ロボット」という非常にわかりやすい題材を取り上げ、IoTについての概観が得られる点にあります。しかも、単に技術要素を羅列的・網羅的にに記載するのでは無く、タイトルにも掲げられている「ROS」を中心に添えて記載し、システムとしての価値創造までを視野に入れた記載となっている点にあります。
個人的な学びのポイントをご紹介します。評者は、これまでROSの知見がなく、どこから手を付けるべきは模索していました。その中で、本書を拝読する中で、ROSについて、ソフトウェアのコンセプト・調べるための情報源・実際の操作コマンド例・システムの中での位置づけなどを、非常に豊富な記載内容から、その概要を始めて把握出来た感触を得ることができました。
このように、本書は、IoTシステムに携わることになった初学者には、もちろんお勧めするものであり、かつ、中堅技術者にとっても自分の担当部分がシステム・価値創造の観点からどのように位置づけられるのかを再確認する上でも、非常にお勧めの内容になっています。
-
掲載日:2024/03/21
-
掲載日:2024/03/13
-
掲載日:2024/03/12
-
掲載日:2024/03/12
-
掲載日:2024/01/31
-
掲載日:2024/01/17
-
掲載日:2023/12/20
-
掲載日:2023/12/04
-
掲載日:2023/12/04
-
掲載日:2023/11/28
-
掲載日:2023/11/17
-
掲載日:2023/11/02
-
掲載日:2023/10/16
関連資料(一般)
- 補足資料(文献リンク,コードなど)はこちらから