類似事例調査
Web調査結果(2026-07-18実施)。「非AI・ToF/測距センサー+マイコン」で自律走行を実現した類似プロジェクトの整理。 URLは実在・内容確認済みのもののみ。
結論(先に要点)
「ToF×5+マイコン」は本大会系統で優勝実績のある本命構成。 42 Tokyo×トヨタ版の第2回大会では 「VL53L1X×7 + Arduino Nano R4、非AI」の機体が Jetson+カメラ勢を上回り優勝(3周17.5秒)している。 勝敗を分けるのは:
- ToFの測定レート設定とI2C信頼性(デフォルト設定の200msでは致命的に遅い → 20〜30ms連続測定)
- 電源分離(センサー系とモーター系。電力不足でモーター停止の実例あり)
- 現地で高速にパラメータ調整できる仕組み(シリアル/無線での即時書換え)
- 最後はタイヤ・グリップという物理層(「タイヤと路面の清掃が最も効果的」)
1. 本家・派生大会の実績
★最重要: 42 Tokyo版 第2回優勝機(kfukuhar氏)
- ソフトウェアエンジニアが2ヶ月で自動運転ミニカーを作って優勝した (note)
- 構成: Arduino Nano R4 + VL53L1X×7(-60°〜+50°配置、TCA9548A I2Cマルチプレクサ)、タミヤMF-01X。 当初Raspberry Pi 5併用 → リアルタイム性重視でマイコン単体に一本化
- 制御: GapFinder(7センサー中の最遠方向を隣接センサー距離で按分して目標方向決定)+ Pure Pursuit(PD制御の蛇行問題を解消)
- 知見: 壁のみの構造化環境では「ToF+ルールベース」で十分、機械学習不要 / センサー電力不足でモーター停止 → 電源系統分離が重要 / 加減速制御は実装したが本番では無効化(単純化が有効)
公式・他チーム
- 公式GitHub togikaidrive — 公式配布制御プログラムの想定構成は 超音波×5の壁沿い走行(右手/左手法則・PID) → ToF×5への置換は公式思想の正当進化
- タミヤ公式参戦記(2022年優勝) — 重心位置・横転防止バー等シャーシ側チューニングが効いた
- NVIDIA公式ブログ(2021年度) — 無制限部門上位はJetRacer(模倣学習)が多数
- ネクスティ エレクトロニクス参戦記(2023) — 当日の微調整が重要
- マイナビ(42 Tokyo版第2回決勝) — 2位は左右モーター回転差(トルクベクタリング)で旋回性向上
- トヨタタイムズ英語版(2025年大会) — 「わずかな光や摩擦の違いで計算が狂う」
2. 複数ToFによる壁沿い走行の実装事例
| 事例 | 構成 | 主な知見 |
|---|---|---|
| RumiCar | VL53L0X×3 + Arduino/ESP32 | ミニカー自律走行の定番プラットフォーム。段階的演習コードあり |
| RumiCar+挙動クローニング (masato-ka氏) | ESP32 + VL53L0X×3 | ToF3個の距離値だけで周回成功。カメラ不要の実証 |
| VL53L0X×3試作 (elchika) | XSHUTでアドレス変更 | 高レイヤー経由で2Hzしか出ずボトルネックという失敗知見 |
| Wall-E2 (Frank Paynter氏) | VL53L0X×7、2本のI2Cバス | 前後センサー差分=平行度、中央=オフセットでPID追従。タイミングバジェット20ms+連続測定で解決。勝手にアドレスが戻る現象→自動再初期化FW。基板化でエラー激減 |
| クラシックマウスToF (Qiita) | VL53L0X×3 | Accuracyモード200msは遅すぎ→Normal 30ms+連続測定。床反射のため取付高さ4〜5cm推奨 |
| DCマウス研修 (アールティ) | VL53L0X×3 | 床反射で正面の実効検出距離が28cmまで激減。ばらつき±5mm |
| VL53L0X検証 (趣味的ロボット研究所) | — | XSHUT HIGH後10ms待たないと初期化失敗。ビーム角実測25〜35度 |
| ROZ (Hackaday.io) | VL53L1X×5 | 50Hz処理時のCPU時間バジェットがシビア |
3. マイクロマウス等からの制御定石
- 壁制御の定石 — 基準センサ値との差分を角速度目標に比例加算。 振動したらゲイン下げ、壁が切れた側は制御カット(片壁制御へ動的切替)
- 赤外壁センサの外乱対策 (id研) — LED変調+復調で環境光除去
- パラメータ調整論 (Sora氏) — フィードフォワード主体+PIDは補償役。 シリアルでのパラメータ書換え機構が必須級
- 全日本優勝者講演PDF (小島宏一氏) — 「壁制御で直すより、そもそもずれない機体調整が先」
- ESP32でマイクロマウスを作るメリデメ (KERI's Lab) — 性能は十分だがADC完了割り込みなし・I/O本数ギリギリ等の注意
- Wall Following Robot (HC-SR04+PID) — 超音波は斜め壁で測距不能(ToF優位の根拠)
4. マイコンカメラでの矢印・信号認識
- OpenMVテンプレートマッチングで左右矢印→Arduino (公式フォーラム) — NCCテンプレート、閾値0.87まで上げて左右誤マッチ抑制。距離・角度が固定できる競技環境向き
- Pixy2のライン/バーコード検出 (公式) — 60fps、内蔵白色LEDで照明を自前確保
- HuskyLens 2 信号検知カー (DFRobot) — 色ブロブ検出のみで赤/黄/緑を判定
- HuskyLens + Maqueen (DFRobot) — 走行は安価なIRセンサ、カメラはイベント検出専任という役割分担(われわれの構成方針と同型)
- OpenMV H7ハイブリッド検出論文 (PMC) — 色閾値55fps。精度は通常照明94%→低照度13%に激減(照明依存の定量データ。ライト撹乱ゾーン対策の重要根拠)
- ESP32-CAM色検出 — ESP32-CAM単体は約1fpsで走行制御には不向き(→使うならS3系)
5. 白線(ゴールライン)検知の定石
- mbedロボトレーサ教科書 (熊本高専, PDF) — 2ms周期、LED点灯/消灯差分で外乱除去、「マーカー幅ぶんの通過距離の積算値」で確定(チャタリング対策)
- ロボトレーサーソフトウェア (cpu4edu) — 左右対のセンサで交差点/マーカー判別、検出→確定の2段階状態遷移
- 大垣工業高校 課題研究 (PDF) — 高速走行でマーカー読み飛ばしが実際に発生 → センサ位置・速度で対処
- ライン横断カウント教材 — 「検出→カウント→抜けきるまで再カウント禁止」の2状態トグルが周回カウントの標準形
- TCS34725で走行中の色検知 (Arduino Forum) — 積分時間50msが高速走行ではボトルネック → 周回カウントにはフォトリフレクタが有利
- TCRT5000基本特性 — **最適距離2.5mm(レンジ0.2〜15mm)**と近接必須
われわれの構成への適用ポイント
- VL53L1X化+短タイミングバジェット+連続測定は最優先の技術タスク(現行L0Xのままなら設定見直し必須)
- XSHUT初期化の10ms待ち、稼働中のアドレス戻り検出→自動再初期化、早期の基板化
- 電源分離(センサー/ロジック系とモーター系)を車両設計の前提に
- 制御はFF主体+壁沿いP(D)、壁が切れる場所・黒幕区間でのモード切替を最初から設計に入れる
- 現地チューニング用のパラメータ即時書換え(無線シリアル等)を Phase 2 で仕込む
- 矢印認識は「イベント検出専任カメラ+UART」の分離構成が実績多数。照明変動が最大の敵なので露出固定+本番会場での閾値合わせを前提に