摘 要:文章講述了以PLC為核心的溫度控制系統(tǒng)的設計,通過對S7-200的程序編輯和PID算法原理的運用給出了系統(tǒng)的硬件設計和軟件設計過程,實現(xiàn)了對溫度的閉環(huán)控制。
關鍵詞:PLC;加熱器;溫度控制;PID
引言
PLC以其自有的可靠性高,適應性強等優(yōu)點已經(jīng)被越來越多的應用于生活以及工業(yè)的各個領域,其中S7-200編程軟件STEP7Micro/WIN編程簡單且功能強大。其強大的通信功能以及豐富的CPU模塊,讓設計者可以方便的選取所需功能的CPU和對應的通訊協(xié)議。靈活的控制和強大的指令集使PLC能夠控制各種設備以滿足自動化控制要求。PLC通過模擬量I/O模塊實現(xiàn)A/D和D/A之間的轉換,以便PLC用PID指令實現(xiàn)系統(tǒng)的閉環(huán)控制。
1 系統(tǒng)工作原理及溫度控制的基本思路
本設計是由PLC控制變頻器調速裝置與傳感器、加熱器以及恒溫箱組成閉環(huán)控制系統(tǒng)如圖1所示。通過對溫度值進行PID調節(jié)來進行恒溫控制,由于加熱器不能接收模擬量調節(jié),所以溫控主要采用PLC對其工作的占空比來控制,PID運算結果控制接通加熱器。
溫度傳感器檢測到溫度信息,交由PLC處理,經(jīng)PID運算得到一個0-1的實數(shù),再經(jīng)比例換算為0-100的整數(shù),把這個整數(shù)當作一個0-10s的時間t。設計一個周期為10s的脈沖,脈沖寬度為t,把這個脈沖加給電加熱器達到控制溫度的目的。
系統(tǒng)工作原理如圖1所示。
2 系統(tǒng)的硬件選型及連接
PLC的選型及參數(shù)設定:采用S7-200系列的CPU266,規(guī)格是:供電120-240VAC;CPU輸入:24*24VDC;CPU輸出:16*繼電器。
溫度傳感器:溫度傳感器采用熱電阻作為測溫元件,帶變送器。測量范圍是0-100℃,輸出4-20mA,串接電阻把電流信號轉換成1-5V電壓信號,送入PLC的模擬量輸入通信。
系統(tǒng)的硬件連接:計算機和PLC之間通訊協(xié)議為PPI協(xié)議,用PC/PPI電纜將二者連接;在溫度控制控制部分采用PLC的一個繼電器輸出口串接到加熱回路中。
3 系統(tǒng)軟件設計
溫度控制的軟件設計:整個系統(tǒng)的工作原理是利用熱電阻采集由恒溫箱中的信號然后輸出以模擬量電壓信號,經(jīng)過模擬量輸入通道送入PLC再經(jīng)過PID指令運算由PLC數(shù)字量輸出通道對加熱器的占空比進行控制,以脈沖輸出方式控制加熱器周期性工作,即改變加熱器的通斷時間比來改變加熱速度,從而達到預設值。
溫度控制的基本思路是:PLC以脈沖方式控制其占空比來控制加熱器的工作。先設定好系統(tǒng)的目標溫度值也就是預期的恒溫箱溫度,PLC輸出一個周期的方波,在這個周期里,當實測溫度未達到預設值的1/2時,PLC輸出高電平,加熱器以最大功率工作,當實測溫度達到預設值的1/2卻沒到預設值的4/5時,PLC輸出半個高電平半個低電平,加熱器以最大功率的50%工作,實測溫度超過預設值的4/5卻沒到預設值,PLC輸出1/4個高電平3/4個低電平,加熱以最大功率的25%工作。
4 軟件程序設計
主程序設計,程序如下:
NETWORK 1
LD SM0.1//首次掃描時SM0.1=1
CALL SBR//初始化
NETWORK 2
LD SM0.0//AM0.0總為1
CALL SBR_1//采樣,求平均值
CALL SBR_2//比較,輸出
END //主程序結束
初始化子程序的設計:子程序0實現(xiàn)的是初始化,即對計數(shù)器和存儲區(qū)間清零,以保證采樣值的準確性。本程序中所有除法是簡單的移位除法(用采樣次數(shù)的2的方次),輸入字是12位長,如果采樣次數(shù)大于16(2的4次方),那么和的長度將大于一個字(16位),于是需用雙字(32位)存儲采樣和。
程序如下:
LD SM0.0
MOVW +0,VW0
MOVW +256,VW2
MOVW +0,VD10
MOVW +0,VD14
MOVW +0,VD18
MOVW +0,VD108
MOVW +0,VD118
CRET
采樣子程序的設計
子程序1如下:
LD SM0.0//SM0.0總為1
MOVW AEW2,VW12//在VW12中放置模擬量輸入值
LDW>= VW12,+0//檢查輸入信號
MOVW +0,VW10//把輸入值轉換成雙字
NOT //即VD10=模擬量輸入值(當前采樣值)
MOVW 16#FFFF,VW10
LD SM0.0
+D SM0.0//把當前采樣值加到采樣和中
INCW VW0//采樣計數(shù)器加1
LDW>= VW0,VW2//達到采樣次數(shù)
MOVD VD14,VD18//把采樣和VD14復制到VD18中
ENCO VW2,AC1//計算移位數(shù)
SRD VD18,AC1//求采樣平均值
MOVD +0,VD14//重新初始化
MOVW +0,VW0
CRET//子程序結束
控制子程序的設計:系統(tǒng)通過EM235采樣,從AEW2中取輸入值,為了增加穩(wěn)定性求多次采樣值的平均值,在依據(jù)計算出的平均值與給定值比較,看在哪個取件是對應的數(shù)字輸出工作,驅動加熱器以相應的占空比工作。
溫度變送器的量程為0-100℃,對應轉化為標準信號4-20mA,EM2335取采樣值后,以字的形式將其存儲,12位數(shù)據(jù)對應的精度為1/32000,所以AEW2中的讀數(shù)與溫度存在著下面的函數(shù)關系:
Y=256*X+6400 (1)
其中Y是采樣值在CPU中存儲的十進制形式,X是溫度,單位是℃
子程序2如下:
LD SM0.0
MOVW +16640,VW110//給定值等于40℃
MOVW +11520,VW114//給定值的1/2等于20℃
MOVW +14592,VW118//給定值的4/5等于32℃
NETWORK 2
LDW<=VW 20,VW114//采樣值給定值比較
= Q0.1//采樣值小于給定值的1/2時Q0.1導通,似的加熱器全速工作
NETWORK 3
LDW> VW20,VW114//采樣值大于給定值的1/2小于給定值的4/5時,調用子程序3
AW<= VW20,VW118
CALL SBR_3//加熱器以占空比為1/2工作
NETWORK 4
LDW> VW20,VW114//采樣值大于給定值的4/5小于給定值時,調用子程序4
AW<= VW20,VW110
NETWORK 5
LDW> VW20,VW110//采樣值大于給定值時Q0.0復位
R Q0.1,8//加熱器停止工作
CRET
輸出子程序的設計:為了準確的控制加熱器的占空比,用定時器控制PLC的數(shù)字輸出端Q0.1。設定加熱器的一個周期為10s,實測溫度未達到預設值的一半時,Q0.1輸出高電平,加熱器以最大功率工作,實測溫度超過預設值的1/2未到4/5時Q0.1輸出10s周期的方波,加熱器以最大功率的50%工作,實測溫度超過預設值的4/5卻沒達到設定值時,PLC輸出2.5s高電平7.5s低電平,即加熱器以最大功率的25%工作。子程序3和4實現(xiàn)了Q0.1輸出不同波形。
具體程序如下:
5 結束語
綜上所述可知PLC的靈活性和適應性在工業(yè)控制方面得到很好的應用。很多工業(yè)現(xiàn)場需要達到的要求,用PLC編程總能很精確且可靠的滿足,在對恒溫箱設計的閉環(huán)控制系統(tǒng),經(jīng)過模擬實驗基本達到所需要求。
參考文獻
[1]栗劍,顧戰(zhàn)松.基于PLC的智能溫度控制系統(tǒng)[J].電氣自動化,2003,25(6):16-17.
[2]汪海燕.基于PLC的溫度控制系統(tǒng)[J]. 微計算機信息,2009,25(1):87-88.
[3]祁鯤,厲虹. 基于PLC 的溫度控制仿真試驗平臺設計[J]. 電氣技術,2013,9:30-33.
[4]李月芳. 基于PLC 與組態(tài)王的模擬鍋爐溫度控制系統(tǒng)[J]. 工業(yè)控制計算機,2008,12:18-19.
[5]王春亮,李茜.Fuzzy-smith 控制器在溫度控制中的應用[J].自動化與儀表,2011,26(12):41-43.
作者簡介:郭志偉,男,漢族,研究生,河北大學。