Comments
Description
Transcript
PIDE 命令の使用 - Rockwell Automation
共通プロセスループ 制御アルゴリズムの実行 PIDE 命令の使用 白書 お客様へのご注意 ソリッドステート機器はエレクトロメカニカル機器とは動作特性が異なりま す。さらにソリッドステート機器はいろいろな用途に使われることからも、 この機器の取扱責任者はその使用目的が適切であるかどうかを充分確認して ください。詳しくは、パブリケーション・ナンバー SGI-1.1『ソリッド・ス テート・コントロール ソリッドステート装置のアプリケーション、設置、 および保守のための安全ガイドライン』( 当社の営業所または http://www.ab.com/literature からオンラインで入手可能 ) を参照してくださ い。 この機器の使用によって何らかの損害が生じても当社は一切責任を負いませ ん。 本書で示す図表やプログラム例は本文を容易に理解できるように用意されて いるものであり、その結果としての動作を保証するものではありません。 個々の用途については数値や条件が変わってくることが多いため、当社では 図表などで示したアプリケーションを実際の作業で使用した場合の結果につ いては責任を負いません。 本書に記載されている情報、回路、機器、装置、ソフトウェアの利用に関し て特許上の問題が生じても、当社は一切責任を負いません。 書面による当社の許可がない限り、本書に記載されている内容の全部または 一部を複製することは禁止されています。製品改良のため、仕様などを予告 なく変更することがあります。 本書を通じて、特定の状況下で起こりうる人体または装置の損傷に対する警 告および注意を示します。 警告 重要 注意 本書内の「警告」は、人体に障害を加えうる事項、および装置 の損傷または経済的な損害を生じうる、危険な環境で爆発が発 生する可能性がある操作や事項を示します。 本書内の「重要」は、製品を正しく使用および理解するために 特に重要な事項を示します。 本書内の「注意」は正しい手順を行なわない場合に、人体に障 害を加えうる事項、および装置の損傷または経済的な損害を生 じうる事項を示します。「注意」によって、危険の認識、危険 の回避、さらに二次的に発生しうる損害の把握を促します。 • トラブルが起こりうる場合およびトラブルの原因 • トラブルの回避方法 • 不適当な操作を行なった場合の結果 感電の危険 危険な電圧が存在することを知らせるためにドライブの上また は内部にこのラベルを貼っています。 やけどの危険 表面が危険な温度になっている恐れがあることを知らせるため にドライブの上または内部にこのラベルを貼っています。 共通プロセスループ制御アルゴリズムの実行 はじめに この白書には、適合ゲインなどの共通プロセスループ制御アルゴリズムを実 行するための RSLogix 5000 ファンクション・ブロック・ダイアグラム (FBD) エディタの拡張 PIDE 命令に固有の機能を使用する方法を説明しま す。 • カスケード制御 • 比率制御 • マルチループ選択 • 範囲の時間比例分割 この白書は PIDE 命令に焦点を合わせていますが、FBD エディタは他の多く のプロセス制御命令もサポートしています。他の命令には、流れの統合、ラ ンプ / ソーク温度プロファイル、モータ作動式バルブ制御、およびポンプや ソノレイドバルブなどの 2 ステータスまたは 3 ステータスのデバイス制御な どの機能があります。これらの命令は、標準的なプロセス制御アプリケー ションを実行するために必要なビルディングブロックを提供します。 速度制御 vs. 位置制御 PIDE 命令は、PID 式の速度形式アルゴリズムを使用します。基本的に、こ れはループが誤差の変化で動作して出力を変更することを意味します。PLC で使用される従来の PID アルゴリズムは位置形式アルゴリズムを使用して います。位置形式アルゴリズムは直接誤差に作用します。このアルゴリズム はシンプルなアプリケーションに適用できますが、速度形式アルゴリズム は、適応ゲインやマルチループ選択のようなより高度なアプリケーションに も極めて簡単に適用できます。そのため、ほとんどの分散型制御システム (DCS) では伝統的に速度形式アルゴリズムが使用されています。同様に、 Logix コントローラファミリーにも、速度形式アルゴリズムのより高度な特 性がいかされています。 位置形式と速度形式の両方の PID アルゴリズムは、誤差の変化に同じよう に対応して実行することを理解してください。実際に、ある形式の式を他の 形式に簡単に引き出すことができます。以下に、2 種類のアルゴリズムのた めの式を示します。 位置形式 PID アルゴリズム CV = K P E + ∑ K I EΔt + K D ΔE Δt 速度形式 PID アルゴリズム CVn = CVn −1 + K P ΔE + K I EΔt + K D En − 2 En −1 + En − 2 Δt この場合、 CV = 制御変数 E= 誤差 △ t = 更新時間 Kp = 比例ゲイン KI = 積分ゲイン KD = 微分ゲイン 1 Pub.No. LOGIX-WP008A-JA-P - May 2005 共通プロセスループ制御アルゴリズムの実行 PID アルゴリズムの形式には、以下のような 2 つの主な違いがあります。 • 比例項は、速度形式では誤差の変化 ( △ E) として、 比例形式では誤差 (E) と して機能します。 • 積分項の累積には、速度形式では前の出力 (CVn-1) が、位置形式では積分 項の合計が含まれます。以下のセクションにこれが重要な理由を説明し ます。 または PIDE 命令は、2 つの形式の速度形式アルゴリズム ( 独立および従属 ゲイン ) もサポートしています。これについては以下に説明します。 独立ゲインフォーム この形式のアルゴリズムでは、アルゴリズムの各項 ( 比例、積分、および微 分 ) は個別のゲインを持っています。1 つのゲインの変更はその項にのみ作 用し、その他の項には影響しません。 CVn = CVn −1 + K P ΔE + E − 2 E n −1 + E n − 2 KI EΔt + 60 K D n Δt 60 この場合、 CV = 制御変数 E= 誤差 ( 単位:スパンの割合 (%)) △ t = ループに使用される更新時間 ( 単位:sec) KP = 比例ゲイン KI = 積分ゲイン ( 単位:min-1) KI の値が大きいほど、積分の反応が速くなる。 KD = 微分ゲイン ( 単位:min) 従属ゲインフォーム この形式のアルゴリズムでは、比例ゲインがコントローラゲインにかわりま す。コントローラゲインに変更することによって、同時に 3 つの項 ( 比例、 積分、微分 ) のすべての動作を変更します。 ⎛ E − 2 E n −1 + E n − 2 ⎞ 1 ⎟⎟ CVn = CVn −1 + K C ⎜⎜ ΔE + EΔt + 60TD n Δt 60TI ⎝ ⎠ この場合、 CV = 制御変数 E= 誤差 ( 単位:スパンの割合 (%)) △ t = ループに使用される更新時間 ( 単位:sec) KC = コントローラゲイン TI = 積分時定数 ( 単位:min/ 繰返し回数単位 ) つまり、TI 値が大きくなるほど、積分の反応が遅くなる。 誤差のステップ変更に対応して比例項の動作を繰返すには、積分項で TI 分かかる。 TD = 微分時定数 ( 単位:min) Pub.No. LOGIX-WP008A-JA-P - May 2005 2 共通プロセスループ制御アルゴリズムの実行 PIDE 命令を使用するときにパラメータ DependIndepend が 0 にリセットされ ている場合は、パラメータ PGain, IGain, および DGain は KP, KI, および KD を表すために使用されます。DependIndepend が 1 にセットされているとき は、KC, TI, および TD を表すためにパラメータ PGain, IGain, および DGain を 使用します。 上記の PIDE 式は、PIDE 命令によって使用されるアルゴリズム表現です。 パラメータ PVEProportional および PVEDerivative を処理することによって、 比例項と微分項の PV ( 単位:スパンの割合 (%)) の変更に、誤差の変更をか わりに使用することができます。デフォルトでは、PIDE 命令は、比例項に 誤差の変更、微分項に PV の変更を使用します。これによって、セットポイ ントを変更したポイントでの大きな微分スパイクをなくすことができます。 以下の式を使用して、独立と従属ゲインの PIDE アルゴリズム形式に使用さ れるゲインを変換できます。 • K P = KC • KI = • K D = K C TD KC TI 各アルゴリズムタイプ ( 独立および従属 ) では、適切なゲインを使用して同 じ制御を行なうことができます。実際には、最も親しんだ PID アルゴリズ ムの形式で行なうことができます。他の項への影響を気にせずに独立ゲイン を処理できるために、独立ゲイン形式を好むユーザもいます。一方で、少な くともある程度まで、各ゲインを個別に変更することなく、コントローラゲ インを変更するだけで PID ループをすべて変更できるために、従属ゲイン 形式を好むユーザもいます。 3 Pub.No. LOGIX-WP008A-JA-P - May 2005 共通プロセスループ制御アルゴリズムの実行 適合ゲイン 速度形式のアルゴリズムの大きな利点の 1 つは、適合ゲインの実装です。適 合ゲインを実装するということは、単純に実行ループの比例、積分、微分値 を変更することを意味します。1 つのプロセスが実動作環境によってまった く違った動作特性を持つことがあるため、この機能は頻繁に必要になりま す。例えば、押出機のバレル温度制御では、通常、抵抗加熱器を使用してバ レルを加熱したり、バレルの周囲のラインに冷却水を流してバレルを冷却し たりします。バレルの加熱と冷却は、2 つの異なる物理的プロセスで、多く の場合、最適な制御を実現するためには異なるゲイン値が必要になります。 これを可能にするには、通常、50% のループ出力を加熱も冷却も行なわな い状態として定義します。出力が 50% を超えると加熱が強化され、出力が 50 % 未満になると冷却が強化されます。 位置形式アルゴリズムを使用すると、ループが加熱から冷却に変化したとき に新しいゲインに切換えるのは非常に困難です。位置形式アルゴリズムの比 例条件は直接誤差に作用するため、ゲインが変化したポイントの誤差によ り、出力で加熱と冷却の比例ゲインの違いに比例したバンプが発生します。 例えば、加熱の比例ゲインが 3 で、冷却の比例ゲインが 1 だとします。この とき、ループ出力が冷却から加熱に移行した ( つまり、50% を超えた ) 場 合、そのときの誤差が 5% だとすると、加熱ゲインに切換えた時点でループ の出力に 10% のバンプが生じます。これは、位置形式 PID アルゴリズムは 直接誤差に作用するためです。新しいゲインだけが原因で出力にバンプが生 じると、適切な制御を行なうのは非常に困難になります。これを正しく処理 するには、ループを手動にして、新しいゲインを設定し、再度手動でループ を実行してバンプレス転送のために逆算できるようにし、最終的にはループ を自動に戻して、新しいゲインを使用してスタートさせる必要があります。 これを適切にプログラミングするのは困難で、時間もかかります。 今度は、同じことを速度形式アルゴリズムで行ないます。5% の誤差で比例 ゲインを 1 から 3 に変更すると、新しいゲインが使用される直前は誤差が 5% で、新しいゲインが使用された直後も 5% のままなので、出力は変わり ません。誤差は変わらないので、出力の比例条件も変わりません。これが、 Logix に採用されている速度形式 PIDE アルゴリズムでは、適合ゲイン制御 方式の実装が非常に簡単になる理由です。処理でバンプが発生することを心 配せずに、オンザフライで新しいゲイン値に切換えることができます。 ടᾲ ቯ KP = 3 • 冷却から過熱に切換える ときの誤差が 5% である と仮定する。 ಄ළ ቯ KP = 1 • 位置形式アルゴリズムで は、すぐに出力に 10% のバンプが発生する。 ΔE CV = K P E + ∑ K I EΔt + K D Δt • 速度形式アルゴリズムで CVn = CVn −1 + K P ΔE + K I EΔt + K D Pub.No. LOGIX-WP008A-JA-P - May 2005 En − 2 En −1 + En − 2 Δt は、出力にバンプが発生 しない。 4 共通プロセスループ制御アルゴリズムの実行 マルチループ選択 複数のプロセス変数が同じ制御変数で制御されることがあります。多くの場 合、フィールドアクチュエータに送られる実際の制御変数は、このような場 合は複数 ( プロセス変数ごとに 1 つ ) の PID ループ出力の小さい方か大きい 方のいずれかを使用するように制限される必要があります。例えば、発熱化 学反応の温度と圧力の両方を制御するには、温度用の PID ループと、圧力 用の PID ループを用意し、この 2 つのループのより小さい方の出力を使用 してリアクタへの触媒の流れを制御することで反応速度を調節します。つま り、圧力が高すぎる場合は、触媒を減らすために圧力 PID ループが使用さ れ、これと反対に温度が高すぎる場合は、触媒を減らすために温度ループが 使用されます。いずれの場合も、触媒の流れを制御するために、必ず 2 つの ループのうち小さい方を採用します。問題になるのは、制御されていない ループを制御されているループと整合させて、ループ間でバンプレスに制御 を切り換えられるようにすることです。 ⸅ᇦ TT PT 位置形式 PID アルゴリズムでは、このタイプの制御方式を適切に実装する のは極めて困難です。ループの整合は絶えず必要になるので、制御している ループの出力を取得し、もう一方のループに手動出力信号として送り、手動 でそのループに逆計算させて、制御ループと整合させた後、非制御ループを 自動に戻します。これは、ループを実行するたびに行ないます。 速度形式 PID アルゴリズムは、このタイプの制御方式に関しては明らかに 勝っています。このループの前の出力は CVn-1 項に存在しているので、単純 に、最後の制御エレメントに実際に送られる出力を各ループの CVn-1 項に送 ればいいだけです。したがって、2 つのループは常に相互に整合されてい て、温度または圧力限定制御間でバンプレスに制御を移動できます。このロ ジックの例を以下に示します。 5 Pub.No. LOGIX-WP008A-JA-P - May 2005 共通プロセスループ制御アルゴリズムの実行 図に示すように、実際に触媒バルブに送られる値は、単純に各 PIDE 命令の CVPrevious パラメータに戻されます。さらに、PIDE 命令に PID アルゴリズ ムの CVn-1 として CVPrevious パラメータを使用するように指示するために、 CVSetPrevious パラメータを設定する必要があります。このロジックは、位 置形式 PID アルゴリズムに必要な同等のロジックに比べて、作成も保守も ずっとシンプルです。 モード制御のオプション PIDE 命令は、多くの異なる制御モードを使用することに追加の機能を提供 します。自動と手動などの従来のモードに加えて、PIDE 命令もループを変 更できる人を定義するプログラム / オペレータ制御の概念もサポートしてい ます。ループがプログラム制御のときは、ユーザプログラムがループを対応 するモード ( 例:自動 / 手動 ) にでき、ループのセットポイントまたは手動 出力を変更します。反対に、ループがオペレータ制御のときは、オペレータ がモードと値を変更できます。サポートされている制御タイプとループモー ドは以下の通りです。 モード 使用方法 Program Control ( プロラグム制御 ) プロラグム制御のときは、ループモードはユーザプログラムで決定される。ユーザ プログラムは、ループのセットポイントおよび手動出力も変更できる。 Operator Control ( オペレータ制御 ) オペレータ制御のときは、ループモードはオペレータで決定される。オペレータは、 ループのセットポイントおよび手動出力も変更できる。 Cascade/Ratio Mode ( カスケード / 比モード ) カスケード / 比モードのときは、ループは自動モードのように自動的にその出力を 制限するが、セットポイントは、SPCascade 入力パラメータに接続されるように外 部ソースからもたらされる。UseRatio パラメータが 1 にセットされているときは、 SPCascade 入力はセットポイントとして使用される前に Ratio 値とも掛けられる。 Auto Mode ( 自動モード ) 自動モードのときは、ループは自動的に PV をセットポイントで保持するためにそ の出力を制限する。 Manual Mode ( 手動モード ) 手動モードのときは、ループはその出力に、ユーザプログラム ( プログラム制御の とき ) またはオペレータ ( オペレータ制御のとき ) によって入力された CV 値に等し い値を設定する。 Override Mode ( オーバライドモード ) オーバライドモードのときは、ループはその出力に CVOverride パラメータに構成さ れた CV 値に等しい値を設定する。通常、オーバライドモードはインターロック状 態のために使用される。 Hand Mode ( ハンドモード ) ハンドモードのときは、CV 値は HandFB パラメータに等しい値が設定される。 HandFB は、ハードハンド / 自動ステーションから入力されることを意図されてい る。ループがハンドモード (ProgHandReq パラメータで設定 ) になると、ハンド / 自 動ステーションが制御システムにバイパスされ、最終的な制御エレメントを直接的 に制御していることを示す。CV に HandFB 値 ( ハンド / 自動ステーションの出力 ) と等しい値を設定すると、ループは、ハンドモードから出ると自動または手動モー ドにバンプレスで戻すことができる。 モードの変更は、PIDE 命令の適切なモード要求パラメータをセットするこ とで指令されます。これらのモードモード要求パラメータには、プログラム による要求を示す“Prog”か、またはオペレータに生成された要求を示す “Oper”のいずれかが前に付けられています。例えば、OperAutoReq は、オ ペレータから自動モードになる要求です。 プログラム / オペレータ制御状態は、PIDE 命令を必要なときに適切な制御 状態にロックするために使用できます。例えば、自動化された始動シーケン スが、始動時に確実にオペレータに干渉されないようにしたいユーザプログ ラムが PIDE 命令をプログラム制御にロックする必要がある場合に使用され ることがあります。これは、ProgProgReq パラメータ ( プログラム制御状態 になるようにプログラムによって要求 ) を 1 にセットすることで行なうこと ができます。 Pub.No. LOGIX-WP008A-JA-P - May 2005 6 共通プロセスループ制御アルゴリズムの実行 • “ProgramLock”が True(1) にときは、 ProgProgReq が True(1) の間、ループは プログラム制御にロックされる。 • ProgOperReq が True(1) の間、 ループはオペレータ制御に ロックされる。 ProgOper はループの現在 の制御状態を示す。 制御状態とモードにも優先順位があります。プログラム制御とオペレータ制 御の両方ガ要求されたときは、ループはオペレータ制御になります。モード の優先順位 ( 最低から最高 ) は、カスケード / 比、自動、手動、オーバライ ド、およびハンドの順番です。 最後に、オペレータ要求はオペレータインターフェイスと共に機能すること だけを設計されています。 “Oper…”要求が 1 にセットされているときは、 PIDE 命令は要求に対して応答できるかを評価してから、要求を必ずリセッ トします。これによって、HMI でモード要求をリセットすることをプログ ラムする必要がなくなります。 タイミングモード モード Periodic ( 周期 ) 正確に実行するために調整制御命令は知られた更新時間 ( 例えば、PIDE 式 の△ t ) を要求します。Logix では、拡張 PID, トータライザ、およびリード ラグなどの命令は、この更新時間 ( 周期、オーバーサンプリング、およびリ アルタイムサンプリング ) を得るために 3 種類のタイミングモードをサポー トしています。これらのモードを以下に説明します。 説明 デフォルトのタイミングモード。このモードを使用するには、周期的タスクで実行 するルーチン内の命令を配置するだけです。命令は更新時間として自動的に周期タ スクの更新レートを使用する。このモードは実装するのが最も簡単で、ほとんどの アプリケーションで使用できる。 Oversample このタイミングモードは、命令を実行するための完全な手動制御を提供する。この ( オーバーサンプリ モードを使用するには、OversampleDT で更新速度を構成する。OversampleDT 値 ( 単位:sec) ごとに EnableIn を 1 にセットする必要がある。 ング ) Real Time Sampling このタイミングモードはアナログ入力モジュールと共に使用して、新しいアナログ ( リアルタイムサン 入力のサンプルが受信されると命令アルゴリズムを実行する。このモードを使用す るには、アナログ入力モジュールを命令の RTSTimeStamp パラメータに プリング ) RollingTimeStamp パラメータ配線して、アナログ入力モジュールから命令の RTSTime パラメータに RealTimeSample パラメータを書込む。このモードは、小さ な誤差が時間と共に蓄積されるトータライザなどの命令を最も正確に実行したいと きに有用です。 7 Pub.No. LOGIX-WP008A-JA-P - May 2005 共通プロセスループ制御アルゴリズムの実行 周期モードの使用例を以下の図に示します。周期モードは、大部分のループ に使用できます。ただし、必ず周期的タスクの更新レートより高速で PV が サンプリングされるようにします。 オーバーサンプリングモードの使用例として、28sec ごとに新たな鋼塊がコ ンベヤ上に落とされ、溶鉱炉に送り込まれる渦電流炉について考えてみま す。赤外線カメラが炉の端から押し出されるインゴット上で温度を測りま す。赤外線カメラはこのループに必要な PV ( 温度 ) をシリアルインター フェイスを介してコントローラに送ります。この場合、新しい PV が約 28sec ごとに取得されますが、シリアルポート通信の非同期性から、これを 周期的タスクと同期させる良い方法がありません。オーバーサンプリング モードを使用すると、以下の図に示すように、新しい温度信号を受取るたび に PIDE 命令の実行を促進することができます。 周期モードは、ブロックを 周期的タスクに配置するこ とで使用できる。 Pub.No. LOGIX-WP008A-JA-P - May 2005 タイミングモードが周期 (TimingMode=0) のときは、DeltaT は自動的にタスクの更 新時間を 0.1sec に設定する。 8 共通プロセスループ制御アルゴリズムの実行 EnableIn ピンの視覚化をオンにして、 IR カメラから「受取った新しい温度」 を示すブーリアン信号に配線する。 オーバーサンプリングモード (TimingMode=1) を選択する。 OversampleDT ピンの視覚化をオンにして、 「新しいインゴットのレート」の設定に配線す る ( オプションで、定数値を入力するだけ )。 リアルタイムサンプリングモードの使用例として、流量積分計の場合を考え てみます。この場合、トータライザ命令を使用して、期間内の容積流量信号 が集計されます。トータライザは、最新の流量サンプルを現時点までの合計 に継続的に加算するので、時間の経過と共にわずかな誤差が蓄積される可能 性があります。アナログ入力モジュールから最も正確なタイムベースのサン プルを取得するには、以下の図に示すように、リアルタイムサンプリング モードを使用することができます ( トータライザ命令は計算の誤差を最低限 に抑えるために、内部的に倍精度浮動小数点と台形法則数値積分法を使用す ることに注意する )。 RTSTime と RTSTimeStamp を 表示する。 希望する RTS レート用にアナログ入力 モジュールを構成する。 アナログ入力モジュール構成 から RTSTime パラメータに、 RealTimeSample 値を配線する。 アナログ入力モジュールから RTSTimeStamp パラメータに、RollingTimeStamp 入力を配線 する。トータライズアルゴリズムは、タイム スタンプが変更するたびに実行する。 9 Pub.No. LOGIX-WP008A-JA-P - May 2005 共通プロセスループ制御アルゴリズムの実行 PV および CV フォルト の処理 プロセス変数または制御変数に誤りがある場合は、すでにフィードバックも 実際の制御能力も失っているので、PID ループで制御を継続しようとしては なりません。1756 I/O モジュールを使用しているときは、PIDE 命令で自動 的にこの状況を処理できます。すべての 1756 I/O モジュールには、チャネ ルごとのチャネル・フォルト・インジケータがあります。I/O モジュールと の通信が遮断された場合や、チャネル上で範囲未満または範囲超過などの フォルトが発生した場合は、チャネルフォルトがオンになります。つまり、 チャネルフォルトは I/O チャネルの品質をモニタするためのわかりやすいシ ングルパラメータです。これらのチャネル・フォルト・インジケータを PVFault および CVFault パラメータに配線することで、PIDE 命令は PV また は CV に誤りがある場合に自動的に自身を手動モードにロックするようにし ます。 自動的に PV または CV フォルトを処理するには、まず PVFault と CVFault ピンの視覚化をオンにする。 それから、アナログ入力とア ナログ出力チャネル・フォル ト・ビットを PVFault と CVFault ピンに配線する。 チャネルに誤り ( 範囲不足または範 囲超過など ) があるか、モジュール との通信が失敗すると、チャネル・ フォルト・インジケータは True(1) になる。 比率制御 PVFault または CVFault が True(1) のときは、ループが 手動モードにロックされる。 これによって、CV が制御不 能で終了するのを防ぐ。 比率制御は、1 つの要素の流量と他の要素の流量の比率を一定に保持すると きに役立ちます。例えば、上流のソースから流れてくる原料 (Flow A) を受 取る連続混合タンクを想定してみます。Flow A の量は、上流の処理条件に よって変化する可能性があります。このため、Flow A は通常、「ワイルドフ ロー」または「非制御フロー」と呼ばれます。ミキサーに入る Flow A の量 に関わらず、もう 1 つの原料 (Flow B) を常に一定の割合で追加したいとし ます。Flow B は、PIDE 命令によってカスケード / 比モードを使用して制御 されます。このとき、PIDE 命令のセットポイントは、Flow A 信号に比率値 を掛けて決定されます。 Pub.No. LOGIX-WP008A-JA-P - May 2005 10 共通プロセスループ制御アルゴリズムの実行 カスケード / 比モードを有効にするには、最初にパラメータ AllowCasRat を 設定する必要があります。このパラメータが使用可能なのは、ほとんどの ループにはカスケード / 比モードが必要ないため、デフォルトで無効になっ ているからです。さらに UseRatio パラメータも設定する必要があります。 これは、PIDE 命令に SPCascade 入力と Ratio 値を掛けて、その結果をカス ケード / 比モードのときにセットポイントとして使用するように指示しま す。次に、制御されたフローを PV 入力に配線し、非制御フローを SPCascade 入力に配線します。また、比率の上限値と下限値を定義して、比 率を有効な値に限定することもできます。この実装例を以下に示します。 FT FT Flow B Flow A 制御されない流れ は、上流から処理 される。 制御された流れは、 PIDE 命令によって 制御される。 AllowCasRat を設定して、カス ケード / 比モードにできる。 UseRatio を使用して、SPCascade に Ratio 値を掛けたことをループ に知らせる。 制御された流れは PV として使用する。 制御されない流れを SPCascade パラメータに配線する。 Ratio 制限は、許容可能 な Ratio 値の境界にす るために使用できる。 Ratio 値は、オペ レータ表示またはプ ログラムから入力さ れる。 11 Pub.No. LOGIX-WP008A-JA-P - May 2005 共通プロセスループ制御アルゴリズムの実行 カスケード制御 カスケード制御は、制御したいプロセスへの外乱となる最終的な制御エレメ ントの外乱を制限したいときに有用です。例として、温度がタンクの回りの ヒーティングジャケットに流れるスチームによって制御される混合タンクの 場合を考えます。上流の活動によってスチーム圧力が低下すると、タンク内 の製品の温度が低下し始めます。温度を制御する PID ループは、温度の降 下を検知して、最終的に温度がセットポイントに戻るようにスチームバルブ が開きます。ただし、製品温度が深刻な影響を及ぼす前にスチームバルブを 開くことを開始するのに便利です。カスケード制御はこの機能を提供しま す。 カスケード制御では、メイン変数を制御するループは 1 次ループといわれて います。これは、マスタループまたは外部ループと呼ばれることもありま す。例では、タンクの温度は 1 次ループで制御されます。終的な制御エレメ ントの外乱を制御するループは、2 次ループといわれています。「スレーブ ループ」または「内部ループ」という用語も使用されます。この例では、 ジャケット温度をモニタするように 2 次ループを設定できます。ジャケット の量はタンクの量よりはるかに小さいため、スチーム圧力の変化にずっと素 早く反応します。これは、カスケード制御の制限を示します。2 次ループの 特性に反応するプロセスは、1 次ループの特性に反応するプロセスよりも速 くなければなりません。これは 2 次ループが遅いときには論理的で、1 次で 見られるより前に外乱を制御することはできません。 ジャケット温度をモニタする 2 次ループでは、スチーム圧力の低下はジャ ケット温度の低下として素早く検知し、タンクの温度が深刻な影響を及ぼす 前に 2 次ループはスチームバルブを開きます。これを以下の図に示します。 • カスケード制御では、スチーム圧力の低下によってジャケット温度が低下するこ とになります。それから、2 次 ( 内部 ) PID ループはスチームの流れが増加する と反応して、製品温度が深刻な影響を及ぼす前にジャケット温度がセットポイン トに戻ります。 PV PID TT TT PV ৻ᰴ࡞ࡊ SP PID ੑᰴ࡞ࡊ ຠ᷷ᐲ ࠬ࠴ࡓ ᤨ㑆 Pub.No. LOGIX-WP008A-JA-P - May 2005 12 共通プロセスループ制御アルゴリズムの実行 PIDE 命令には、カスケードされたループを処理するための機能が組み込ま れています。最初に、カスケード制御を処理するための異なるモード ( カス ケード / 比 ) があります。2 次ループは、1 次の出力が 2 次のセットポイン トを提供する場合にカスケードモードにできるか、またはジャケットの温度 セットポイントを直接入力できる場合に自動モードにできます。 PIDE 命令は、1 次ループの 2 次ループのセットポイントへの初期化もサ ポートしています。2 次ループがカスケードモードではなくなると、プロセ スに影響を及ぼさなくなるまで 1 次ループは制御することを停止する必要が あります。2 次がカスケードモードに戻るときに、1 次がバンプレスで制御 を開始できるように、出力を 2 次ループのセットポイントに等しい値に設定 する必要もあります。 さらに、PIDE 命令は 1 次ループでのワインドアップ制限をサポートしてい ます。2 次ループが出力またはセットポイント制限に達すると、1 次ループ が制限の方向での積分を停止します。例えば、2 次が出力の上限に達したと きに、1 次を正方向に積分してはなりません。この例では、2 次ループがス チームバルブを 100% 開いたときに、2 次がそれ以上のスチームを与えるこ とができないためさらにスチームを要求し続けている (2 次のセットポイン トを増加する ) ことを 1 次が検知できなくなります。 RSLogix 5000 のカスケードされたループの標準的なセットアップを以下に 示します。First on1 次ループ、CVInitReq と CVInitValue ピンの視覚化をオ ンにする必要があります。2 次がカスケードモードではなくなると、これら は 1 次ループの初期化を設定するために使用されます。2 次は 1 次の出力を そのセットポイントとして使用するために、1 次の出力の工学単位の範囲が 2 次のセットポイントの工学単位の範囲に確実に対応するようにする必要が あります。 CVEUMax および CVEUMin が 2 次 ループの SP の工学単位の範囲と一致 することを確認する。 13 CVInitReq および CVInitValue ピンの視覚化をオンにする。 Pub.No. LOGIX-WP008A-JA-P - May 2005 共通プロセスループ制御アルゴリズムの実行 2 次ループでは、InitPrimary, WindupHOut, および WindupLOut ピンの視覚化 をオンにする必要があります。これらは、1 次の初期化とワインドアップ制 限を設定するために使用されます。また、カスケード / 比モードを有効にす るために、比率制御ループで行なったように AllowCasRat の設定する必要も あります。 CVInitReq が True(1) のときに、1 次の CVEU を 2 次の SP 値に 初期化するために SP を CVInitValue に配線する。これによって、 1 次をバンプレスで 2 次に一致させることができる。 2 次がカスケード / 比モード ではなくなると、1 次を初期 化するために InitPrimary と CVInitReq を配線する。 WindupHOut と WindupLOut を、WindupHIn と WindupLIn に配線する。 これによって、2 次が出力またはセットポイント制限に達したときに、 1 次がさらに積分することを停止する。 最後に、2 次の InitPrimary および SP 出力を 1 次の CVInitReq および CVInitValue 入力に配線する必要があります。2 次がカスケードモードのま まのときは、1 次ループがその CVEU 出力を初期化して 2 次のセットポイン トと等しくなるような InitPrimary 出力を設定します。また、2 次の WindupHOut および WindupLOut 出力を 1 次の WindupHIn および WindupLIn 入力に配線する必要もあります。2 次が出力またはセットポイント制限に達 したときに、1 次ループがその方向での積分を停止するように対応する Windup 出力を設定します。 最後の注意点として、DCS システムの中には 1 次の初期化とワインドアッ プ制限を、1 つの“「逆計算」ワイヤを 2 次から 1 次に配線することで実現 しているものもあります。このワイヤには、初期化とワインドアップ H/L 信号のすべてが含まれています。ただし、これらを別々の信号として取り出 す利点は、柔軟性が向上し、例えば 1 つの 1 次ループが複数の 2 次ループに 分散するようなより高度な状況を処理できるようになることです。 Pub.No. LOGIX-WP008A-JA-P - May 2005 14 共通プロセスループ制御アルゴリズムの実行 範囲の時間比例分割ルー 状況によっては、1 つの PIDE 命令が出力範囲に応じて 2 種類の制御を実行 するために使用されることがあります。前述の押出機のバレルゾーンの例に プ ついて考えると、温度は PIDE 出力が 50% を超えるとパルス抵抗加熱器に よって制御され、PIDE 出力が 50% を下回ると冷却コイルを通るパルス冷却 水によって制御されます。Logix コントローラは、まさにこのタイプのルー プのために範囲の時間比例分割 (SRTP) 命令をサポートしています。 さらに、PIDE および SRTP 命令の実行方法についても考慮する必要があり ます。通常、このタイプの温度ループは非常にゆっくりと作用します。した がって、PIDE 命令は、1.5 ∼ 2sec ごとに 1 回だけ実行するのが一般的です。 しかし、SRTP 命令は、PIDE 命令よりかなり迅速に実行されます。実際に は、SRTP 命令は加熱および冷却出力のパルス化を行なうので、出力分解能 は SRTP 命令の CycleTime と SRTP の実行頻度に依存します。 例えば、SRTP 命令の CycleTime に 10sec を設定した場合は、1sec に 1 回と いう PIDE 命令と同じ周期的タスクで SRTP 命令を実行すると、出力の分解 能は実際には実際にはたった 10% になってしまいます。この分解能でルー プを制御するのは不可能です。したがって、SRTP 命令を通常 10 ∼ 20msec ごとに実行している、より高速でより優先度の高い周期的タスクで実行する 必要があります。これで、コントローラタグを使用して PIDE 出力からデー タを SRTP 命令の入力に送信できます。 標準的なループの場合は CycleTime は 10sec で、SRTP 命令が 20mec の周期 的タスクで実行されている場合は出力分解能はこのようなタイプのほとんど のループを処理するために十分な 0.2% です。加熱 / 冷却ループの場合は、 通常、SRTP 命令は 100% の PIDE 出力で最大加熱になり、50% の PIDE 出力 では加熱も冷却も行なわれず、0% の PIDE 出力で最大冷却になるように構 成します。実際、これがデフォルトの SRTP 命令の構成です。加熱のみの ループの場合は、100% の PIDE 出力出力で最大加熱、0% の PIDE 出力で加 熱なしになるように SRTP 命令を構成します。さらに、加熱 / 冷却ループの 場合は、通常、PIDE 命令の .CVInitValue パラメータを 50 に設定する必要が あります。これによって、PIDE ループはコントローラが最初にランモード になると、50% の出力で開始します。SRTP 命令の標準的な加熱 / 冷却ルー プ設定を以下に示します。 サイクルタイム = 10sec PIDE CVEU 0% 25% 50% 75% 100% 15 SRTP % Heating 0% 0% 0% 50% 100% SRTP % Cooling 100% 50% 0% 0% 0% SRTP Heat Contact On Time 0 sec 0 sec 0 sec 5 sec 10 sec SRTP Cool Contact On Time 10 sec 5 sec 0 sec 0 sec 0 sec Pub.No. LOGIX-WP008A-JA-P - May 2005 共通プロセスループ制御アルゴリズムの実行 標準的な加熱 / 冷却ループを実行する FBD ロジックは、以下のようになりま す。 高速でより高いプライオリティの タスク内の SRTP 命令を実行する。 これによって、パルス出力をより 正確にすることができる。 通常、これらは遅い温度ループ であるため、低速の周期的タス ク内の PIDE 命令を実行する。 コントローラタグを使用して PIDE CVEU を SRTP の入力に送る。 加熱または冷却のために、デジタル接点のかわりにアナログの最終的制御エ レメントを駆動しているときは、SRTP 命令の HeatTimePercent および CoolTimePercent 出力を直接使用できます。これらは、PIDE 命令に要求され る加熱または冷却の量に従って、0 ∼ 100% の範囲で変化します。 前述のように、適合ゲインは PIDE 命令を使用すると簡単に実現できます。 加熱と冷却プロセスは物理的に異なるプロセスであるため、それぞれに異な るゲインを持つとより良い制御が可能になります。適合ゲインを実装するに は、PGain, IGain, および DGain パラメータの視覚化をオンにしてから、以下 に示すように、加熱ゲインまたは冷却ゲインのいずれかのセットの選択を配 線します。 PGain, IGain, および DGain ピンの視覚化を オンにする。これによって、プログラムで 変化する定数をチューニングできる。 CVEU が 50% より大きいかをテストする。 大きい場合は加熱ゲインを選択し、そうで ないときは冷却ゲインを選択する。 Pub.No. LOGIX-WP008A-JA-P - May 2005 ゲインごとにこの選択ロジック を繰返す。 16 共通プロセスループ制御アルゴリズムの実行 プロセスのシミュレー ション プロセスループの簡単なシミュレーションを行なうために、Logix コント ローラに組み込まれているプロセス命令を使用できます。ほとんどのループ は、通常、「積分」または「自己制御」と考えられます。積分プロセスの例 には、レベルループがあります。タンクに流れ込む量と流れ出る量が同じタ ンクを考えた場合、水位は一定になります。ここで、タンクに流れ込む量を 1 ステップ増やすと、タンクは徐々に満たされ、一杯になるか、溢れ出しま す。これが一般的な積分プロセスループです。ループ出力の 1 ステップを変 更した場合、プロセスは物理的な制限に達するまで、着実に増加または減少 します。 CV (ᵹ㊂) ࡌ࡞ ࠲ࡦࠢ߇ࠝࡃࡈࡠ! PV ᤨ㑆 レベルループなどの積分ループのシミュレーションは簡単で、タンクでの塊 または材料バランスの計算を実行するだけです。 自己制御プロセスループの例は、温度ループです。ループ出力にステップ増 加をするときは、通常、温度が応答を開始するまでしばらく時間がかかるこ とがあり、新しい定常状態の値に指数関数的に増加します。 ᷷ᐲ CV (ࠬ࠴ࡓߩᵹࠇ) PV ᤨ㑆 17 Pub.No. LOGIX-WP008A-JA-P - May 2005 共通プロセスループ制御アルゴリズムの実行 自己制御プロセスループは、デッドタイムおよび 1 次ラグを直列にすること でシミュレーションできます。デッドタイムは出力が変化してから PV が応 答を開始するまでの遅延をシミュレーションし、ラグは新しい定常状態の値 への指数関数的な上昇をシミュレーションします。 CV (ࠬ࠴ࡓߩᵹࠇ) ᷷ᐲ ᷷ᐲ CV (ࠬ࠴ࡓߩᵹࠇ) PV PV ৻ᰴࠣ߇ࠞࡉ ࠍቯ⟵ߔࠆޕ ࠺࠶࠼࠲ࠗࡓ ᤨ㑆 ታ㓙ߩࡊࡠࠬ ᤨ㑆 ࠪࡒࡘ࡚ࠪࡦߐࠇߚࡊࡠࠬ Logix コントローラは、これらのタイプのシミュレーションに使用できる デッドタイムおよびリードラグ命令を提供します。PIDE 命令の出力はデッ ドタイムおよびリードラグを介して配線されてから、PIDE 命令の PV 入力 に戻ります。ループはモデルをチューニングして動作できます。 ᷷ᐲ CV (ࠬ࠴ࡓߩᵹࠇ) PV ৻ᰴࠣ߇ࠞࡉ ࠍቯ⟵ߔࠆޕ デッドタイムとリードラグブ ロックを介して PIDE ブロックの CVEU を配線することで、プロ セスをシミュレーションする。 ࠺࠶࠼࠲ࠗࡓ ᤨ㑆 ࠪࡒࡘ࡚ࠪࡦߐࠇߚࡊࡠࠬ デッドタイムおよびラグに異なる値を選択することで、異なるタイプのプロ セスループをシミュレーションできます。例えば、低速の温度ループに数分 のデッドタイムと数分のラグ時定数が設定され、一方、高速フローループに 数秒のデッドタイムと数秒のラグ時定数が設定される場合もあります。 Pub.No. LOGIX-WP008A-JA-P - May 2005 18 共通プロセスループ制御アルゴリズムの実行 さらに、デッドタイムまたはリードラグ命令の Gain パラメータを使用して、 プロセスゲインをシミュレーションできます。例えば、ループ出力の 10% の変化が PV に 20% の変化をもたらすのが一般的な場合に、Gain に 2 を設 定してこの動作をシミュレーションできます。同様に、ループの周囲条件に より、ループ出力が 0% のときプロセスが 0 ではない値で安定する場合、こ の値を Bias として入力できます。例えば、ループ出力が 0% の場合、温度 ループは室温で安定します。最後に、PV 値への PIDE 命令の出力を異なる 範囲を使用してスケーリングするために、スケール (SCL) ブロックを使用す る場合もあります。 自動チューニング PIDE 命令にはオートチューナが組み込まれており、これを使用してプロセ スループ用の推奨されるチューニング定数を取得できます。オートチューナ が PIDE 命令に組み込まれているため、RSLogix 5000 内でまたはオペレータ インターフェイスからループをチューニングできます。PIDE オートチュー ナはオープン・ループ・オートチューナであるため、ループは手動にする必 要があります。オートチューナは構成された量で出力を段階的に行ない、 PV の応答を確認してから、高速、中速、または低速応答に対して推奨され る比例、積分、および微分ゲインの値のセットを提供します。以下の図に示 すように、オートチューナは推奨されるチューニング定数だけでなく、 チューニング定数を概算するために使用されたプロセスモデルを再度チュー ニングできます。このプロセスモデルと実際のプロセスを比較することに よって、推奨されるゲインの妥当性がわかります。 オートチューナに推奨された 定数をチューニングする。 オートチューナに使用さ れるプロセスモデル さらに自動チューニング機能が必要なときは、PIDE 命令は RSTune および RSLoopOptimizer パッケージもサポートしています。これらの PC ベースの オートチューナは、クローズド・ループ・チューニングなどもサポートして いて、特に RSLoopOptimizer の場合にプロセスループに関する診断情報の状 態を提供します。 19 Pub.No. LOGIX-WP008A-JA-P - May 2005 共通プロセスループ制御アルゴリズムの実行 まとめ 拡張 PID 命令と残りのプロセス制御の命令セットについては、『Logix5000 コントローラ プロセス制御およびドライブ・インストラクション・セッ ト・リファレンス・マニュアル』(Pub.No. 1756-RM006) を参照してくださ い。このマニュアルには、組み込まれたプロセス命令ごとの動作に関する詳 細な説明が記載されています。 拡張 PID 命令は、従来の PLC ベースのループ制御の領域を超えて多数の高 度な機能を提供して、従来のシステムに必要とされていた面倒なラダープロ グラミングなしで、より高度なループアルゴリズムを簡単にセットアップで きるようにします。ただし、PIDE 命令は Logix ベースのプロセスソリュー ションの 1 つに過ぎません。その他のプロセス制御の命令セット全体、フル 機能のファンクション・ブロック・ダイアグラム、シーケンシャル・ファン クション・チャート、および構造化テキストのエディタ、ControlLogix 冗 長、HART および FOUNDATION Fieldbus をはじめとスル多数の I/O オプ ション、および RSView オペレータ・インターフェイス・ソリューションと の統合などの機能によって、Logix コントローラはシーケンシャル、モー ション、またはドライブ制御と同じくらい巧みにプロセス制御を行なえるソ リューションを提供できるようになります。これによって、設備全体で共通 のスケーラブルなプラットフォームを利用できるため、エンジニアリングお よび保守費用を劇的に削減できる可能性があります。連続またはバッチ・プ ロセス・アプリケーション、高速梱包マシン、または協調ドライブシステム のどれを制御する場合でも、Logix はこれらすべてのアプリケーションを処 理する機能を備えています。 Pub.No. LOGIX-WP008A-JA-P - May 2005 20 当社のサポートサー ビス ロックウェル・オートメーションは、製品の使用を支援するための技術情報 を Web から提供しています。http://support.rockwellautomation.com では、技 術資料、知識ベースの FAQ、テクニカルノートやアプリケーションノート、 サンプルコードやソフトウェア・サービス・パックへのリンク、およびこれ らのツールを最大限活用するようにカスタマイズできる MySupport 機能を 探すことができます。 設置、構成、およびトラブルシューティングのさらなるテクニカル電話サ ポートのために、TechConnect Support programs を提供しています。詳細は、 代理店またはロックウエル・オートメーションの支店に問い合わせるか、ま たは http://support.rockwellautomation.com をご覧ください。 設置支援 設置から 24 時間以内にハードウェアモジュールに問題が発生した場合は、 まず本書に記載された情報を確認してください。また、モジュールの起動と 動作を初期支援する特別なカスタマサポート番号に連絡することもできま す。 米国 1.440.646.3223 月曜日∼金曜日、AM8:00 ∼ PM5:00 ( 東部標準時間 ) 米国以外 テクニカルサポートについては、地域のロックウェル・オートメー ションの代理店に連絡してください。 製品の返品 ロックウェル・オートメーションでは、製造工場から出荷されるときに製品 が完全に動作することをテストしていますが、製品が機能せず返品する必要 があるときには、以下の手続きを行ってください。 米国 代理店に連絡してください。返品手続きを行なうには、代理店にカス タマサポートのケース番号を知らせる必要があります ( ケース番号は 上記の電話番号に問い合わせる ) 米国以外 返品手続きについては、地域のロックウェル・オートメーションの支 店にお問い合わせください。 Publication Number LOGIX-WP008A-JA-P - May 2005 Copyright © 2005 Rockwell Automation, Inc. All rights reserved. Printed in the U.S.A.