notes
ProjectFortefibre

robot debug devkit 計画 (部共通)

Claude が sim の監視→デバッグ→再デプロイを自動で回す部共通基盤。watchdog は C++、プローブは ESP32 + zenoh-pico、Python は使い捨て解析のみ

要点: salamander (キャチロボ2026) と rc27 の sim デバッグを Claude に任せる閉ループ基盤を部共通で作る。一般論は [[agent-ros2-debug-loop]]、検査の設計は [[runtime-verification-layers]]。ここはプロジェクト固有の決定と実装順。

決定事項#

論点決定理由
対象まず sim のみ実機の自動再デプロイは暴走経路になるので別枠
watchdog 言語C++ (rclcpp)部の標準。常駐ノードは C++ の部内規約と一致。rclpy を選ぶ積極理由なし
プローブESP32 + zenoh-pico (C / ESP-IDF)[[esp32-zenoh-can-probe]]。FW 無改修で CAN タップ・UART・遠隔リセット
zenoh 面以降の観測系Rust 候補zenoh が Rust ネイティブ。バイナリ 1 個で配布可
MCP サーバーTypeScript or RustSDK が充実。zenoh / rosbridge 越しなら rclpy 不要
Pythonbag の事後解析スクリプトのみ使い捨て・pandas 依存の領域だけ合理性が立つ
機体別 configyaml 1 枚 (ns / URDF / frames / CAN 対応表 / key_topics)同一バイナリを config 差し替えで全機体に使い回す

実装順#

  1. watchdog skeleton (C++ / rclcpp)。sim の Layer 1 (不変条件) + Layer 3 (Isaac 真値 diff)
  2. ESP32 プローブ試作。基板 1 枚で CAN タップ + UART タップの PoC
  3. Zephyr FW 到来後 (2027 年前半見込み) に基板の診断フレームを追加し、プローブ経由で watchdog に合流

WebUI#

rc27_webui_private に panel を追加する:

  • Findings panel: watchdog の検出結果 (/watchdog/findings, JSON String) を severity 色分けで時系列表示
  • 真値 diff panel: sim 対象物ごとの推定 vs 真値の誤差
  • agent status: Claude が調査中かどうか (/watchdog/agent_status)

rosbridge の latched QoS の罠 (最初の購読者で QoS 固定) に注意。

適用先#

  • salamander: 缶の認識位置ズレ・gripper/status 未達など、2026-08 に手動でやったデバッグがそのまま Layer 1/3 の検査項目になる
  • rc27: BR/TR の sim 検証。基板 FW 追加候補 (reboot 通知・hardfault log・MCU 温度・VBUS・CAN エラー) のうち半分はプローブ側で前倒し実装できる

背景#

  • Model Hardware Standard (Anthropic + HHMI Janelia、2026-08 発表) の「機器を標準ドライバ + 自然言語タグでネットワーク公開し、エージェントが個別実装なしに制御する」という発想に影響を受けた。機体 config yaml がその簡易版に相当する
  • SWEST28 で知った zenoh-pico / Zephyr がプローブと FW の技術選定の根拠

関連#

  • [[agent-ros2-debug-loop]] — 閉ループの一般論と token 抑制
  • [[runtime-verification-layers]] — 検査 4 層
  • [[esp32-zenoh-can-probe]] — プローブの一般論
  • [[rosbag-manifest-launch-wrapper]] — snapshot bag + manifest
最終更新:

On this page