Control
PID と FF 項の自動チューニング
FF はプラント同定で全項が決まる。PID はモデル同定 + 極配置で 1 パラメータ (帯域) に集約できる
要点: FF スタックは 4 パラメータ (クーロン摩擦・粘性摩擦・慣性 J・重力 duty) を 30-40 秒の同定シーケンスで測れる。PID gain はモデル同定後の極配置で velocity 帯域 ω_v を選ぶだけで決まる。
FF 項の同定
| パラメータ | 測定法 |
|---|---|
| クーロン摩擦、粘性摩擦 | 等速 sweep で duty = c·sign(v) + b·v + gravity を LS fit |
| 重力 duty | 上下 2 方向の同速度セグメントで duty 平均 |
| 慣性 J | 自由減衰 (duty=0) の から |
| accel_ff_gain (= J/Kt) | 上の J と仕様書 Kt から計算 |
順序:
等速 sweep → クーロン c、粘性 b、重力 g を同時 fit
自由減衰 → J (b, c 既知として)
accel_ff_gain = J/Kt (Kt はモータ仕様)
PID の自動チューニング手法
| 手法 | 概要 | 適性 |
|---|---|---|
| Ziegler-Nichols step | ステップ応答の遅れ L と時定数 T | 単純だが gain 高め |
| リレーフィードバック (Åström-Hägglund) | 極限サイクル振動から Ku・Tu | 閉ループで安全 |
| モデル同定 → 極配置 | J, Kt から | パラメータ既知の系で最短 |
| ILC (Iterative Learning Control) | 同じ軌道を繰り返して gain 学習 | 反復動作 |
| ベイズ最適化 | 追従誤差 RMS を Kp/Ki で最小化 | シミュ向き、実機は破損リスク |
モデル同定 → 極配置
FF 同定と同じデータから gain を計算できる。velocity 帯域 ω_v を 1 個決めれば決まる:
の目安は機構が許す帯域 (例: 100 rad/s)。cascade で position 帯域を velocity 帯域の 1/5 に取るのが古典的な設計指針。
再測定の粒度
| 対象 | 頻度 | 理由 |
|---|---|---|
| PID gain | 保守時 (yaml 保存) | J は積載で変わるが gain schedule で対応 |
| 摩擦係数 | 毎回 or 日次 | 温度・グリス劣化で変化 |
| 重力 duty | 積載状態ごと | 質量が変わる |
| J (慣性) | 保守時のみ | 短期変化はほぼ無い |
安全性
PID auto-tune は機構が振り切って壊れない範囲を先に決める必要がある。
- リレー法は極限サイクルを意図的に起こす → 位置制御軸は soft limit で壁を作る
- ステップ法は gain 過大で発振
- 対策:
- キャリブ専用モードで soft limit を厳しくする
- 小振幅から開始、gain を徐々に上げる
- watchdog 短めに、abort 条件を明示
シーケンス例
総所要時間 30-40 秒。
関連
- FF スタック
- 限界感度法
- プロジェクト実装計画: PID/FF 自動チューニング (RC27)
最終更新: