🧪 新しいチュートリアルを公開中 — ロボットアームからセンサーまで
コンテンツへスキップ

07 自己起立の使用方法とモニタリング ​

完成品は出荷前に 4 方向すべてでテストされています。初回使用時も、輸送後に個体が正常であることを 確認するため、7.2 の手順で各方向を 1 回ずつ検証してください。

7.1 手順 ​

  1. ロボットを直立させた状態で電源を入れ、autorun on: get-up waits for a fall を待ちます。
  2. 任意の方向にロボットを倒し、手を離して約 0.5 秒間静止させます。
  3. getup start pose=<pose> が表示されたら、実行器が自動的に開始します。
  4. 成功するとファームウェアは standing -> executor done を表示し、待機状態に戻ります。
  5. 実行が 14 秒を超えるとファームウェアは executor timeout を表示します。1.5 秒のクールダウン後、 フォールゲートが再トリガーされ、リトライします。

7.2 方向ごとの期待動作 ​

姿勢機構実機での時間
pitch_neg(上端 → −X)肘を接地し、肩のストロークで機体をてこのように持ち上げる約 3 秒
pitch_pos(上端 → +X)同じ持ち上げ。収納中に倒れた場合は、姿勢の再計画で pitch_pos を再度実行約 5〜6 秒
roll_pos(上端 → −Y)長い可動範囲側を使った直接の肩てこ約 3 秒
roll_neg(上端 → +Y)フルストロークの直接押し → 肘ウェッジポンプ ×2 → 必要ならホイップスラムでリトライ;転がりなし約 2〜6 秒

以前のファームウェアは roll_neg を頂部越しに転がしてピッチ持ち上げに再計画していました(5〜14 秒)。 現在のビルドは +Y 押しの鏡像を使うため、4 方向すべてが対称で速度も同程度です。ときどき表示される executor re-plan roll_neg -> ... は、その押しが失敗してフォールバックのリトライが働いたことを 意味するだけで、正常なセーフティネットです。

7.3 実行器のロジック(ファームウェア内部) ​

  • リファレンスのウェイポイントごとに 20 tick(0.4 秒)、線形補間。出力スルーレート制限 0.08 rad/tick。
  • ウェイポイント完了後、0.033 rad/tick でアームを中立へ収納。
  • up_z > 0.95 かつ目標がゼロの状態が 50 tick 続いたら完了。
  • 機体が別の横倒し軸に落ち着いた場合(up_z<0.6、|ω|<0.8 が 15 tick)、中立へ収納して新しい姿勢の リファレンスに切り替え(切り替えは最大 5 回)。
  • roll_neg のリファレンスは段階ごとの適応ホールドを使用:押し/ポンプの段階は up_z<0.92 の間、 段階ごとの tick 上限(押し 40 / ポンプ 30 / ポンプ 30 / ホイップ 40 / 最終 90)までホールドします。 シーケンスの途中で機体が直立した場合、実行器は即座に収納へ移るため、後続の段階が立ち上がった ロボットを倒すことはありません。

7.4 モニタリングとログ ​

bash
python tools/hw_monitor.py COM27

(SR-Support フォルダで .venv を有効化して実行します。02 ページ。 先にシリアルアシスタント/モニタを閉じてください。シリアルツール / Windows 用 UartAssist の ダウンロードは 03 ページ 3.3 節。)

  • イベントと 5 秒ごとのテレメトリサマリを logs/hw_monitor.log に追記します。
  • getup start、executor re-plan、standing、executor timeout、IMU lost などを記録します。
  • サーボエンベロープ(肩 [-1.85,+1.82]、肘 ±1.55)をチェックし、違反時は !! VIOLATION を 書き込みます。
  • 実行器の動作中は 0.2 秒ごとにトレースを出力します:
text
executor pose=roll_neg ph=3 tick=9 tgt=(2.00,-0.80) up=(0.58,-0.24,-0.77) q=(2.00,-0.80) sw=0
フィールド意味
pose現在のリファレンス姿勢
ph / tickウェイポイントのフェーズ / フェーズ内の tick
tgt目標関節角度
up現在の up ベクトル
q現在の関節指令
swこれまでの姿勢切り替え回数

モニタを開くと ESP32 がリセットされます。書き込み前に閉じてください。

7.5 記録の保持 ​

各テストについて、姿勢、done で終了したか、所要時間、切り替え回数、違反の有無を記録してください。logs/hw_monitor.log が正式な記録です。


← チュートリアル目次に戻る