YouDuck.ai

deadman — 停止ボタンが無い理由

最終更新

deadman はタイムアウト機構です。一定時間、新しい意図指令が届かなければ robotd が速度をゼロにします。

これが停止ボタンの代わり

Microduck のパッドには停止ボタンがありません。これは意図的です。

  • スティックを放す → 指令が速度ゼロになる → ロボットは立ち止まる
  • padd が落ちる → 何も届かない → deadman が作動 → 止まる
  • パッドの電池切れ・通信圏外 → 同じ

専用の停止ボタンは後ろ 2 つのケースで役に立ちません。プロセスが落ちていれば、そのボタン操作もまた届かないからです。

どこで目にするか

robotctl monitor で、要求値と適用値が食い違ったとき:

deadman — no intent arrived recently, velocity zeroed

「スティックを前に倒しているのにロボットが動かない」の最も一般的な説明です。これが出ていれば、問題は指令の到達経路(パッド、padd、無線)にあり、ポリシーやモーターではありません。

deadman に見えない故障

deadman が捉えられないケースが一つあります。リンクは繋がったまま、届いている指令が古い場合です。すべて正常に見え、ロボットは古い命令で歩き続けます。

これはパッドの生入力ストリームでしか分かりません。robotctl monitorp を押し、入力レポートの間隔を読みます。ゲームパッドのペアリングを参照してください。

関連