上古年間,駝子曾有計劃寫一系列文章,總結一下“PID控制”。無奈事情太多,只發布了一篇( ),然後就太監了。恰好最近又接觸到這方面的工作,決定再重拾起來,希望這次能堅持更新完整。
【前言:PLC單閉環控制系統】
如圖1所示,是典型的PLC單閉環控制系統(綠框中的部分是在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所示。
其中:
- FB41-FB43與SFB41-SFB43兼容
- FB58、FB59用於PID溫度控制
三、標準PID控制功能塊的使用
可以調用系統功能塊SFB41-SFB43來實現閉環控制,如果安裝了標準PID控制軟件包的話,也可以選擇該軟件包中的功能塊FB41-B43、FB58及FB59來實現PID閉環控制。
應在啟動時執行的組織塊OB100或在循環中斷(如OB35)中調用FB41-FB43。PID的採樣週期應設置為與OB35的循環時間間隔一致。
下一篇文章開始,圍繞實例“爐溫閉環控制”,深入探討一下“PID控制”。
閱讀更多 塞北名駝 的文章