S7-300實現PID控制——何為“單閉環控制系統”

上古年間,駝子曾有計劃寫一系列文章,總結一下“PID控制”。無奈事情太多,只發布了一篇( ),然後就太監了。恰好最近又接觸到這方面的工作,決定再重拾起來,希望這次能堅持更新完整。


【前言:PLC單閉環控制系統】

如圖1所示,是典型的PLC單閉環控制系統(綠框中的部分是在PLC中實現的)。

S7-300實現PID控制——何為“單閉環控制系統”

圖1 PLC單閉環控制系統

其中:

  • Sp(n)是給定值
  • Pv(n)是A/D轉換後的反饋值
  • Ev(n)為誤差,即ev(n)=sp(n)-pv(n)
  • c(t)為被控量,是連續變化的模擬量,如壓力、溫度、流量、速度等;
  • pv(t)為反饋量,它是標準量程的直流電流信號(如4-20mA)或直流電壓信號(如0-10V),它是被控量c(t)經由測量元件(包括傳感器和變送器)轉換而來的;
  • Mv(n)是控制器計算出的控制量,其經過D/A轉換後,變為mv(t),驅動執行機構動作,使得被控對象趨向於控制目標。

一、實例:爐溫閉環控制

  • 用熱電偶檢測實時爐溫,並將其轉化為標準的電壓信號pv(t):1-5V;
  • 反饋信號pv(t)由模擬量輸入模塊輸入,並經過A/D轉換(模-數轉換),得到與反饋溫度成比例的數字量pv(n);
  • CPU將其與設定值sp(n)比較,得到誤差ev(n)=sp(n)-pv(n);
  • 控制器(PID)根據ev(n)計算出控制量mv(n),經過D/A轉換(數-模轉換)得到標準電流信號mv(t):4-20mA;
  • 執行機構為比例閥,mv(t)控制比例閥的開度,控制燃氣的流量大小,從而實現爐溫的閉環控制。

控制器選擇為"PID控制",基本的控制邏輯是:

當爐溫c(t)低於設定值時,反饋量pv(n)小於給定值sp(n),誤差ev(n)為正,控制器的輸出量mv(t)將增大,使比例閥開度增大,燃氣流量增加,使爐溫升高,最終使實際溫度趨近給定值;

當爐溫c(t)高於設定值時,反饋量pv(n)大於給定值sp(n),誤差ev(n)為負,控制器的輸出量mv(t)將減小,使比例閥開度減小,燃氣流量減少,使爐溫降低,最終使實際溫度趨近給定值。


二、通過S7-300/400實現模擬量閉環控制

S7系列的PLC為用戶提供了多種模擬量閉環控制的方法。

1、閉環控制模塊

S7-300的FM355和S7-400的FM455是西門子提供了智能化4路、16路通用閉環控制模塊,用於化工和過程控制,模塊上帶有A/D和D/A轉換器。

2、用於閉環控制的系統功能塊

S7-300/400還提供了系統功能塊SFB41-SFB43來實現閉環控制。

  • SFB41:"CONT_C",用於連續控制
  • SFB42
    :"CONT_S",用於步進控制
  • SFB43:"PULSEGEN",用於脈衝寬度調製

3、標準PID控制軟件包

標準PID控制(Standard PID Control)軟件包提供了5個用於閉環控制的功能塊,FB41-FB43、FB58及FB59,如圖2所示。

S7-300實現PID控制——何為“單閉環控制系統”

圖2 標準PID控制軟件包

其中:

  • FB41-FB43與SFB41-SFB43兼容
  • FB58、FB59用於PID溫度控制

三、標準PID控制功能塊的使用

可以調用系統功能塊SFB41-SFB43來實現閉環控制,如果安裝了標準PID控制軟件包的話,也可以選擇該軟件包中的功能塊FB41-B43、FB58及FB59來實現PID閉環控制。

應在啟動時執行的組織塊OB100或在循環中斷(如OB35)中調用FB41-FB43。PID的採樣週期應設置為與OB35的循環時間間隔一致。

S7-300實現PID控制——何為“單閉環控制系統”

圖3 PID控制器採樣時間

下一篇文章開始,圍繞實例“爐溫閉環控制”,深入探討一下“PID控制”


分享到:


相關文章: