PIDに対するファジーロジック。 ハリネズミとヘビを越えます。 航空機エンジンとNPP制御アルゴリズム

おそらく、自動制御の理論を繰り返し研究した誰もが、モデル内のこれらの2、3、さらには10平方の伝達関数が原子炉や航空機エンジンなどの複雑なユニットのダイナミクスをどのように表すかについて疑問を抱いていました。 ここに不正行為はありますか? 単純なモデルでの作業は、「現実の」生活の中で複雑なモデルでの作業を停止する可能性があります。







この記事では、「実際の」航空機エンジンモデルを実験します。 原子力発電所の機器と制御アルゴリズムの「実際の」モデルでそれを取り囲んだ。







当初、このモデルはFortranで作成されており、エンジン管理システムに関連する高度な科学的目的を対象としています。 このモデルは例として私たちに与えられました。私たちの仕事は、モデルを構造的な形で繰り返し、元のモデルと一致することを証明することでした。 それが行われました。







モデルがFortranのリストからブロック図に変わるとすぐに、最も「高度な」実験を実行して、それを操作するのが簡単で便利になりました。 私が本当のNPP制御アルゴリズムであることが判明したのは偶然ではありません。 これにより、数式を使用することなく、実験用のモデルをすばやく組み立てることができました。はい、写真のみです。









エンジンモデル



モデルは、特定のエンジンのさまざまなコンポーネントをシミュレートするように構成された典型的なブロックのセットです。 前の記事では、シャフトを使用して正味出力が除去されるガスタービンエンジンについて説明しました。 ターボジェットエンジンでは、正味出力はジェット推力ですが、速度を制御します。



モデルの一般的なスキームを図1に示します。



















図1.ターボジェットエンジンの構造モデルの図。



モデル図は3次元のパーツが散らばっているように見えますが、実際には相互接続された構造要素のセットです。







実験として、 前の記事同様に 、燃料供給を制御して目的の速度を得るようにします。







これを行うには、燃焼室が必要です。その特性では、燃料消費量がわかります-変​​更します。 また、パラメータには、チャンバーの入口圧力があり、このブロックで計算されます。 (図2および3を参照)

















図2.燃焼室の特性。













図3.燃焼室のパラメーター。



調整可能な速度として、低圧シャフトの回転を使用します。 燃焼室の後のガスの影響を受ける高圧シャフトの回転よりも、その回転が燃料供給圧力により複雑に依存しているように思えます。







燃料供給モデル



元のモデルでは、燃料供給は、時間の表関数の形式で、モデリングの境界条件としてkg / sで指定されます。 「実際の」モデルに近いモデルを作成するため、前の記事の提案を使用して、パイプと電気弁からの燃料供給の油圧モデルを作成します。







モデルとして、直径10 mmのパイプをセットし、その上に電気バルブを取り付けます。 パイプの片側の圧力は、燃料ポンプがそこで動作すると仮定して一定に設定されます。 反対側の圧力は、エンジンモデルから取得されます。 パイプの最後に、2回の絞り込みを追加して、ノズルをシミュレートします。 (図4)

















図4.エンジンへの燃料供給のモデル。



モデルには、バルブの位置に対するバルブの油圧抵抗の変化の依存性が組み込まれています。







このモデルにより、燃焼室の圧力が燃料消費に与える影響を考慮してフィードバックが得られ、燃料消費量を増やすと燃焼室の圧力が上がり、それに応じて燃料ポンプと燃焼室の差が小さくなり、燃料消費量が少なくなります。 。







パイプのコストは、摩擦、粘度、密度、その他の物理的影響を考慮して、非定常の流体の方程式を解くことによって決定されます。その説明には、2〜3ページの式が必要です。







経営モデル



実際の制御システムをシミュレートするために、NPP制御プロジェクトからタービンに蒸気を供給するためのレギュレーターのモデルを使用します。 バルブの位置を示すPIDだけでなく、次のような正直なモデルもあります。







  1. 非感度ゾーン、遅延、開閉速度を考慮した駆動モーターの動作のモデリング。
  2. FIR(パルス変換リレー)は、コマンド "open"および "close"の制御アクションの変換を提供する非線形ブロックです。
  3. PIDコントローラー。
  4. 速度センサーの慣性。


リストされたすべてのブロックとモデルを説明するには、さらに150ページのテキストが必要なので、最小限の説明で写真を提供してください。







バルブモデル



これは、エンジンとローカル制御システムのモデルです。







エンジンは、指定された速度の影響、停電などを考慮して、「開く」および「閉じる」コマンドを処理するトリッキーなインテグレーターです。 (図5を参照)このブロックの出口では、プロセスシミュレーションの各時点でバルブ位置が計算されます。

















図5.電動機モデル



バルブの電気モーターを制御するために、バルブ制御ユニット(BUK)が使用されます。これは、入力コマンドと考えられる障害の論理処理を提供し、表示および制御システムに必要なすべての信号も生成します。 (図6を参照)

















図6.バルブ制御ユニット(BUK)のモデル



図5-6の図は、原子力発電所をモデル化するための典型的なライブラリスキームです。 これらのブロックはユーザーによって変更されることはありませんが、準備ができており、制御アルゴリズムの作成に使用されます。 制御アルゴリズムは、シートの形式で作成されます。 この場合、バルブ制御アルゴリズムシートを図7に示します。







コマンド「open」または「close」(More、Less)の直接形成は、パルスのリレー変換(FIR)のブロックで実行されます。 このユニットは、「鉄の論理」(トランジスタ、リレー、アンプ)とプログラムの両方の形式で実行できます。

EPIブロックの入力で、不一致が計算され、PIDブロックによってパーセント偏差の形式で計算されます。 このデータに基づいて、ユニット自体がバルブ制御ユニット用の「開」または「閉」(多かれ少なかれ)パルスを生成します。 EPIのブロック図を図8に示します。





速度制御アルゴリズムを図9に示します。







圧力調整器を計算するための初期データとして、設定速度とセンサー読み取り値が使用されます。







PIDアルゴリズム自体を図10に示します。







速度センサーは、実際のセンサーの遅延、慣性、誤差を考慮します。 センサーモデル図を図11に示します。

















図7.バルブ制御アルゴリズム













図8. FIRブロック図













図9.制御レギュレーターのアルゴリズム













図10. PIDコントローラー













図11.センサーモデル



ご覧のとおり、モデルは非常に詳細(1000ブロック以上)であり、線形ではありません。







この実験では、複雑なシステムの最適化と管理の可能性を調査しているため、非線形性と複雑性の観点から数学モデルの詳細が重要です。 したがって、NPPレギュレーターからの実際の制御プログラムと「実際の」エンジンモデルのこのような「ワイルドな」組み合わせは、複雑なモデルでレギュレーターをテストするタスクを形成します。













モデルの調整と数値実験



検討しているモデルでは、エンジンのみを説明しています。 そして、燃料消費量、ガイドベーンの回転角度、流量などのすべての制御アクションは、時間とともに変化する関数の形で設定されます。 「より正直な」燃料供給モデルを作成し、それをエンジンモデルに接続しようとしています。 数値実験の設計は次のとおりです。











  1. エンジンモデルを公称速度にします。
  2. 燃料供給を作成された制御システムに切り替えます。
  3. 速度制御を行います。


図12は、数値実験を行うための制御回路を示しています。



















図12.数値実験制御モデル



モデルは最適化モードまたは制御モードで動作できます。







最適化モードがオンの場合、最適化ユニットは機能し、オフモードの場合、計算に関与しません。







単一のパッケージに接続されたすべてのモデルは、信号データベースを介した同期的なデータ交換と見なされます。 課金管理プロジェクトでは、データはあるモデルから別のモデルに転送されます。 特に、エンジンの燃焼室からの圧力は、燃料システムの出口の圧力に伝達され、低圧シャフトの計算された回転は、制御システムでの計算のためにセンサーモデルに伝達されます。







速度測定の不正確さをシミュレートするために、シャフト速度の計算値にホワイトノイズが追加されます。







設定速度は最適化ユニットに送信されます。 過渡の品質を監視するには、流量とバルブ位置が使用されます。







制御システムは、3つの状態を持つ状態マシンの形式で作成されます(図13を参照)。







  1. エンジンの加速。 この状態では、エンジンモデルは燃料システムとは独立して機能し、燃料消費は区分的線形関数として設定されます。 レギュレーターのスイッチがオフになり、計算された低圧シャフトの回転が設定された回転に送信され、上位レベルの信号に応じて、最適化状態または制御状態のいずれかで遷移が発生します。
  2. 最適化。 この状態では、燃料消費は油圧モデルから取得され、エンジンモデルに転送されます。 PIDコントローラーはオンで、バルブの位置を調整します。 コントローラーのPID係数は、最適化ブロックから取得され、最適化モードでコントローラーに適用されます。 テストアクションとして、エンジン速度の変更が設定されます。
  3. 管理。 PIDコントローラーに係数を送信することを除いて、最適化とまったく同じです。












図13.エンジン管理システムのステートマシン













図14.「エンジンの加速」と「最適化」の状態



コントローラーの調整は、最適化方法によって実行されます。 最適化ブロック図を図15に示します。制御にシステムで使用される制御ユニットに応じて、最適化ブロックはPIDブロックまたはファジー制御ブロックの値を選択します。







設定時には、ホワイトノイズは考慮されません(ブロックでは0に設定されます)。

















図15.レギュレーター最適化ブロック



シミュレーション結果



PIDコントローラー係数を選択するには、次のプロセスを使用します。



10秒以内に、事前に計算された燃料消費曲線を使用して加速が実行されます。 加速終了時の低圧シャフトの回転速度は3564 rpmです。



計算の10秒で、ステートマシンが切り替わります。 この瞬間から、燃料消費は油圧モデルから取得され、レギュレーターの設定周波数は3600 rpmです。







計算の20秒で、設定周波数が変わります-3900 rpm。







したがって、レギュレータは、計算の10秒で36 rpmのステップと、計算の30秒で300 rpmのステップを実行する必要があります。







チューニングされたPIDコントローラーは、回転のジャンプに加えて10秒で、油圧モデルへの切り替え時に燃料消費量のジャンプが発生するという事実を考慮して、このタスクにうまく対処します(図16を参照)

















図16. PIDコントローラーの売上高と制御プロセス



ファジーロジックと実験の純度に基づいてコントローラーを作成するには、同じ構成済みのPIDコントローラー(図10を参照)を使用し、ファジーロジックに基づいたコントローラーモデルを追加し、コントローラー出力を置き換えます-PIDの代わりに、ファジーロジックで取得した信号を送信します。







したがって、正規化、不感帯、EPIの作業に関連する他のすべてのパラメーターは、PIDの場合と同じままです。







PIDの出力と同じコントローラーの出力は、不一致の割合です。

そして、PIDコントローラーを残して、規制当局から与えられる影響を比較できるようにしました。 (図17を参照)

















図17. PIDからファジーロジックへの変換



レギュレーター自体は、 最初の記事と同じように見えます 。 (図18を参照)。 不一致が入力され、数値的手法が不一致の1次および2次導関数を決定し、3つのルールの単純なベースを使用します。



















図18.ファジーコントローラーの図。



カスタマイズには、 最初の記事で使用したものと同じ変数を使用します -これらは、1次および2次導関数偏差の偏差範囲です。







最適化の後、同じ移行プロセスを開始します。

















図19.ファジーロジックの売り上げ高とコントロール

ファジーロジックコントローラーは問題なく動作しました。 ゲートバルブの位置に応じて、バルブが停止し、一時停止してから再び移動したときに「自分で形成された」ステップが形成されることに注意してください。

スケジュール19から判断すると、ファジーロジックは航空機のエンジン速度の増加をはるかにうまく処理しました。







次に、300 rpmの正のステップに調整された問題の条件を変更し、-1500 rpmの負のステップをテストします。 (もっと多く取ると、バルブが閉じる場合がありますが、実際のエンジンでは燃料供給を短時間停止することができますが、燃料消費ゼロでモデルがどのように動作するかはわかりません。)



20秒の計算で、周波数を2100 rpmに設定しました。 そして、規制当局がどのように機能するかを見てみましょう。 リングの最初はファジーロジックです。

















図20.速度を下げる練習。 ファジーロジック



2番目の実験は、PIDコントローラーを使用したものです。 そして、私たちは何を見ますか? これは完全な障害です。速度を上げるように調整されたPIDコントローラーは、周波数の低下に対処できませんでした。 (21を参照)今、私たちの原子力発電所にとって何かが警戒心を抱いていた。







低回転でのエンジンモデルは、高回転で制御するように調整されたPIDコントローラーの助けを借りて、完全に制御不能であることが判明しました。







ところで、燃料供給の短期停止(バルブが完全に閉じる)がターボジェットエンジンモデルの崩壊につながらないことがわかります。

















図21.速度を下げる練習。 PIDコントローラー。



これにより、二次導関数が使用されるSDAレギュレーターによるチェックが要求されます。 このようなモデルは前の記事 (図22を参照)で既に作成されているため、ファジーロジックを交通ルールに変換するのに2秒かかります。 (図23を参照)。

















図22.規制当局の交通ルールの構造図。













図23. PIDを制御アルゴリズムのトラフィックルールに置き換える



最適化方法によってコントローラーを調整し、速度の低下を繰り返します。

















図24トラフィックルールコントローラーの速度低下のテスト



SDAはオーバーシュートで動作しましたが、PIDより明らかに優れており、ファジーロジックとほぼ同等です。 しかし、オーバーシュートがあります!







タスクを複雑にしましょう-センサーにノイズを追加します



次に、信号測定センサーにホワイトノイズを追加して、実際のセンサーでレギュレーターがどのように動作するかを見てみましょう。 デッドゾーンは最大速度の1%です-40 rpmです。 ホワイトノイズを50 rpmに設定します。







PIDは低速では機能しないため、増加してテストします。







交通管制官は、明らかに必要な速度を維持しますが、このようなノイズに対処しませんが、所定の速度が停止すると、聖ヴィートの踊りのように制御弁が揺れます。 図25では、プロセスのセクション25〜26秒が特別に拡大されています。

















図25センサーのノイズによるRPMの増加。 交通規制













図26センサーのノイズによるRPMの増加。 PIDコントローラー



RPMセンサーのノイズにもかかわらず、PIDコントローラーの過渡現象は変化していません。 管理には明確で長い手順が伴います。







原子力発電所の背後にある警報は後退しました。

















図27.センサーにノイズがあるファジーコントローラー。



ノイズを含むファジーロジックを備えたコントローラーも制御しますが、定常状態への適用の瞬間に、規制機関の位置の変動が発生します。







結論



PIDおよびSDAに対するファジーロジックの3番目の一連のテストは、ファジーロジックの勝利で終わりました。 前の記事の単純なモデルとは異なります







低速でPIDコントローラーを制御することは不可能であることが判明しました。







PIDの実験的に確認された利点は、ノイズの多いセンサーによる振動がないことです。







ところで、エンジンのダイナミクス(加速度グラフ)は、単純化されたモデルのダイナミクスと非常に似ていることが判明しました。








All Articles