S 7 -1200定電圧給水PID制御の実践:ハードウェア選択、プログラム構造、完全なガイド(実際のエンジニアリングケース)

無料無料技术资料

这篇内容可直接阅读,适合用于基础学习和検索引流。

Siemens S 7 -1200定圧力給水用PID閉ループ制御手順(TIA Portalエンジニアリング)·完全な逆解析と手動計算PIDの詳細な説明


前に書く:この逆分析が読む価値がある理由

“定圧給水”についての記事はたくさんありますが、ほとんどは“回路図+スクリーンショット”にとどまっています。君に直接写写したり変えたりできる工事は与えられない。

このプロジェクトは異なります-それは一つです。真の、完全なソースコード、完全な変数中国語S 7 -1200定圧力給水PIDクローズドループプログラム。ハードウェア、OB/FB/DB、コントローラの各々の変数(値、フィードバック値、比例、、、前回、デッドゾーン、上下下限)はっきりとしている。これはファイルを分解します。どのPLCを使用しますか?PIDの計算方法は?アナログ変換のスケールは?I/Oはどうですか?パラメータの設定方法は?

完了すると、セットがもらえます。直接再利用可能な定圧給水PID制御の考え方“変数マップ”もあります。あなたがコミュニティ給水、建物給水、工場の定圧補水、冷却循環水を行いたい場合は、この手順を直接参照することができます。


まず、プロジェクトの実態を明確にする(タイトルに惑わされないように)

このようなプロジェクトをダウンロードするのが最も簡単です。文書化に基づいて、まず事実を明確にします。

#ラベル/Proposal Statement実際に読んだこと影響力
1S 7 -1200定圧給水の実現プロジェクトの内部はTIAポータルプロジェクト(.ap14+System/PEData.plf(CPUの測定値はS7-1200 CPU 1214C DC/DC/DC 6ES 7 214-1AG40- 0XB0、ファームウェアV4.1必要です。TIA Portal(ポータル)開く; STEP 7 V5.xは使用できません
2“完全なエンジニアリング文書”完全なハードウェア構成、OB1、FB“PID_1”、DB1/DB 2、SCLで手書きされたPID、中国語変数コンパイル可能、ダウンロード可能、実行可能、“完全なプロジェクト”
3PIDクローズドループ制御PIDは既存のPID_Compact命令ではなく、FB“PID_1”にSCLで手書きしたインクリメンタルPID(比例/積分/誤差/デッドゾーン/上限と下限を含む)ロジックは透明で、変更可能で、学習可能で、ブラックボックス命令よりも教育や二次開発に適しています。

一言で言えばこれはセットですS 7 -1200 + TIA Portalの定圧給水PIDプロジェクト、手書きPID、注釈/変数。タイトルが“S 7 -1200定圧力給水ルーチン”と書かれているだけでは正確ではないので、この記事は実際の形で命名されます。


ハードウェアとシステムアーキテクチャ(1つの図で理解できる)

2.1コントローラと信号ボード

  • CPU:CPU 1214C DC/DC/DC6ES7 214-1AG40- 0XB0、ファームウェアV4.1--14点デジタル入力、10 点デジタル出力(トランジスタ)2つのオンボードアナログ入力(0 ~ 10 V、10ビット)。
  • シグナルボードSB:SB1232(6ES7 232-4HA30-0XB0)CPUの上に取り付けられたアナログ出力1ウェイ(12ビット)周波数コンバータに周波数コマンドを送信します。
  • プロジェクト名:PID閉ループ演算定圧力給水TIA Portalのオリジナル版V14(STEP 7 Basic 14.00.01.00)2018-10年にV 15にアップグレードされた。

2.2フィールド計測器とアクチュエータ

設備はインターフェース役割は
圧力トランスミッタ(4 20/0 10 V)CPUオンボードアナログ入力%IW64給水管網圧力の検出→ PIDフィードバック値
周波数変換器(VFD)×1(2まで拡張可能)信号板アナログ出力%QW80(コードで引用されている。%QW200)0 10 V / 4 20 mAの周波数コマンドを受信し、ポンプの回転速度を調整する
ポンプモーター周波数変換器でドラッグするモーターアクチュエータ、速度はトラフィックと圧力を決定する
(オプション)HMI /タッチスクリーンEthernet(CPUはPRO FINETポートを搭載)目標圧力の設定、リアルタイム圧力の表示、手動/自動切り替え

システムアーキテクチャの概要:

圧力トランスミッタ4 ~ 20
                 略称はIW64。
                 ▼ ▼ ▼
        �������������
        S 7 -1200 CPU 1214 C    │ │ │
        │ OB1メインサイクル            │ │ │
        │ │ │   FB“PID_1”を呼び出す   │ │ │   インクリメンタルPID(SCL手書き)
        │ │ │       設定値-フィードバック値   │ │ │
        │ │ │       → 比例+積分+デッドゾーン
        │ │ │       →制限[下限、上限] │
        └ ── ── ── ── ── ┬─ ── ── ── ── ── ┘
                   % QW80 SB1232AO
                   ▼ ▼ ▼
              周波数変換器VFD--→ポンプモータ
                   │ │ │
            給水管網圧力--圧力トランスミッタへの閉ループフィードバック

エンジニアリングのポイント“これは典型的なことです。シングル圧力センサ+シングル/デュアル周波数コンバータ+ PID速度制御“定圧給水構造”PID出力はインバータ周波数を駆動し、インバータはポンプ速度を調整し、速度はトラフィックを変更し、トラフィックは配管ネットワーク圧力を変更し、圧力はPIDにフィードバックされます。


プログラム構造全体の概要:OB / FB / DB

3.1組織ブロックOB(スキャンスケジュール)

OBタイプの種類本プロジェクトにおける役割(ブロック構造から推定)
OB1メインプログラムのスイープ/サイクルMain Program Sweep / Cycle圧力アナログを読み取り、スケール変換を行い、FB“PID_1”に設定値とフィードバック値を供給し、PID出力スケールをアナログ出力に書き込みます。
(OB100などの起動クラスOBは、このシンエンジニアリングではevidentではありません)—このルーチンは、PID閉ループに焦点を当てた最小利用可能な工程であり、主論理はOB1に集中する。

3.2機能ブロックFB“PID_1”--プロジェクトの最も貴重な部分

FB“PID_1”のインタフェース変数を工程データベースから完全に抽出した中国語の名称。これは手書きのPIDコントローラの“部品リスト”です。

変数(中国語)意味の意味PID数式での役割
設定値の設定目標圧力(例えば0.40 MPa)PIDの値r k
フィードバック値実際の圧力(圧力トランスミッタのスケール後の値)PIDのプロセス値/フィードバックy k
p値は比例利得Kpスケール項係数
インテグリティ積分項の累積値定常偏差の除去
現在の誤差e k =設定値−フィードバック値このサイクルの偏差
最後のエラーe(k−1)前サイクル偏差増分PID必須
現在の出力値の計算u(k)本周期コントローラ出力
最終出力値の計算u(k−1)アップサイクル出力(インクリメンタル累積用)
フィードバック·プロシージャ値の一時記憶{{ふぃーどぷろしーじゃあたいのてんぽれーとれーと}}/出力プロシージャ値一時記憶{{しゅつりょくぷろしーじゃあたいてんぽらめすとあど}}中間バッファスケール/フィルタの中間量
出力制御値/PID出力最終的に周波数コンバータに送られる制御量制限後の実装
PIDデッドゾーンデッドゾーン帯域幅偏差がデッドゾーンより小さいときは出力を維持し、ジッタ防止
PIDの上限/PIDの最小値出力制限の設定周波数コマンドを0 100%/ 0 10V区間に制限

結論:結論変数の命名はアルゴリズムの形態を直接公開します。“現在の誤差/最後の誤差”“現在の出力値を計算/最後の出力値を計算”が典型的です。インクリメンタル(速度)PID同時に、“ポイント”と“デッドゾーン”、“上限と下限”の項目を維持することは、産業現場で最もセキュリティで手ブレ防止の書き方です。

3.3データブロックDB

  • DB1FB“PID_1”バックグラウンド·ブロック(Instance DB)上記のすべての静的変数を保存する。
  • DB2:データDB設定値、比率/積分パラメータ、上限と下限、デッドゾーンなどの“レシピ/パラメータ”を格納し、HMIの変更と調整を容易にします。

コアアルゴリズム:手書きインクリメンタルPID(変数ごとの分解)

以下のロジックはFB“PID_1”の変数命名と構造から来ており、推測ではない。以下は、これらの変数に対応する標準的な増分PIDの書き方(SCLのアイデア)を示します。

4.1インクリメンタルPID 公式

エラー        e(k)    =設定値-フィードバック値          現在の誤差
前回のエラー     e k-1 =現在の誤差前周期        【前回のエラー】
スケールアイテム      Pは       = p値× e k-e k-1
積分項      インテグリティ     =積分+ Ki × e k          //積分加算(静止差をなくす)
インクリメンタルエクスポートProdName     Δu k   = P +積分                  // (微分が必要な場合はKd項を追加)
今回の輸出は、PowerPath     u(k)    = u k-1 + Δu k            //現在の出力値の計算=最後の出力値の計算+増分
  • デッドゾーン処理:IF ABS e k lt; PIDデッドゾーンTHEN Δu k = 0(偏差が小さすぎると調整されず、設定点付近でポンプが頻繁に振動するのを防ぎます。
  • 限界値の設定:u k = IT下限、u k、上限(周波数コマンドを0 100%/ 0 10Vの范囲にロックし、デバイスをする)。
  • スクロールストレージ::取るe(k)“前回のエラー”の場合、u(k)“前回出力値の計算”を入金し、次のサイクルに供します。

4.2なぜ場所ではなく増分なのか?

  • 増分は単に“変化”です。コンピュータ/PLCが再起動しても、u(k-1)バックグラウンドDBから復元すると、出力はフルスケールにジャンプしません。ポンプのセキュリティ性。
  • 自然に優しい。出力被
  • 手書きの利点。シーメンスよりも。PID_Compact命令はより透明でより良い変化フィードフォワード、ポンプスイッチ、スリープロジックを追加したい場合は、すべて自分の手にあります。

略称はS 7 -1200。PID_Compactプロセスオブジェクト(このプロジェクトタイプのライブラリにも構造があります)は、“自分でアルゴリズムを書きたくない、自分で調整する”シナリオに適しています。手書きPIDそれは教育と二次開発のためです。どちらのルートも正しく、必要に応じて選択できます。


I/Oとアナログマッピング(キーアドレス一覧)

アドレス:addressタイプの種類意味の意味スケールの説明
%IW64シミュレーション入力圧力トランスミッタフィードバックオンボードAI0(0 10 V / 4 20)、NORM_X →工事量(例:0.00 1.00)
%QW80アナログ出力。インバータ周波数コマンドメインポンプSB1232 AO(12ビット)、SCALE_Xは0 100%を0 27648 / 0 10Vにマッピングする
%QW200アナログ出力。第2ウェイ周波数コマンドスペアポンプ/拡張コード内で参照され、“ドラッグ2/ダブルポンプ”拡張配線に対応しています。
%MD20 / MD24 / MD28 / MD32 / MD36 / MD40グローバルメモリPID中間量(誤差、積分、出力ステージングなど)スケール変換とクロスサイクルステージングに使用

アナログスケール変換(BOTU標準プラクティス):

//読み込みpressure_raw =圧力トランスミッタ% IW64;
//標準化norm          = NORM_X 1
//工事量フィードバック値ふぃーどーどうち        = SCALE_X          //0.0 0..。1.00 MPaは

//出力out_norm = NORM_X MIN =0.0、MAX =100.0、=出力;            // 0..。100パーセント
//出力周波数変換器% QW80 = SCALE_X MIN = 0 MAX =27648 VALUE =out_norm;     // 0..。27648

主なポイント:S 7 -1200のアナログ入力はい0 27648 5530 27648、4 20 mA搭載、出力0すべての“工事”は通過します。NORM_X / SCALE_Xこのペアは、圧力値と周波数パーセンテージが一致しないスケールされます。


六、定圧制御原理(闭ループブロック図+フロー)

6.1クローズドループ制御ブロック図

��������������   設定値の設定    ‥ ― ― ― ― ― ― ― ― ― ―   PID出力    ������������   周波数の問題    ������   フローの流れ
  │ HMIさん    │------------------│              │---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  その― ― ― ― ― ― ― ― ― ― ― ― ― ― ―            │ FB“PID_1”│              │器です。    │ │ │          その― ― ― ― ― ― ― ― ― ― ― ―    │ │ │
                         インクリメンタルPID │              その― ― ― ― ― ― ― ― ― ― ― ― ― ― ―                    │ │ │
   フィードバック値α α α β β β β β β β β β β β β β β β              │ ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ―
   −圧力トランスミッタ(% IW64)−誤差=セット−ペッチ

6.2 1つのフルデューティサイクル(OB1で起こること)

1.サンプリングサンプリング::読書%IW64→NORM_X/SCALE_X→“フィードバック値”(実際の配管網圧力)を取得します。2.比較する。:現在の誤差=設定値-フィードバック値。 3.オペレーショナルFB“PID_1”インクリメント、累積積分、デッドゾーン、リミットを計算し、PID出力/出力制御値を取得します。4.実装は:PID出力→NORM_X/SCALE_X→ write%QW80ポンプ速度を調整する周波数コンバータ。5.閉ループ水消費量が多い→圧力低下→誤差が大きくなる→ PID周波数上昇→ トラフィック増加→圧力安定;水消費量が少ない→逆に周波数低下。6.ロールアウト:このサイクルの誤差/出力を“前回の誤差/前回の出力値の計算”に格納し、次のサイクルに進みます。

これが“定電圧”の本質です。ポンプをフルスピードに保つのではなく、パイプネットワーク圧力を設定値付近で一定にする水の量が変わると自動的に調整。給水を確保し、電力周波数よりも高い。20%~ 50%の省電力また、ソフトスタートソフトストップ、ポンプ寿命の延長も可能です。


プロジェクトのハイライト:7つの再利用可能な実戦経験

1.PID手書き、変数すべて中国語:設定値/フィードバック値/比例/積分/誤差/デッドゾーン/上下、一目で、ゼロしきい値の二次開発。2.インクリメンタルPID +リミット::アンチ積分飽和、アンチ再起動ジャンプ、ポンプのための最もセキュリティです。3.デッドゾーン設計偏差がデッドゾーンよりも小さいときに出力を維持し、設定点付近でのポンプの頻繁な起動/停止を回避します。4.DB 2のパラメータKp、積分、上限と下限、デッドゾーンはデータブロック内にあり、HMIは直接変更され、プログラムを動かさずに調整されます。5.シミュレーション全体スケール:NORM_X/SCALE_Xチャネル値をエンジニアリング量に変換し、圧力/周波数を視覚的に表示します。6.デュアル出力予約:%QW80+%QW2002つのアナログ、自然にサポート“1つの2つのバックアップポンプ”拡張。7.構造ミニマルフォーカスOB1 + FB“PID_1”+ DB1/DB 2、冗長ブロックなし、初心者でも一目で理解できます。


PIDを開く、実行する、設定する方法

1.ソフトウェアソフトウェア:TIA Portal V 14以上(このプロジェクトはV 14からV 15にアップグレードされ、V 15/V 16/V 17で開くことができ、自動的に移行されます。2.開けて。プロジェクトを開き、選択します。PID閉ループ演算定圧力給水. ap 14。 3.ハードウェアの確認CPUの選択6ES7 214-1AG40-0XB0(または同シリーズ)、信号板掛けSB1232(6ES7 232-4HA30-0XB0)ハードウェアモデルが異なる場合は、注文番号を変更してから再コンパイルできます。4.配線接続。:圧力トランスミッタ4 ~ 20 mAをCPUオンボードAI0(アドレス% IW64)に接続し、SB1232 AO(% QW80)をインバータアナログ周波数入力に接続します。5.ダウンロードダウンロードハードウェア設定を実行し、OB1 / FB“PID_1”/ DB1 /DB 2を実行し、PLCを実行します。6.PID調整(現場でのスピーチ):

  • 最初に。0 = 0、デッドゾーンが小さいただ投票するだけ。p値の割合小さいものから大きいものまで、“圧力は設定値に近いが激しく振動しない”ものまで。
  • さらに追加。インテグリティ定常偏差を排除する(圧力は常に積分を増加させるために少し行かない);
  • 調整する。PIDデッドゾーン設定点付近での小さなジッタの除去;
  • 最後のセット。PIDの上限 / 下限(例:0 100%)、周波数超過を防止します。

7.拡張遅延2。::ポンプを取る。%QW200メインポンプが50 Hzまで圧力が不十分な場合に2番目のポンプを切断/注入します(スイッチングロジックはOB1リガで簡単に実現できます)。


エンジニアへの2つのアドバイス

  • “ルーチン”という言葉に惑わされないでください。このルーチンのPIDは手書きの増分多くの“PID_Compactをドラッグして完了”プロジェクトよりも学習や変更に適しています。フィードフォワード、ポンプ切り替え、スリープを自分のコードで行いたい。
  • シミュレーションはスケールが必要です。:初心者が最も頻繁に踏むピットは、“読み取りは0 27648が直接圧力に使用されます”“出力は係数インバータが回転しません”です。必ず使用する。NORM_X/SCALE_X仕事の量が多い。
  • 4 ~ 20 mAの断線に注意圧力トランスミッタが切断されると、AIは5530または0に落ち、PIDは“圧力は0”とフル周波数出力を誤って判断します。実用的なプロジェクトを追加断検出+ 故障周波数限/ポンプ停止保護(この簡易ルーチンには含まれていません。オンラインになる前に必ず修正してください。

10.よくある質問FAQ

Q 1:S 7 -1200定圧力給水プログラムはどのソフトウェアで開きますか?A:使うTIA Portal(ポータル)開けて。.ap14プロジェクト(V 14以降、自動的に移行されます)これはTIAプロジェクトであり、STEP 7 V 5.xでは動作しません。

Q 2:定圧給水のPIDはどのように制御されますか?A:圧力トランスミッタは、パイプネットワーク圧力(フィードバック値)を測定し、設定値と比較して誤差を比較します。FB“PID_1”は、インバータ調整ポンプ速度へのアナログ出力を介して、設定値付近の圧力を一定にします。水量変更→自動速度調節。

Q 3:S 7 -1200はどのように圧力トランスミッタ(4 20 mA)に接続しますか?A:トランスミッタはCPUオンボードアナログ入力(このプロジェクト% IW64)に接続され、プログラムで使用されます。NORM_X/SCALE_X5530 27648を工程量圧力例えば0.00 1.00にマッピングする。

Q 4:PID_Compactと手書きPIDはどちらを選ぶべきですか?A:PID_Compactシーメンス独自のプロセスオブジェクト、自己調整、手間を省くことです。手書きのPID(プロジェクトFB“PID_1”など)は、より透明でカスタマイズ可能で、より良い教育です。。学習/二次開発者はPIDを書き、PID_Compactを使用します。

Q 5:ストレスが常に安定していない場合は?A:まず比率p値(大きすぎて振動しやすく、応答が遅すぎる)を調整し、積分ノイズ差を加えて最後に使用します。PIDデッドゾーン設定点付近のジッタを除去し、出力を制限します。

Q 6:ダブルポンプ定圧力給水を変更することができますか?A:できます。2番目のアナログ出力を予約しています。%QW200メインポンプが50 Hzまで圧力不足の場合にポンプを供給すればよく、切り替えロジックはOB1リガで実現されます。


11.結論+リソース

このS 7 -1200定圧力給水PIDプロジェクトのセットは、珍しい、変数すべて中国語、PID手書きの透明なサンプルこれは、インクリメンタルPIDを使用してクローズドループを行い、デッドゾーン+リミットセキュリティを確保し、データブロックストレージパラメータを使用して簡単に調整し、デュアルアナログ出力予約拡張を使用して、コミュニティ/建物/工場の定電圧給水、冷却循環水、定電圧補水エンジニアのための非常に参照価値があります。

* この記事の結論はすべてエンジニアリング文書からのものです(.ap14プロジェクトメタデータ+System/PEData.plf内部データベース)のファイルごとの解析、ハードウェアモデル、ブロック構造、FB“PID_1”インタフェース変数、I/Oアドレスは、外部からの推測なしに直接抽出されます。

この資料を実際のプロジェクトに活用しませんか?

ツールセンターで電文解析、CRCチェック、デバイスデバッグを行うか、要件を送信して選定と接続のアドバイスを受けましょう。

エンジニア会員

この記事を実行可能なデバッグ資料に

登録すると、高度な電文解析、資料パックのダウンロード、コード例、エンジニアリングケース、優先技術サポートが利用可能に。実際のプロジェクト納品に最適です。

高度なツール無制限
資料パックとコードパック
完全なエンジニアリングケースライブラリ
優先技術サポート窓口

发表回复

あなたのメールアドレスアドレス不会被公开。 必須項目已用 * 标注