アプリケーションノート

Moku:Go PID コントローラーを使用した閉ループ調整ラボ

システムの閉ループ応答を使用して PID コントローラーを調整する方法

Moku:Go

Moku:Go は、14 個以上のラボ機器を XNUMX つの高性能デバイスに組み合わせています。このアプリケーション ノートでは、Moku:Go PID コントローラー、オシロスコープ、プログラマブル電源を使用して、PID コントローラーのさまざまな調整方法を視覚的に学習できる魅力的な方法を提供します。

 


概要

比例積分微分 (PID) コントローラーは、フィードバック制御の最も一般的な形式の 1 つであり、車のクルーズ コントロールやドローンのモーター制御など、さまざまなアプリケーションで使用されています。 PID コントローラーの目的は、プロセスを駆動して、通常はセットポイントと呼ばれる指定された出力に到達することです。コントローラーのフィードバックは、このプロセスの制御を調整し、最適化するために使用されます。 Moku:Go はデジタル制御の PID コントローラーを備えています。グラフィカル ユーザー インターフェイスはゲイン プロファイルを動的に視覚化し、ユーザーは PID コントローラーの伝達関数をリアルタイムで計算して表示する周波数応答グラフにゲイン値を直接ドラッグ アンド ドロップできます。これにより、学生は PID ゲイン値とクロスオーバー周波数を変化させながら、システムの極と零点を直接見ることができます。

 

このアプリケーションの目的は、現代の学部研究室のニーズに合わせて制御理論研究室をどのように更新できるかを実証することです。通常、制御理論は、機器を使用する物理的な実験室はほとんどなく、厳密な数学的モデリングを通じて教えられます。このアプリケーションは、学生が教室で学んだ理論を現実の制御システムに簡単に結び付けるのに役立つ、より視覚的なコンポーネントを適用することにより、制御理論教育への最新のアプローチを導入します。これは、DC モーター ファン、IR 距離センサー、および Moku:Go で利用可能ないくつかの統合機器を使用してピンポン球の高さを制御することによって行われます。 Moku:Go は 14 を超える実験用機器を提供しており、そのうちの XNUMX つであるオシロスコープ、PID コントローラー、プログラマブル電源がこの実験に使用されています。これらの機器のほとんどは同時に使用され、モーター制御回路を駆動し、センサーデータを取り込み、指定された信号を出力して DC モーターの速度を同時に制御できます。このようにして、ピンポン球の立ち上がり時間、オーバーシュート、定常状態の高さなどの特性をユニバーサル グラフィカル ユーザー インターフェイスから制御および測定できるため、学生は複数の高度な概念を迅速に理解できます。また、Moku: アプリを使用したリアルタイムの調整も可能で、学生はさまざまな PID ゲインが数学的および物理的にシステムにどのような影響を与えるかを確認できます。

動作理論

この実験では One Moku:Go を使用して、PCB に電力を供給し、センサー データを読み取り、PID コントローラーを実装し、制御信号を生成します。 Moku:Go M2 モデルには XNUMX チャンネルのプログラマブル電源ユニット (PPSU) が搭載されており、このようなプロジェクトに非常に役立ち、多くのラボにとってワンボックス ソリューションとなります。この実験では、PCB と制御対象の主要システムである DC ファンに電力を供給するために XNUMX つの PPSU チャネルが使用されます。 Moku:Go には、データを読み取るための XNUMX つの入力チャンネルと、波形を生成するための XNUMX つの出力チャンネルもあります。この実験では、両方の入力チャネルと XNUMX つの出力チャネルがデータの読み取りと制御信号の生成に使用されています。 PID デモ キットと Moku:Go が閉ループ システムでどのように連携して動作するかについては、下の図を参照してください。

 

図 1: PID デモキットのブロック図

 

図 2: Moku:Go PID コントローラーとデモキットのブロック図

ADC1 は、ポテンショメータによって制御されるセットポイント信号を読み取ります。 ADC2 は、チューブの上部に取り付けられた IR センサーを読み取ります。これら XNUMX つの信号は Moku:Go で実行されている PID コントローラーに送信され、制御信号は DAC によって生成されて PWM ドライバー回路に送信されます。この制御信号は PWM のデューティ サイクルを決定し、DC ファンを直接変更し、その後チューブ内のボールの高さを変更します。

 

PWM ドライバは、NE555 タイマー (U1) を使用して動作し、コンパレータ (U2) の反転入力に供給されるノコギリ波を生成します。 Moku:Go からの PID コントローラーの出力 (Out1 または DAC1) はコンパレーターの非反転入力に供給され、PWM 信号が生成されます。この信号は、2 V ファンによって消費される電力を制御する MOSFET (Q5) に送信されます。ファンが受け取る電力の量は、ピンポン球が浮上する高さに直接変換されます。

図 3: PID コントローラーのデモ回路図

このラボのセットアップのもう 5 つの部分は、ボールを浮遊させるために使用される機械システムです。これは、3 V DC ファン、20D プリント部品 (チューブ、ファン コネクタ、センサー コネクタ)、IR センサー、およびピンポン ボールで構成されます。チューブの側面には、システムに対する可変抵抗として機能する XNUMX/XNUMX インチ幅のスリットがあります。 XNUMX mm ごとに小さな垂直スリットがマーキングされています。マーキングは、ボールの上部から測定するために使用する必要があります。これは、IR センサーが最初に認識するものだからです。これは、後で PID コントローラーを調整する場合に重要です。

 

実験設定

コンポーネントリスト

  • Moku:Go
  • PID コントローラー デモ PCB
  • PID コントローラーのデモ 3D プリント部品

 

 

図 4: PID コントローラーのデモ キット

PID コントローラーの調整

Moku:Go PID コントローラーのセットアップ

PCB 上のこのデモのセットアップを以下の図 5 に示します。必要なケーブルは、オシロスコープ プローブ XNUMX 本、BNC 対アリゲーター ケーブル (または BNC 対ミニ) XNUMX 本、およびバナナ 対 アリゲーター ケーブル XNUMX 本です。これらのケーブルはすべて (BNC-to-アリゲーターを除く) Moku:Go に含まれています。

図 5: PCB ケーブルのセットアップ

PID コントローラーのソフトウェアのセットアップは、ブロック図スタイルのインターフェイスのおかげで非常に簡単で、学生は制御システム理論を現実世界の実践にシームレスに適用できます。 Moku:Go に接続したら、PID コントローラー計測器を開きます。制御行列の最初の行を [1 -0.2] に設定します。制御マトリックスは、入力 2 からのデータをスケーリングして入力 1 (セットポイント) から減算できるようにすることで、物理システムからのフィードバックを可能にします。これは、図 1 で使用されている加算ブロックと非常によく似ています。スカラーとして -0.2 が選択されている理由は、IR センサーのダイナミック レンジがノコギリ波発生器のダイナミック レンジと一致する必要があるためです。次に、入力オフセットを -1 V に、出力オフセットを 2 V に設定します。入力オフセットの理由は、ボールの開始位置 (約 1 mm) により、このシステムの IR センサーには約 200 V のオフセットがあるためです。 IR センサーから離してください)。ノコギリ波ジェネレーターのオフセットが 2 V であるため、出力オフセットは 2 V に設定されます。IR センサーの平均オフセットに基づいて入力オフセットを変更する必要がある場合があることに注意してください。ただし、1 V が適切な開始点です。

 

図 6: 閉ループ コントローラーのセットアップ

PID コントローラーのデモ ハードウェアと Moku:Go PID ソフトウェアが閉ループ調整用にセットアップされました。

 

オープンループ応答

閉ループ調整方法に飛び込む前に、システムをテストして、システムがどのように動作し、どのように制御するかを理解することをお勧めします。システムの開ループ応答は、テスト対象のシステムにステップ入力を送信してその応答を測定する、非常に一般的で簡単な測定です。これは、PID コントローラーの制御マトリックスを [1 0] に設定し、入力および出力オフセットを 0 V に設定し、比例ゲインを 0 dB に有効にすることで実行できます。この設定により、出力が入力 (設定値ポテンショメータから入力 1 によって読み取られる電圧) を追跡できるようになります。

図 7: 開ループ コントローラーのセットアップ

設定値のポテンショメータを変更すると、ボールの高さが変化することがわかります。設定値ポテンショメータ信号を表示するには、入力 1 の後にプローブ ポイントを有効にし (赤いプローブ ポイント アイコンをクリック)、トラッキング カーソルを有効にして、ポテンショメータの変化に応じて設定値電圧をより簡単に確認できるようにします。

 

図 8: 設定値ポテンショメータ信号

開ループのステップ応答測定を行うには、入力 2 (IR センサー) でプローブ ポイントを有効にし、トリガー モードをノーマルに設定し、トリガー チャンネルをプローブ B に設定します。セットポイント ポテンショメーターを使用してボールに適切な高さを選択し、 Out 1 をクリックして出力を無効にします。選択したボールの高さに基づいて適切なトリガー レベルを選択すると、コントローラーの出力が再び有効になると、ボールは前の位置まで上昇し、以下の図 9 のようなグラフになります。

 

図 9: 開ループのステップ応答

内蔵オシロスコープには、開ループ応答信号の特性を迅速に評価できるカーソルと自動測定機能もあります。

 

閉ループ PID コントローラーの調整

PID コントローラーにはよく知られた手動調整方法がいくつかあります。そのうちの 1 つは、システムの開ループ応答を使用して PID ゲインを決定する Ziegler-Nichols 法として知られており、別のアプリケーション ノートで実行されます。 こちら。このアプリケーションでは、適度に安定した結果が得られる閉ループ方式を使用します。閉ループ調整を開始する前に、コントローラ設定を図 6 の設定と同様にリセットしてください。

 

a. PID コントローラー計測器を開き、比例ゲインのみをオンにして 0 dB に設定します。ボールが調整に必要な高さになるまで、セットポイントポテンショメータを調整します。開始高さが異なる場合、PID コントローラーのパラメーターは以下の値とは異なります。このアプリケーションはボールを 60 mm、つまり V で開始します。セットポイント = 2.1 V (IR センサーが認識する距離であるため、ボールの上部まで 60 mm)。

図 10: 比例ゲイン設定

b. ボールが振動し始めるまで比例ゲインを増やします。マウスを使用してゲインをドラッグし、グラフ上で直接調整できることに注意してください。マウス ホイールを使用して数値をスクロールして調整するか、値を手動で入力するオプションもあります。

 

図 11: システム発振グラフ

c. 微分器のゲインを最高のクロスオーバー周波数まで有効にし、発振が停止するまで微分器のクロスオーバー周波数を下げます(または、センサーのノイズにより通常はボールがチューブ内でわずかに動くため、微分器のクロスオーバー周波数は大幅に下げられます)。

 

図 12: PD コントローラーの値とシステム応答

d. 最も低いクロスオーバー周波数で積分器ゲインを有効にします。これによりコントローラーが飽和するため、積分器の飽和レベルも有効にします。これにより積分器のクロスオーバー周波数が制限されるため、システムも飽和しません。これら 60 つのパラメータを有効にするとボールの高さが増加するため、さらに調整する前に、ボールがステップ a で調整を開始したときと同じ高さ (この場合は約 XNUMX mm) になるまで比例ゲインを下げます。

 

図 13: PID コントローラーの値とシステム応答

ボールがステップ b と同様の大きさで振動し始めた場合は、IR センサーの出力が上記の図 13 と同様になるまで、積分器のクロスオーバー周波数と微分器のクロスオーバー周波数を調整します。

 

e. 初期の PID ゲインが見つかったので、ステップ入力に対する閉ループ応答に基づいて各ゲインを調整するためのガイドとして以下の表を使用し、試行錯誤によってシステムをさらに調整できます。最適なゲイン値を調整しながら、最小点と最大点の間で設定値を変更することが重要です。

 

表 1: PID ゲイン調整ガイド

KP を増やす場合、同じボールの高さを維持するにはセットポイントを下げる必要があることに注意してください。 P、I、または D ゲイン値を伝達関数グラフ上で直接ドラッグして、各ゲイン値がシステムのさまざまな側面をどのように変化させるかを確認してください。上の表の仮定は、PID コントローラーの関連するゲイン値の変化に対するシステムの応答方法と一致していますか?

 

f. PID コントローラー内の内蔵オシロスコープを使用して、PID コントローラーの信号チェーン内にプローブ ポイントを配置することで、システムの特性を評価するための測定値を取得します。 IR センサーのフィードバックは入力 2 にある必要があります。PID コントローラー ブロックの前後にはデジタル スイッチもあります。これは、物理的なスイッチを使用したり、ケーブルを常に取り外したりする必要がなく、ステップ入力でシステムを刺激するのに役立ちます。

以下は、目的の 60 mm ボール高さまで段階的に増加するために適切に調整された応答です。

 

図 14: 調整された PID コントローラーのゲインとシステム応答

このステップ応答は、設定値ポテンショメータを使用した低レベル 40 mm 入力から高レベル 160 mm 入力までです。ボールが希望の設定値をほとんど超えていないにもかかわらず、グラフのオーバーシュートがまだ比較的高いことに注目するのは興味深いことです。これは、物体がセンサーから 40 ~ 50 mm 以内に近づくとセンサー出力電圧に非線形性があり、システム内で一見大きなオーバーシュートが発生する IR センサーのデータシートによって説明できます。

 

まとめ

このアプリケーション ノートでは、Moku:Go PID コントローラーを使用して閉ループ制御システムを調整し、立ち上がり時間、オーバーシュート、定常状態誤差などの一般的なシステム特性を改善する方法を説明しました。このノートでは、PID コントローラーに加えて、回路ドライバーと DC ファンに電力を供給し、制御する統合されたオシロスコープ、波形ジェネレーター、プログラマブル電源も使用しました。インタラクティブな伝達関数グラフと並行して浮遊ピンポン球を使用して PID コントローラーがどのように機能するかを視覚化することは、実践的で非常に視覚的な例を通じて制御理論のコースに深みを加えたいと考えている学生や教授に役立ちます。 Moku:Go PID コントローラーは、この実験を通じて学生が理論を現実世界の実装に結び付けるのに役立ちます。


Moku:Go の利点

 

教育者および研究助手向け

ラボのスペースと時間を効率的に利用

一貫した機器構成の容易さ

機器のセットアップではなく電子機器に焦点を当てる

研究室のティーチングアシスタントの時間を最大限に活用する

個別のラボ、個別の学習

スクリーンショットによる簡易評価と採点

学生のために

自分のペースで行う個々のラボにより、理解と定着率が向上します

ポータブルで、自宅、キャンパスの研究室、さらにはリモートでの共同作業など、研究室での作業のペース、場所、時間を選択できます。

使い慣れた Windows または macOS ラップトップ環境でありながら、プロ仕様の機器を備えています


Moku:Go デモモード

macOS および Windows 用の Moku:Go アプリは、Liquid Instruments の Web サイトからダウンロードできます。デモ モードはハードウェアを必要とせずに動作し、Moku:Go の使用方法の概要をわかりやすく示します。


謝辞

制御システムのさらなる教育に使用されるこのプロジェクトの設計に時間を割いて協力してくれた Vivek Telang 博士に感謝します。このアプリケーション ノートに関する質問についてテラン博士に連絡したい場合は、次のアドレスまでご連絡ください。 vivek.telang@utexas.edu.