ロボットの知覚・自己位置推定・認識を支える考え方を、直感、数式、実装の順につないで解説します。
以下は編集したおすすめの順番です。初めての方は1から、目的が決まっている方は必要な記事へ進んでください。
センサ・自己位置推定・地図・経路計画・制御を一つの流れとして理解し、目的に合わせて既存記事を読む順番を選ぶ。
ROS 2は、センサ、認識、計画、制御を別プロセスへ分け、DDSの通信で結ぶロボット用ミドルウェアである。ノード、トピック、サービス、アクション、QoS、TF2、ライフサイクル、実装とデバッグを、ROS 1との違いと実機運用の注意点まで図解する。
Dead Reckoning(推測航法)は、車輪の回転、IMU、速度センサを積分してロボットの姿勢と位置を更新する基本技術である。差動二輪の運動学、誤差の蓄積、EKFによる補正、屋内搬送ロボットや自動運転での実装を数式と図解で説明する。
カメラが光の反射パターンから間接的に距離を推定するのに対し、LiDARはレーザー光の飛行時間から距離を直接測る。この能動的な測距センサーが返す点群同士を重ね合わせる技術がLiDAR-SLAMである。ICP/NDTというスキャンマッチングの2大アルゴリズムから、LOAMの特徴点設計、Loop ClosureとGraph SLAM、LeGO-LOAM/Cartographer/LIO-SAM/FAST-LIO2に至る代表アルゴリズムの系譜まで、LiDAR-SLAMの仕組みを土台から体系的に整理する。
カメラは意味に強く、LiDARは幾何に強く、IMUは動きに強く、それぞれ苦手がある。Kalman Filter/Factor Graphによる確率的・最適化的な統合の仕組みから、VIO(Camera×IMU)・LIO(LiDAR×IMU)・BEV Fusion(Camera×LiDAR)まで、複数センサーを1つの世界モデルへ統合するSensor Fusionの基礎を体系的に整理する。
複数センサを組み合わせたときの破綻を、時刻・座標・取付位置・共分散の順に切り分ける。
カメラだけ、LiDARだけでは自己位置推定は破綻する場面がある。加速度計とジャイロを内蔵するIMUを組み合わせることで弱点を補い合うVIO(Visual-Inertial Odometry)とLIO(LiDAR-Inertial Odometry)は、なぜIMU単体では位置が求まらないのかという原理から、Filter-basedとOptimization-basedという2つの設計思想、ROVIO/OKVIS/VINS-Mono/OpenVINS/LIO-SAM/FAST-LIO2に至る代表アルゴリズムまでを体系的に整理する。
絶対軌跡誤差と相対姿勢誤差の違いを合成データで確認し、時間同期・整列・失敗区間をそろえた評価手順を作る。
関節角度から手先の位置・姿勢を求める順運動学、その逆を解く逆運動学、そして両者の「速度」をつなぐヤコビアン。DHパラメータによる座標変換の作り方から、解析的IK・数値的IK(Damped Least Squares)・特異点・冗長自由度まで、ロボットアームの動きを支配する運動学を一から積み上げて解説する。
位置制御が硬い環境で接触力を大きくし得る理由から出発し、仮想バネ・ダンパ・質量で力と変位の関係を設計するインピーダンス制御、力から位置修正量を求めるアドミタンス制御、方向ごとに分けるハイブリッド制御を、式・条件・限界とともに解説する。
油圧はなぜ小さな入力でショベルの巨大なアームを動かせるのか。ポンプ、制御弁、シリンダ、作動油、センサ、制御器を一つの閉ループとして捉え、圧力・流量・効率の数式、建設機械・農業機械の現行技術、電動油圧化と最新研究を図解する。
ArduPilotは、機体のセンサ融合、姿勢・位置制御、航法ミッション、フェイルセーフをオープンソースで実装するオートパイロットである。Copter・Plane・Roverの違い、EKF、PID、MAVLink、SITL、実機安全試験までを図解する。
1台のロボットでは解けない問題を、多数のロボットの「単純な局所ルール」だけで解く群制御。Boidsによる群れの再現から、コンセンサスアルゴリズムによる合意形成、リーダー追従・仮想構造・振る舞いベースという3つの隊列制御まで、集中型と分散型の違いを軸に体系的に整理する。