Skip to content
RFrftools.io
Motor Control2026年3月21日6分で読める

チーグラー・ニコルズ PID 調整:開ループステップ応答から実用的なコントローラーゲインまで

プロセスゲイン、デッドタイム、時定数を使用して、チーグラー・ニコルスの PID 調整について学習します。実際のモーター制御値を使った例を紹介します。無料のオンライン電卓。

目次

PID チューニングが依然として重要である理由

PID コントローラーは、リフローオーブンの温度調節ループからブラシレス DC モータードライブの速度コントローラーまで、いたるところにあります。モデル予測や適応制御の戦略が台頭しているにもかかわらず、従来の PID は依然として組み込み制御の主力製品となっています。理由は簡単です。8 ビットのマイクロに実装するほうが安価で、適切に調整すれば優れたパフォーマンスを発揮できるからです。

落とし穴は、もちろん「適切にチューニング」されていることです。PID のチューニングが適切でないと、振動、オーバーシュート、または応答が非常に遅くなるため、PID が存在しないほうがよいでしょう。チーグラー・ニコルズオープンループ法では、プロセスゲイン「MATHINLINE_14」、デッドタイム「MATHINLINE_15」、時定数「MATHINLINE_16」という 3 つの測定可能なプロセス特性に基づいて、規律ある反復可能な開始点が得られます。

オープン・ループ・ステップ・レスポンス法

アイデアは単純明快です。システムをオープンループ状態にして、アクチュエータにステップチェンジ (たとえば、モータードライバーに電圧ステップ) を加え、プロセス変数 (モーターの速度、温度、位置など、制御しているもの) を記録します。生成された S 字型の応答曲線から、次の 3 つのパラメーターを抽出します。

-プロセスゲイン「MATHINLINE_17」— 出力の最終的な変化とステップ入力の比率。寸法的には、1 ボルト当たり RPM、デューティパーセントあたりの摂氏 (°C) などになる場合があります。 -デッドタイム「MATHINLINE_18」— 出力が応答し始めるまでの遅延 (秒単位)。 -時定数「MATHINLINE_19」— デッドタイム後に出力が最終値の約 63% に達するまでにかかる時間。

チーグラー・ニコルズは、これら 3 つの数値を基に、P コントローラー、PI コントローラー、およびフル PID コントローラーの公式を直接導き出しました。

チーグラー・ニコルズの公式

PID コントローラー の古典的な Ziegler-Nichols 開ループ調整規則は次のとおりです。

「MATHBLOCK_0」

「マスブロック_1」

「マスブロック_2」

その場合、並列 (ISA) 形式の積分ゲインと微分ゲインは次のようになります。

「MATHBLOCK_3」

「マスブロック_4」

PI のみのコントローラー (微分動作なし。ノイズの多いシステムや微分キックが気になる場合によく好まれます):

「MATHBLOCK_5」

「マスブロック_6」

これらのフォーミュラは、4分の1の減衰比を目標としています。オーバーシュートが連続するたびに、前のオーバーシュートの約 25% になります。これは適度にアグレッシブなチューニングで、出発点としてはうまく機能します。

使用例:DC モーター速度制御

たとえば、コンベヤベルトを駆動する 24 V ブラシ付き DC モータ用の速度コントローラを設計するとします。PWM デューティサイクルを 0% から 20% に調整し、タコメータエンコーダでモータ速度を記録します。観察結果は次のとおりです。

-ステップの0.15秒後までモーターは加速を開始しません。→「MATHINLINE_20」 -「マチンライン_21」→「マチンライン_22」で速度が最終値の 63% に達する -20% のデューティ入力で最終速度が600RPMに落ち着く →「マチンライン_23」

これらを PID 式に代入すると、

「MATHBLOCK_7」

「マスブロック_8」

「マスブロック_9」

「マスブロック_10」

「マスブロック_11」

PI のみのコントロールの場合:

「マスブロック_12」

「マスブロック_13」

これらはすぐに確認できます。[PID コントローラーのチューニング (Ziegler-Nichols)] (https://rftools.io/calculators/motor/pid-tuning/) 計算機を開き、「MATHINLINE_24」、「MATHINLINE_25」、「MATHINLINE_26」と入力して結果を確認します。

実際のシステムに関する実践的なヒント

PI から始めて D を追加する 多くのモーター制御アプリケーションでは、速度フィードバック (特に低解像度のエンコーダーから) のセンサーノイズが原因で、微分項が意味をなさないほど厄介になります。まず PI ゲインから始め、安定した動作を検証し、より速い外乱除去が必要な場合にのみ微分動作を追加してください。 Ziegler-Nichols は出発点であり、終点ではありません。 1/4 減衰基準では、実稼働システムで想定されるよりもオーバーシュートが大きくなることがよくあります。一般的な方法は、Z-N 値から始めて、次に「MATHINLINE_27」を 20 ~ 30% 減らし、「MATHINLINE_28」をわずかに増やして速度と引き換えに、よりスムーズなセトリングを行うことです。 サンプルレートに注意してください 制御ループが 1 kHz で動作しているのにデッドタイムが 150 ms の場合、150 サンプルの純粋遅延になります。それで結構です。しかし、ループが 50 Hz でしか実行されない場合、デッドタイムのサンプルは 7 ~ 8 個しかなく、微分項は非常に粗くなります。「MATHINLINE_29」がサンプル周期の少なくとも 5 ~ 10 倍であることを確認してください。 アンチワインドアップはオプションではありません。 積分項は、飽和時 (例えば、モーターがフルデューティの状態でまだ設定値に達していないとき) に誤差を累積します。クランプまたは逆計算によるアンチワインドアップを実装しないと、回復時に大幅なオーバーシュートが発生します。

動作条件に応じて再調整してください。 プロセスゲインと時定数は、負荷、温度、および電源電圧によって変化する可能性があります。モーターが可変質量のペイロードを駆動する場合、無負荷時に調整された Z-N ゲインが全負荷時に振動することがあります。最悪の場合 (最も困難な) 操作点で調整してください。

いつ別の方法を使うべきか

Ziegler-Nichols の開ループ調整では、1 次プラスデッドタイム (FOPDT) プロセスモデルを想定しています。複数の時定数をもつカスケード熱システムなど、システムの次数が大幅に高い場合は、FOPDT 近似が不十分で、コーエンクーンやリレー自動調整などの方法では初期ゲインが向上する可能性があります。ステップテストを安全に実行できないシステム(高出力ドライブ、化学プロセス)には、チーグラー・ニコルズアルティメットゲイン(クローズドループ)法またはソフトウェアベースの自動調整がより適切です。

試してみてください

ステップ応答データを取得し、「MATHINLINE_30」、「MATHINLINE_31」、「MATHINLINE_32」を抽出し、[PID コントローラーチューニング (Ziegler-Nichols)] (https://rftools.io/calculators/motor/pid-tuning/) 計算機を開いて、数秒で最初のゲインを得ることができます。PI パラメーターと完全な PID パラメーターの両方を計算するので、比較してアプリケーションに適した構造を選択できます。ブックマークしておけば、思ったより頻繁に使用することになるでしょう。

関連記事