3 溫度PID控制的實(shí)現(xiàn)
對(duì)于模擬量信號(hào)的控制PID(比例+積分+微分)算法控制。S7-200系列PLC有專(zhuān)門(mén)的PID回路指令,對(duì)模擬量進(jìn)行PID控制十分方便。PID指令使用的算法:(nSP為第n個(gè)采樣時(shí)刻的給定值,n為過(guò)程變量值,MX為積分項(xiàng)值)
PID指令根據(jù)表格(TBL)中的輸入和配置信息對(duì)引用LOOP執(zhí)行PID循環(huán)計(jì)算。在執(zhí)行PID指令前,要建立一個(gè)參數(shù)表,一般要對(duì)表1中的參數(shù)進(jìn)行初始化處理。
在實(shí)際控制過(guò)程中,無(wú)論是給定量還是過(guò)程量都是工程實(shí)際值,它們的取值范圍都是不相同的。因此在進(jìn)行PID運(yùn)算前,必須將工程實(shí)際值標(biāo)準(zhǔn)化。PLC在對(duì)模擬量進(jìn)行PID運(yùn)算后,對(duì)輸出產(chǎn)生的控制作用是在[0.0,1]范圍的標(biāo)準(zhǔn)值,不能驅(qū)動(dòng)實(shí)際的驅(qū)動(dòng)裝置,必須將其轉(zhuǎn)換成工程實(shí)際值。
由于電加熱爐具有較大的延時(shí)性,所以采輸出值,0.0~1.012Kc數(shù)正數(shù)雙字,實(shí)數(shù)I回路增益,正、負(fù)常數(shù)16TsI采樣時(shí)間,單位為s,正20TiI積分時(shí)間常數(shù),單位為min,24TdI微分時(shí)間常數(shù),單位為min,正數(shù)式控制。大致采用三段控制:第一段,開(kāi)始階段置電源為滿開(kāi)度,以最大的功率輸出克服熱慣性;第二段,等到溫度達(dá)到一定值轉(zhuǎn)為PID控制;第三段,接近設(shè)定點(diǎn)時(shí)置電源開(kāi)度為0,提供一個(gè)保溫階段,以適應(yīng)溫度的滯后溫升。程序流程圖如圖3所示,圖中X,Y根據(jù)實(shí)際設(shè)定。
PID參數(shù)的調(diào)節(jié)是很重要的,調(diào)節(jié)方法有很多,概括起來(lái)有兩大類(lèi):一是理論計(jì)算整定法.它主要是依據(jù)系統(tǒng)的數(shù)學(xué)模型,經(jīng)過(guò)理論計(jì)算確定控制器參數(shù)。二是工程整定方法,它主要依賴(lài)工程經(jīng)驗(yàn),直接在控制系統(tǒng)的試驗(yàn)中進(jìn)行,且方法簡(jiǎn)單、易于掌握。在工程實(shí)際中,控制系統(tǒng)難以建立起精確的數(shù)學(xué)模型,所以一般采用工程整定法。PID參數(shù)的工程整定法主要有臨界比例法、反應(yīng)曲線法和衰減法。在這里選用臨界比例度法,整定步驟如下:(1)首先預(yù)選擇一個(gè)足夠短的采樣周期讓系統(tǒng)工作;(2)僅加入比例控制環(huán)節(jié),直到系統(tǒng)對(duì)輸入的階躍響應(yīng)出現(xiàn)臨界振蕩,記下這時(shí)的比例放大系數(shù)和臨界振蕩周期;(3)在一定的控制度下通過(guò)公式計(jì)算得到PID控制器的參數(shù)。
4 PLC與計(jì)算機(jī)通訊的設(shè)計(jì)
由于VB具有強(qiáng)大的圖形處理功能,界面可視化性強(qiáng),而且操作簡(jiǎn)單,容易實(shí)現(xiàn),故采用VB來(lái)實(shí)現(xiàn)上位機(jī)和下位機(jī)的通信.其下位急是S7-200系列PLC,上位機(jī)是通過(guò)RS-232串行口與PLC相連的計(jì)算機(jī)。
#p#分頁(yè)標(biāo)題#e# 4.1PLC程序部分
S7-200支持多種通訊模式,其中在自由口通訊方式下,用戶可以利用梯形圖程序中的接收完成中斷、發(fā)送完成中斷、發(fā)送指令和接收指令完成S7-200系列PLC與上位機(jī)的通訊。
PLC的CPU處于STOP模式時(shí),自由口通訊被禁止,只有當(dāng)CPU處于RUN模式時(shí),才可使用自由口通訊。SMB30(這里選擇端口0)是自由口模式控制字節(jié),用來(lái)設(shè)定校驗(yàn)方式、通訊協(xié)議、波特率等通訊參數(shù)。發(fā)送指令XMT啟動(dòng)自由端口模式下數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)發(fā)送,它可以方便地發(fā)送1~255個(gè)字符,如果有中斷程序連接到發(fā)送結(jié)束事件上,在發(fā)送完成后,端口0會(huì)產(chǎn)生中斷事件9,也可以監(jiān)視發(fā)送完成狀態(tài)位SM45的變化。接收指令RCV可以初始化接收信息服務(wù),通過(guò)指定的通訊端口接收信息并存儲(chǔ)在數(shù)據(jù)緩沖區(qū)內(nèi)。在接收完最后一個(gè)字符時(shí),端口0產(chǎn)生中斷事件23.PLC初始化程序如下:
4.2上位機(jī)程序部分
VB帶有專(zhuān)門(mén)管理串行通訊的MSComm控件,利用它只需設(shè)置幾個(gè)主要參數(shù)就可以實(shí)現(xiàn)PLC與計(jì)算機(jī)串行通訊。計(jì)算機(jī)采用VB編程,主要有監(jiān)控界面、當(dāng)前溫度顯示、動(dòng)態(tài)溫度曲線顯示、參數(shù)設(shè)置以及與PLC通信等方面的設(shè)計(jì)。通信參數(shù)設(shè)置程序如下:
MSComm1.CommPort=1//設(shè)置通訊口為COM1
MSComm1.Settings=“9600,n,8,1”//波特率9600bps,無(wú)奇偶校驗(yàn),8位數(shù)據(jù),1位停止
MSComm1.InputLen=8//一次讀取8個(gè)字節(jié)
MSComm1.PortOpen=True//打開(kāi)通信端口。計(jì)算機(jī)端的VB程序利用MSComm控件與S7-200交換數(shù)據(jù),通過(guò)自由口通訊程序從現(xiàn)場(chǎng)采集溫度信號(hào)。并且上位機(jī)程序可以設(shè)定初始溫度和PID參數(shù)、顯示動(dòng)態(tài)溫度曲線。程序運(yùn)行界面如圖4所示。
5 結(jié)束語(yǔ)
本文介紹了基于S7-200系列PLC的智能溫度控制器系統(tǒng)。闡述了溫度控制的實(shí)現(xiàn)方法。介紹了VB環(huán)境下實(shí)現(xiàn)上位機(jī)和PLC溫度監(jiān)控系統(tǒng)的串行通信的技術(shù)。經(jīng)過(guò)現(xiàn)場(chǎng)調(diào)試表明,本系統(tǒng)具有可靠性高,監(jiān)控方便等優(yōu)點(diǎn)。由于PLC在工業(yè)領(lǐng)域使用的普遍性,該系統(tǒng)有很大的使用范圍。
轉(zhuǎn)載請(qǐng)注明出處。