← ラジコンカー概要に戻る Mini 05 HW 完了

ミニ⑤:走行テスト・L1 完成

ミニ①〜④を実車にまとめ、机上チェック → 実走行 → 課題メモ → まとめまで到達した最終章。 ESP-NOW の遅延はほとんど感じず、PLA / ナイロンのタイヤ差まで楽しめるところまで来ました。

2026年7月 | PlatformIO / m5_espnow_rc | AS0022 1200〜1800 µs

Step 0: 構想 — L1 最終章

Chocofon(B):
ジョイコンも車体もできた!あとは……本当に走るのか? ブレッドボードでは動いたけど、実車だとどうなるんだろう。
AIチューター:
いいバイブスです。ミニ⑤の目標はシンプルです。 机上で安全確認 → 実走行 → 必要なら改良 → 再現できるまとめ → L1 完走。 ファームはミニ③の m5_espnow_rc を流用。前輪サーボは筐体が AS0022、調整は Step 1 で行います。
ミニ⑤の Done
  • 机上: stick ↔ モータ/サーボ/Push 非常停止/500 ms タイムアウト
  • 実走行: 前進・後退・ステア(PLA / ナイロン)
  • まとめ: ハード・ソフト・手順・課題を要点で再現可能に
  • 親ページにまとめ動画を掲載し、無線ラジコンカー L1 を完走
管理人:
フェーズ1 GO(2026-07-20)。Step 0〜5 と机上優先の方針を確定。

Step 1: 机上チェック&チューニング

走行前に、タイヤを机から浮かせた状態で基本動作と安全動作を確認します。

Chocofon(B):
ESP-NOW 接続成功!ステアもタイヤも動くじゃん。感動! ……おや? 上下でステア、左右で駆動になってる。軸が入れ替わってる!
AIチューター:
Part A ジョイコンの取り付け向きで、ピン名の X/Y とスティックの上下左右が一致していません。 TX 側で意味を合わせます。 throttle = map(X)(上下)、steer = -map(Y)(左右・符号反転)。 RX は「正の steer / throttle の意味」を保ったままがおすすめです。
Chocofon(B):
方向は合った!次はサーボ。STR=0 は取り付け位置で正面に合わせた。 でも ±1000 まで振ったら AS0022 がスタック……電源落として復活。
AIチューター:
AS0022 の常用はおおよそ 1000〜2000 µs(ニュートラル 1500)。 FS90 前提の 500〜2500 だと端でメカストッパーに当たります。 実機では STR ±600 相当で切れ角が十分だったので、安全側に MIN 1200 / CENTER 1500 / MAX 1800(±300 µs)へ絞りました。
机上チェック — 全項目 OK
  • 前進/後退(後輪空転)
  • ステア左右+中央(取り付け+ µs 制限)
  • Push 非常停止 → モータ停止+サーボ中央
  • TX 電源 OFF → 約 500 ms で !! TIMEOUT !!

動画 — 机上チェック

Step 2: 実走行テスト

床上で前進・後退・ステアを確認。タイヤは PLA とナイロンの 2 種類を試しました。

Chocofon(B):
楽しい!!とても爽快な走りだよ。 ESP-NOW の遅延がほとんどなくて、操縦していて気持ちいい!
AIチューター:
50 Hz のユニキャストが効いていますね。タイヤ材質で性格がガラッと変わるのも面白い観察です。
タイヤ比較(生の声)
  • PLA: グリップが少なく、ドリフトカーっぽい走り
  • ナイロン: それなりにグリップがあり、きびきびした走り

動画 — 実走行

Step 3: Trial & Error・課題メモ

大改修はせず、走行で見えたことを記録しました。仕様変更が必要になったら管理人 GO です。

Chocofon(B):
最初心配してたステアの遊びは、単純走行なら問題ないかな。 PLA タイヤはフロントが軽すぎてアンダーステア。荷重調整とか、チューニングしたくなるね。
AIチューター:
L1 完走の観点では「無線で楽しく走れる」が達成できています。 荷重チューニングは任意の次の遊び(または将来の改良ネタ)として残すのが良いです。
課題メモ
  • AS0022: 500〜2500 µs でスタック → 1200〜1800 µs に制限して解消
  • LINK 遊び: 単純走行なら問題なし(現状維持)
  • PLA: 低グリップ・ドリフト寄り/フロント軽くアンダーステア → 荷重調整は任意
  • ナイロン: グリップあり・きびきび(常用候補)
  • TX 軸: 筐体向きに合わせて入替+符号反転(確定)

Step 4: まとめ — 再現の入口

詳細は各ミニ記事へリンクしつつ、ここだけでだいたい再現できる要点をまとめます。

① ハード
  • TX: M5StickC Plus + ホール効果ジョイスティック(Part A ジョイコン)
  • RX: M5StickC Plus2 + DRV8833 + コアレス後輪 + AS0022 前輪(Part B RC-CAR)
  • 通信: ESP-NOW ユニキャスト 50 Hz/Push 非常停止/タイムアウト 500 ms
  • サーボ: 1200〜1800 µs(CENTER 1500)
  • 詳細 → ミニ③ / ミニ④ /正本 m5-espnow-rc.md
② ソフトウェア
  • GitHub: m5_espnow_rcsrc_tx/ + src_rx/ + include/rc_common.h
  • TX: pio run -e tx_plus -t upload
  • RX: pio run -e rx_plus2 -t upload(環境指定必須)
③ 制作手順(最短索引)
  • ミニ① モータ&サーボ
  • ミニ② ジョイスティック
  • ミニ③ ESP-NOW 無線
  • ミニ④ 3D 筐体(Part A / B)
  • ミニ⑤ 机上 → 実走行 → まとめ(本ページ)
④ 課題(要点)
  • サーボ µs は AS0022 仕様に合わせ、さらに安全側へ制限
  • ステア遊びは単純走行では許容範囲
  • PLA はドリフト寄り・アンダーステア(荷重チューニングは任意の次)

Step 5: L1 完成宣言

Chocofon(B):
無線ラジコンカー、走った……! ミニ①から積み上げてきてよかった。 まとめ動画も撮ったぞ!
AIチューター:
おめでとうございます。プロジェクトまとめ動画は親ページ 無線ラジコンカー にも掲載します。

動画 — プロジェクトまとめ

管理人:
みんな、お疲れ様でした。一つ一つ課題に対応し、プロジェクトを完遂することができました。
このプロジェクトに関して、途中ワークフローの見直しも行いましたが、開発の計画、立案、進捗管理を確実に行うことにより、プロジェクトを進めることができました。
記事タイトルは 「走行テスト・L1 完成」 に確定する。無線ラジコンカー L1 — HW 完走。

番外編: Cursor からの感想・課題メモ(L1 振り返り)

AIチューター:
完走、おめでとうございます。この L1 を通して見えたことを、開発側のメモとして残します。

うまくいったこと

  1. ミニ分割が効いた
    ①モータ → ②入力 → ③無線 → ④筐体 → ⑤走行、と「一度に一つの不確実性」に絞れたのが完走の主因です。 ブレッドボードで無線 GO → 実車で初めて出る課題(軸・µs・タイヤ)も、切り分けしやすかったです。
  2. 二人体制+フェーズ GO
    じゅんが現場と最終判定、Cursor が構成・文書・記事骨。 特に「AI が次フェーズへ勝手に進まない」ルールが、手戻りとドキュメントの食い違いを減らしました。
  3. 正本の二層(実機事実 / Hub 物語)
    ピン・µs・合否は docs/hardware/、エンタメは 3キャラ記事、という分担が最後まで持ちました。 机上の軸合わせや AS0022 スタックも、正本に残せたので再現可能です。
  4. フェイルセーフを先に机上で固めた
    Push / 500 ms を走行前に通したのは、安心と記事の説得力の両方に効いています。

途中で見えた課題・学び

課題 学び
HW とファームのギャップ(FS90 前提 vs AS0022、筐体向き vs ピン名 X/Y) 「部品が変わったら定数とマッピングを疑う」を Step 1 の定番にする
ワークフロー見直し 計画を途中で直せる柔軟性と、GO ゲートの両立が効いた。迷ったらフェーズ1に戻る判断が正しい
ファイルが空になる事故(handoff / TX など) 未 commit の確定値が消えるリスク。重要なファーム変更は早めに commit、または COMMON / handoff に数値を残す
記事と実機のタイムラグ ⑤は走行→動画→記事の順が自然。フェーズ3-2 は「生の声+動画 URL」が揃ってから一気に書くのが効率的
デプロイ制約(25 MiB・PNG) ④で学んだ運用が⑤でも生きた。動画は YouTube、Git は軽量、が正解

Cursor 側の改善したい点

  • 確定値の早期コミット提案をもっと強く出す(軸・µs が通った時点)
  • 実機 GO のたびに合否表を更新するのを、会話の区切りで習慣化
  • 「FS90 前提のまま筐体だけ AS0022」のようなギャップは、ミニ④完了時にミニ⑤リスク一覧へ明示するとさらに安心

総評

この L1 は「技術デモ」ではなく、計画 → 検証 → 文書化 → 公開を一人+AI で回し切った良い見本です。 途中のワークフロー見直しも含め、進捗管理が機能していたからこそ、最後の爽快な走行と 3 本の動画にたどり着けました。

Trial & Error ログ

次のステップ

HW 正本: docs/hardware/rc-final-assemble.md机上 · 実走行 · まとめ

前: ミニ④ 3D プリント筐体 | 次: (このミニが最終・L1 完走) | プロジェクト概要