主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

ディーゼルエンジンのMIMO制御

この例では,systuneを使用してディーゼルエンジンのMIMOコントローラーを设计および调整します。このコントローラーは,単一の操作条件の离散时间で调整されます。

ディーゼルエンジンモデル

最新ディーゼルエンジンでは可変容量ターボ(VGT)と排気ガス再循环(EGR)を使用して排気を削减します。厳格な排気目标を达成するには,VGT给気圧とEGRマスフローの厳格な制御が必要です。この例では,射出シリンダーあたり12毫克の燃料质量を使用してエンジンが2100转で动作する场合に,これらの2つの変数を制御するMIMOコントローラーを设计および调整する方法を说明します。

Open_System('rct_diesel'

VGT / EGR制御システムは金宝app的Simulinkでモデル化されます。コントローラーは,EGRバルブおよびVGTバルブの位置EGRLIFTVGTPOSを調整します。コントローラーは給気圧とEGRマスフローの目標値および測定値に加え,燃料質量とエンジン速度の測定値にもアクセスします。両方のバルブにレートと飽和の制限があります。プラントモデルは0.1秒ごとにサンプリングされ,制御信号EGRLIFTおよびVGTPOSは0.2秒おきに更新されます。この例では,给気圧10千帕およびEGRマスフロー3克/秒のステップ変化と,燃料质量5毫克および速度-200转の外乱を検讨します。

検讨対象の操作条件で,システム同定を使用して実験データからエンジンの线形モデルを导き出しました。操作変数EGRLIFTおよびVGTPOSから制御変数提高およびEGR MFへの周波数応答が次のように表示されます。プラントは低周波数で悪条件となるため,給気圧とEGRマスフローを個々に制御するのが難しくなる点に注意してください。

σ(植物(:1:2)),网格标题(“线性化发动机动力学的频率响应”

制御目的

次の2つの主要な制御目的があります。

  1. 給気圧およびEGRマスフローのステップ変化に対して最小の相互干渉で約5秒間で応答する

  2. 速度および燃料質量における(小さな)変化に影響されない

1つ目の目的には追従要件を使用します。相互干渉がこれらの変化に対して “相対的”に小さくなるようにステップ変化の振幅を指定します。

%5-第二响应时间,稳态误差小于5%TR = TuningGoal。跟踪({提高裁判的'EGRMF REF'}, {'促进'“EGRMF”}, 5, 0.05);TR.Name =“设定值跟踪”;TR.InputScaling = [10 3];

2番目の目的では,速度と燃料質量の変化をステップ外乱として扱い,給気圧とEGRマスフローで結果として生じる変化のピーク振幅と整定時間を指定します。また,各外乱の相対的な寄与を適切に反映する信号振幅を指定します。

%峰<0.5,沉淀时间<5DR = TuningGoal.StepRejection({“FUELMASS”“速度”}, {'促进'“EGRMF”}, 0.5, 5);DR.Name =“抗干扰”;DR.InputScaling = [5 200];DR.OutputScaling = [10 3];

モデル化していないダイナミクスとエイリアシングに十分なロバスト性を提供するには,制御帯域幅を制限し,プラントの入力と出力の両方に十分な安定余裕を适用します。扱っているのが2行2列のMIMOフィードバックループであるため,この要件は各フィードバックチャネルでのゲイン変动または位相変动の安定性を保证します。ゲインまたは位相は一度に両方のチャネルで変化する可能性があり,その変化量はチャネルごとに异なります。详细については,制御システムの调整における安定余裕およびTuningGoal。利润率を参照してください。

%滚出- 20db /dec超过1 rad/sRO = TuningGoal.MaxLoopGain({'EGRLIFT'“VGTPOS”} 1 1);罗依。LoopScaling ='离开';RO.Name =“转出”%7增益裕量的dB和45度的相位裕量的M1 = TuningGoal.Margins({'EGRLIFT'“VGTPOS”} 7 45);M1。Name =“植物输入”;M2 = TuningGoal.Margins(“柴油机”,7,45);M2.Name =“工厂产出”

ブラックボックスMIMOコントローラーの調整

最适な制御构造の事前知识がない场合は,最初にさまざまな次数の “ブラックボックス” 状态空间コントローラーを试します。プラントモデルには4つの状态があるため,4以下の次数のコントローラーを试します。ここでは,金宝appSimulink的モデルの “SS2” ブロックに2つの状态があるため2次コントローラーを调整します。

図1:2次のブラックボックスコントローラー

slTunerインターフェイスを使用してS金宝appimulink的モデルを调整用に构成します。ブロック “SS2” を调整可能としてマークし,余裕とループ整形を评価する位置を登录して,线形化と调整をコントローラーのサンプリングレートで実行することを指定します。

ST0 = slTuner('rct_diesel''SS2');ST0。t = 0.2;addPoint (ST0, {'EGRLIFT'“VGTPOS”“柴油机”})

ここで,systuneを使用して制御目的に従って状態空間コントローラーを調整します。安定余裕とロールオフターゲットを厳密な制約として扱い,可能な限り残りの目的(柔軟な目標)を満たすように試みます。開始点をランダム化して望ましくない局所的最小値になるリスクを削減します。

选择= systuneOptions(“RandomStart”2);rng(0), ST1 = systune(ST0,[TR DR],[M1 M2 RO],Opt);
决赛:软= 1.05,硬= 0.91476,迭代次数= 326决赛:软= 1.05,硬= 0.99904,迭代次数= 489决赛:软= 1.05,硬= 0.96413,迭代= 452

すべての要件はほぼ満たされます(正规化された値が1未満の场合に要件は満たされます)。これをグラフで确认します。

图('位置',[10,10,1071,714]) viewGoal([TR DR RO M1 M2],ST1)

設定点の追従と外乱の抑制の応答をプロットします。信号振幅でスケーリングして正規化の効果を示します(給気圧は+ 10 KPa, EGRマスフローは+ 3 g / s,燃料質量は+ 5毫克および速度は-200 rpmずつ変化します)。

图('位置',[100,100,560,500]) T1 = getIOTransfer(ST1,{提高裁判的'EGRMF REF'}, {'促进'“EGRMF”'EGRLIFT'“VGTPOS”});T1 = DIAG([1/10 1/3 1 1])* T1 * DIAG([10 3]);副区(211),步骤(T 1(1:2,:),15),标题(“设定值跟踪”) subplot(212), step(T1(3:4,:),15), title(控制努力的

D1 = getIOTransfer(ST1,{“FUELMASS”“速度”}, {'促进'“EGRMF”'EGRLIFT'“VGTPOS”});D1 = DIAG([1/10 1/3 1 1])* D1 * DIAG([5 -200]);副区(211),步骤(D1(1:2,:),15),标题(“抗干扰”子地块(212),step(D1(3:4,:),15), title(控制努力的

コントローラーは,変数提高と変数EGRMF間の最小の相互干渉により5秒未満で応答します。

简略化された制御构造の调整

状態空間コントローラーはそのまま実装されますが,多くの場合,より簡略化された一般的な構造に要約することをお勧めします。これを行うには,調整後のコントローラーを取得し,その周波数応答を検証します。

C = getBlockValue(相约,'SS2');clf波德(C (:, 1:2), C(:, 3:4),{。02 20}),网格图例(“裁判U '“Y U '

bodemag (C(: 5:6)),网格标题(“从FUELMASS/SPEED到EGRLIFT/VGTPOS的Bode响应”

最初のプロットは,コントローラーが実質的にREF-Y(制御変数のターゲット値と実際の値の差)で動作するπコントローラーと同様に動作することを示しています。2番目のプロットは,測定された外乱から操作変数への伝達をラグネットワークと直列のゲインで置き換えることができることを示しています。最終的に,これは1次外乱フィードフォワードを使用するMIMOπコントローラーで構成される次の簡略化された制御構造を示します。

図2:簡略化された制御構造

变体子系统を使うと,同じ仿真软件モデルに両方の制御構金宝app造を実装し,変数を使用してそれらを切り換えることができます。ここでは,MODE = 2を設定することで,米姆π構造体を選択します。前と同様に,systuneを使用して,簡略化された制御構造で3つの2行2列のゲイン行列kp.ki.凯萨を使用します。

%在“CONTROLLER”块中选择“MIMO PI”变量模式= 2;%配置调优接口ST0 = slTuner('rct_diesel',{“KP的“吻”'KFF'});ST0。t = 0.2;addPoint (ST0, {'EGRLIFT'“VGTPOS”“柴油机”})%调整MIMO PI控制器。ST2 = systune(ST0,[TR DR],[M1 M2 RO]);
Final: Soft = 1.09, Hard = 0.99986, Iterations = 315

この场合もすべての要件がほぼ満たされます。闭ループ応答をプロットし,状态空间设计と比较します。

clf T2 = getIOTransfer(ST2,{)提高裁判的'EGRMF REF'}, {'促进'“EGRMF”'EGRLIFT'“VGTPOS”});T2 = DIAG([1/10 1/3 1 1])* T2 * DIAG([10 3]);副区(211),步骤(T 1(1:2,:),T2(1:2,:),15),标题(“设定值跟踪”)传说('SS2'“π+ FF”)次要情节(212),步骤(T1 (3:4,:), T2(3:4,:), 15)、标题(控制努力的

D2 = getIOTransfer(ST2,{“FUELMASS”“速度”}, {'促进'“EGRMF”'EGRLIFT'“VGTPOS”});D2 = diag([1/10 1/3 1 1]) * D2 * diag([5 -200]);次要情节(211),步骤(D1 (1:2,:), D2(1:2,:), 15)、标题(“抗干扰”)传说('SS2'“π+ FF”)副区(212),步骤(D1(3:4,:),D2(3:4,:),15),标题(控制努力的

ブラックボックス制御构造と简略化された制御构造で同様のパフォーマンスが実现されます.PIゲインとフィードフォワードゲインの调整后の値を検证します。

showTunable(ST2)
Block 1: rct_diesel/CONTROLLER/MIMO PID/Kp = D = u1 u2 y1 -0.007988 -0.0007889 y2 -0.02043 0.01444名称:Kp静态增益。----------------------------------- 块2:rct_diesel /控制器/ MIMO PID / Ki u1 u2 y1 -0.01055 - -0.01415 y2 = D = -0.03006 - 0.04647名称:Ki静态增益。----------------------------------- 块3:rct_diesel /控制器/ MIMO PID / Kff u1 u2 y1 0.01387 - -9.812 e-05 y2 = D = 0.03275 - -0.001452名称:凯静态增益。

非線形の検証

金宝app仿真软件モデルでMIMOπコントローラーを検証するには,調整されたコントローラーパラメーターを仿真软件にプッシュし,シミュレーションを実行します。

writeBlockValue (ST2)

シミュレーション結果は次のように表示されます。コントローラーが給気圧とEGRマスフローにおける設定点の変化を適切に追従し,燃料質量(t = 90)と速度(t = 110)の変化を迅速に抑制していることが確認できます。

図3:简略化されたコントローラーでのシミュレーション结果

参考

||||(金宝app仿真软件控制设计)|(金宝app仿真软件控制设计)

关键词トピック