目次 — 知りたいところから読む
屋内自律ロボットを学ぶときは、アルゴリズム名を暗記する前に「センサの値が、どのようにモータの指令へ変わるか」を追うと全体を見失いにくい。本記事は、車輪で床を移動するロボットを対象に、既存の解説と実装記事をつなぐ入口である。
最初に追う一本の流れ
指令した速度と実際の速度は、滑りや負荷によって一致しない。そのため観測は一度きりの入力ではなく、走行中に繰り返す。地図の障害物と目の前の障害物も一致するとは限らず、局所的な観測を計画へ戻す必要がある。
1:センサが何を測るか
LiDARで距離、IMUで角速度と比力、エンコーダで車輪の回転を確認する。最初の到達点は「各センサの出力だけでは分からない量」を説明できること。車輪の回転だけでは床との滑りを直接測れず、IMUの積分には誤差が蓄積する。
2:現在位置を推定する
デッドレコニングからLiDAR SLAM、センサフュージョンへ進む。短時間で滑らかな位置と、地図に対して補正した位置を分けて考えると、odomとmapの役割を理解しやすい。座標の意味はROS REP-105に対応する。
3:通れる場所を表現して経路を選ぶ
占有格子で空間表現、経路計画で経路選択を学ぶ。地図上で一点が通れても、幅のある車体が通れるとは限らない。演習では、車体の幅を広げたときに通路の可否が変わる理由を、地図と車体形状の両方から説明する。
4:動作へ変えて確認する
PID制御とPython実験で目標値への追従を確認し、ROS 2入門からNav2の最小手順へ進む。Nav2の役割分担は公式のナビゲーション概念も参照できる。
| 学びたいこと | 最初に行う確認 | 次の出口 |
|---|---|---|
| 原理を理解する | 各ブロックの入力・出力を紙に書く | 分野別の詳細解説 |
| シミュレーションする | 地図上で初期位置とゴールを指定する | Nav2の最小手順 |
| 実機を改善する | 同じ条件のログを複数回残す | SLAM評価・電源の切り分け |
実装記録と学習手順を往復する
Duskcoilのnewbotの地図・ナビゲーション記録には固有の構成と不具合がある。最小シミュレーションと同じ構成だと思い込まず、センサ、TF、地図への変換、速度指令の経路を対応づけて読む。実装上の依存関係はNav2の初回セットアップガイドからも確認できる。
最後に、観測が途切れたときにどの処理が止まり、モータへ何が出るかを説明してみよう。分からない境界が、次に読むべき記事である。
コメント
コメントの投稿にはログインが必要です
まだコメントはありません。