SCOUT × MulmoChat

UI コンポーネント一覧 — 実装済み・次・将来
実装済み(今動いている)
次に追加可能(すぐ作れる)
将来(Phase 3-4)
✅ 実装済み

今動いているUI

状態を見せて
📡 SCOUT Status
📷 カメラ画像
Positionx=1.23 y=4.56
Speed0.000 m/s
State停止中
Navidle
SCOUTは停止中です。指示をどうぞ。

📡 ステータスパネル

カメラ画像+位置+速度+Nav状態を一覧表示
「状態を見せて」「今どうなってる?」
0.2m前進して
✅ 前進 0.20m
Before
After
0.2m前進しました。

✅ アクション結果(Before/After)

移動・回転の実行前後の画像を横並びで比較表示
「0.2m前進して」「右に30度回って」
🤔 右回転が失敗しました。どうしますか?
強制停止 — まず停止させます
状態確認 — 詳細を調べます
小さな角度で試す — 10度で再試行
選択肢をクリックしてください。

🤔 選択肢フォーム(クリック可能)

異常時にLLMが自動生成。クリックで回答が送信される
LLMが判断に迷った時に自動表示
🔧 次に追加可能

tool_executor.py にツールを追加するだけ

🚀 将来(Phase 3-4)

Teach & Repeat + VPR との統合

🔍 ローカライゼーション診断
📷 現在画像
📷 Teach画像 #47
VPR一致度0.32 (低)
Gap0.0008
Teach位置#47 / 120
推定原因照明変化
🤔 対処法を選んでください
再試行
0.3m後退して再試行
次のwaypointへスキップ
巡回中止

🔍 VPR診断パネル(presentDiagnosis)

現在画像とTeach画像の比較+VPR信頼度+推定原因+選択肢
Repeat中にVPR信頼度が低下した時に自動表示
ルート一覧を見せて
📋 Teachルート一覧
Aルート — 120m / 成功率 92% / 最終: 2/10
Bルート — 85m / 成功率 88% / 最終: 2/12
Cルート — 200m / 成功率 75% / 最終: 2/8
どのルートで巡回しますか?

📋 Teachルート一覧(showTeachRoutes)

登録済みルートの距離・成功率・最終実行日を一覧表示
「ルート一覧」「どのルートがある?」
Bルートで巡回して
🚶 巡回中: Bルート
進捗7 / 12 waypoints (58%)
経過2分15秒
VPR信頼度0.87 (良好)
Bルートを巡回中です。58%完了。

🚶 巡回進捗パネル(startPatrol)

進捗バー+waypoint番号+VPR信頼度をリアルタイム更新
「Bルートで巡回して」「巡回開始」
今日の失敗をまとめて
📈 失敗復帰レポート
時刻種別対処復帰TTR
14:20VPR低下後退+再試行成功12s
14:35障害物スキップ成功8s
15:10VPR低下巡回中止失敗
復帰率 67% 平均TTR 10s

📈 失敗復帰レポート

失敗種別・対処・復帰結果・TTRを集計。論文の評価データに直結
「今日の失敗をまとめて」「レポート出して」

💡 追加の仕組み(すべて同じパターン)

すべてのUIパネルは同じ仕組みで追加できます:

1. tool_definitions.py にツール定義を追加
2. tool_executor.py に実行ロジック+gui_data の type を追加
3. app_flask.py の JavaScript に render関数を追加

LLM側の変更は不要。ツール定義を追加すれば、LLMが自動的に使い方を判断します。