このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。
スタンドアロンアプリケーションで物理プラントに対してリアルタイムの調整にPID自動調整アルゴリズムを使用するには,システムにPID自動調整器ブロックを展開しなければなりません。そのためには展開用の仿金宝app真软件®モデルを作成します。このモデルは実験パラメーターと調整パラメーターを使って構成できます。または,これらのパラメーターをシステムの他の部分から外部的に提供するように構成することも可能です独自のシステムに展開されると,自動調整器モデルは,調整プロセスの制御に仿真金宝app软件を使用せずに,プラントに信号を挿入してプラント応答を受け取ります。PID自動調整アルゴリズムを展開するには金宝app仿真软件编码器™などのコード生成製品が必要です。
あるいは,金宝app仿真软件を使用して実験を制御しながら,リアルタイムで物理プラントに対して調整することもできます。詳細については,金宝app仿真软件でのリアルタイムのPID自動調整の制御を参照してください。
リアルタイム調整のためにPID自動調整アルゴリズムを展開するワークフローの概要は次のとおりです。
システムにPID自動調整器ブロックを展開するための金宝app仿真软件モデルを作成します。
調整実験の開始と終了のタイミングを制御する启动/停止の信号を構成します。展開後にこの信号を使ってPID自動調整プロセスをいつでも開始できます。
コントローラーのタイプや調整のターゲット帯域幅などのコントローラーパラメーターを指定します。
周波数応答実験中に挿入される摂動の振幅などの実験パラメーターを構成します。
システムにモデルを展開し,物理プラントに対して自動調整プロセスを開始します。閉ループ性能をリアルタイムで検証することができます。
実際には,リアルタイム調整を行う場合,ターゲット帯域幅や摂動の振幅などのいくつかのパラメーターを実行時に指定することもできます。展開したアプリケーションのパラメーター指定の詳細については,展開後の自動調整パラメーターへのアクセスを参照してください。
リアルタイム調整でPID自動調整器ブロックを使用するには,展開用の仿真软金宝app件モデルを作成する必要があります。これを行うにはいくつかの方法があります。
最も基本的な形式では,闭环PID自动调谐ブロックまたは开环PID自动调谐ブロックを使用してリアルタイムPID自動調整を展開するためのモデルは次の図のようになります。この方法の利点は,実行時に異なるPIDコントローラーの切り替えと調整を行えることです。
ここではPID自動調整器ブロックの入力と出力に接続されているブロックが,システムのリアルタイムデータの読み書きを行うハードウェアインターフェイスを表します。たとえば,读PID控制器输出
ブロックは,シリアルデータを受け取るインターフェイス,UDPパケットを受け取るUDP接收ブロック,またはワイヤレスネットワークを介してその他の信号を受け取るインターフェイスにすることができます。同様に,写植物输入
などのデータを書き込むブロックは,ハードウェアにデータを書き込むためのシリアル,UDP,またはその他のインターフェイスにすることができます。
自動調整器ブロックの既定の端子は以下のとおりです。
u
——制御信号を受け取ります。
y
——プラント出力を受け取ります。
启动/停止
——調整プロセスの開始と終了を行う信号を受け取ります。
u +Δ
——プラント入力に渡す信号を出力します。実験が実行中でない場合,u +Δ
は制御信号をu
での入力どおりに出力します。実験の実行中は,ブロックがu +Δ
にテスト信号を挿入します。開ループ調整の場合のみ,実験の実行中にブロックはu
とu +Δ
の間でループを中断します。実験が終了すると,ブロックはu
とu +Δ
間の接続を元に戻します。
% conv
——周波数応答の推定実験の進捗状況を示す数値のインジケーターを出力します。
pid增益
——調整プロセスが停止した時点で調整されたPIDゲインを出力します。
この構成では,PIDコントローラー自体はシステムの別のモジュール内に存在します。調整が完了したら,独自のロジックを使用して調整したPIDゲインを自動調整ブロックのpid增益
端子からPIDコントローラーに書き込みます。
あるいは,次の図に示されているように,PIDコントローラーとPID自動調整アルゴリズムの両方を含むモジュールを展開することもできます。この方法の利点は,個別のシステムで特定のコントローラーを返せることです。
この図ではPIDコントローラーが仿真软金宝app件PID控制器ブロックとして実装されています。このブロックのPIDゲインは調整可能なので,調整されたゲインを展開されたコントローラーに書き込むようにシステムを構成することができます。あるいは,展開するモデル内で独自のカスタムPIDコントローラーサブシステムを使用することもできます。
アプリケーションに適した任意のロジックを実装して,PIDコントローラーを調整されたゲインで更新するかどうかとその方法を判定することができます。ここに示すシステムでは,PID更新逻辑
サブシステムがそのようなモジュールを表します。外部数据
ブロックは,ロジックでコントローラーを更新するかの判定に必要とされるその他の情報を表します。
メモ
闭环PID自动调谐ブロックを使用する場合,pid增益
の出力を直接PIDコントローラーのゲイン入力に送ると,コード生成を妨げる代数ループが発生することがあります。この問題を回避するため,PIDの更新ロジックに代数ループを中断する状態を設けることが可能です。たとえば,次のいずれかの方法を試すことができます。
单位延迟
ブロックを使用して,コントローラーの出力をコントローラーの入力より1タイムステップ進んだ状態に保つ。
闭环PID自动调谐ブロックを使用したPIDコントローラーのリアルタイム調整に示されるように数据存储内存ブロックを使用する。
开环PID自动调谐を使用するときは,コントローラーに積分器アクションが含まれる場合,調整実験中の積分器のワインドアップを防ぐために信号のトラッキングを実装することを検討してください。信号のトラッキングにより,PIDコントローラーが,ループの外にある間も実際のプラント入力をトラッキングし続けることができます。そうでないと,調整プロセスの終わりに制御ループを閉じる時点でシステムにバンプが生じる可能性があります。
PIDコントローラーが仿真金宝app软件PID控制器ブロックである場合,コントローラーブロックの[トラッキングモードを有効にする]パラメーターを使用してこのバンプを回避できます。次のブロック線図は,トラッキングモードが構成されている开环PID自动调谐ブロックおよびPID控制器ブロックを含むモジュールを示しています。プラント入力はコントローラーブロックのトラッキング入力に接続しています。
自動調整プロセスを開始したり停止するには,启动/停止
端子で信号を使用します。実験が実行中でない場合,ブロックは信号に変更を加えずにu
からu +Δ
へと渡します。この状態ではブロックはプラントやコントローラーの動作に影響しません。
周波数応答の推定実験は,启动/停止
端子の立ち上がり信号で開始され,立ち下がり信号によって終了されます。したがって,展開後,自動調整プロセスを開始するため,启动/停止
端子で立ち上がり信号を使用します。適切な時間が経過した後,もしくは% conv
100年信号がの近くで整定したら,立ち下がり信号を使って実験を終了します。実験が終了すると,アルゴリズムによって調整後のPIDゲインが生成され,pid增益
端子にこれらが返されます。実験時間の保守的な推定値は閉ループ調整の場合が200 /ωc,開ループ調整の場合が100 /ωcです。ここでωcはターゲット帯域幅です。启动/停止信号の構成方法の詳細については、闭环PID自动调谐ブロックまたは开环PID自动调谐ブロックのリファレンスページを参照してください。
システム内のPIDコントローラーの構成を指定するには,自動調整器ブロックの次のパラメーターを使用します。
タイプ
形式
時間領域
コントローラーのサンプル時間(秒)
積分手法
フィルター手法
その後,調整用のターゲット帯域幅と位相余裕を,それぞれ[ターゲットの帯域幅(ラジアン/秒))パラメーターと[ターゲットの位相余裕(度)パラメーターに指定します。
ラジアン/秒で指定されるターゲットの帯域幅は,調整した開ループ応答CPの0分贝のゲイン交差周波数のターゲット値です。ここでPはプラントの応答,Cはコントローラーの応答です。この交差周波数は制御帯域幅を大まかに設定します。立ち上がり時間τ秒に対し,ターゲット帯域幅の推定は2 /τラジアン/秒が適切です。
ターゲットの位相余裕は,調整したシステムのロバスト性を設定します。通常は約45°~ 60°の範囲内の値を選択します。一般に,位相余裕が高いほどオーバーシュートは改善されますが,応答速度が制限される場合があります。既定値の60°は,性能とロバスト性のバランスを取り,プラントの特性によってオーバーシュートは5 ~ 10%になる傾向があります。
ほとんどの調整パラメーターは,展開前にPID自動調整器ブロックで固定する代わりに,展開後に独自のアプリケーション内で設定することができます。展開後の自動調整パラメーターへのアクセスを参照してください。
これらのパラメーターに使用する値の詳細については,闭环PID自动调谐ブロックまたは开环PID自动调谐ブロックのリファレンスページを参照してください。
周波数応答の推定実験は,ターゲット帯域幅ωc近傍の周波数で正弦波信号を挿入します。
开环PID自动调谐ブロックの場合は[1/3,1、3、10]ωc
闭环PID自动调谐ブロックの場合は[1/10,1/3,1、3、10]ωc
ブロックの[正弦波振幅]パラメーターを使用してこれらの信号の振幅を指定します。
プラントが漸近的に安定な場合,开环PID自动调谐ブロックはステップ摂動でプラントの直流ゲインを推定することができます。この摂動の振幅は[ステップ振幅)パラメーターで指定します。プラントが単一の積分器をもつ場合,[ステップ信号による直流ゲインの推定)パラメーターをオフにします。
注意
不安定なプラントには閉ループや開ループPID自動調整を使用しないでください。
複数の積分器をもつプラントに開ループPID自動調整を使用しないでください。複数の積分器をもつプラントには閉ループPID自動調整を使用できます。
すべての摂動振幅は以下のとおりでなければなりません。
摂動がプラントアクチュエータのすべての不感帯を克服してノイズレベルを超える応答を生成できる程度に大きい。
定格操作点近傍のほぼ線形の領域内でプラントを実行し続け,プラントの入力または出力の飽和を回避できる程度に小さい。
実験パラメーターの設定の詳細については,闭环PID自动调谐ブロックおよび开环PID自动调谐ブロックのリファレンスページを参照してください。
自動調整器モジュールをシステムに展開したら,立ち上がり启动/停止
信号を使用して自動調整プロセスを開始します。展開したモジュールが物理プラントにリアルタイムでテスト信号を挿入します。適切な時間が経過した後,もしくは% conv
信号が100%の近くで安定したら,立ち下がり启动/停止
信号を使って実験を終了します。実験時間の保守的な推定値は閉ループ調整の場合が200 /ωc,開ループ調整の場合が100 /ωcです。ここでωccはターゲット帯域幅です。実験が終了すると,モジュールは,システムおよびユーザー指定の調整目標での推定周波数応答に基づく新しいPIDゲインを計算します。pid增益
信号を使用して,調整されたPIDゲインを調べることができます。
これらのゲインを確認して独自のコントローラーに伝達する際は,PID自動調整器ブロックにおけるこれらのゲインの意味に注意してください。離散時間の場合,ブロックは次のPIDコントローラー伝達関数を仮定します。
(並列形式),または理想形式の場合,
です。F我(z)およびFd(z)はそれぞれ[積分手法]と[フィルター手法)の式に指定する値によって異なります。詳細については,闭环PID自动调谐ブロックまたは开环PID自动调谐ブロックのリファレンスページを参照してください。
調整されたゲインをPIDコントローラーに伝達した後は,新しいゲインでのシステムの性能を引き続き観察し検証することができます。
自動調整器を構成するために設定したパラメーターの一部は調整可能なため,これらには生成コードでアクセスできます。調整可能でないパラメーターについては,展開の前にブロックで構成しなければなりません。
PID自動調整器ブロックの以下のパラメーターは展開後に調整可能です。これらの全パラメーターの詳細については,闭环PID自动调谐ブロックまたは开环PID自动调谐ブロックのリファレンスページを参照してください。
パラメーター | 説明 |
---|---|
ターゲットの帯域幅(ラジアン/秒) | 開ループ応答のターゲット交差周波数 |
ターゲットの位相余裕(度) | 開ループ応答のターゲット最小位相余裕 |
正弦波振幅 | 正弦波摂動の振幅 |
ステップ信号による直流ゲインの推定 | プラントへのステップ信号の挿入 |
ステップ振幅 | ステップ摂動の振幅 |
タイプ | PIDコントローラーのタイプ(π,PD, PIDなど) |
形式 | PIDコントローラーの形式 |
積分手法 | 積分項の離散積分式 |
フィルター手法 | 微分フィルター項の離散積分式 |
PID自動調整器ブロックの次のパラメーターは展開後に調整することができません。これらはコード生成の前にブロックで指定しなければならず,その値はアプリケーション内で固定されたままになります。これらの全パラメーターの詳細については,闭环PID自动调谐ブロックまたは开环PID自动调谐ブロックのリファレンスページを参照してください。
パラメーター | 説明 |
---|---|
時間領域 | PIDコントローラーの時間領域 |
コントローラーのサンプル時間(秒) | PIDコントローラーのサンプル時間(展開後のサンプル時間の変更を参照) |
メモリを削減し,タスクオーバーランを回避してください(エクスターナルモードのみ) | 調整アルゴリズムのみを展開 |
データ型 | 浮動小数点精度 |
[コントローラーのサンプル時間(秒)パラメーターは調整不可です。したがって,ブロックの展開時に生成コードでこれに直接アクセスすることはできません。展開したブロックでコントローラーのサンプル時間を実行時に変更するには,次を行います。
[コントローラーのサンプル時間(秒)を1に設定します。
自動調整器ブロックを触发子系统内に配置します。
目的のサンプル時間でサブシステムをトリガーします。