王冠(中國(guó)石油天然氣股份有限公司管道公司長(zhǎng)沙輸油氣分公司,湖南長(zhǎng)沙 410013)
?
PID控制器參數(shù)整定軟件開發(fā)與實(shí)現(xiàn)
王冠
(中國(guó)石油天然氣股份有限公司管道公司長(zhǎng)沙輸油氣分公司,湖南長(zhǎng)沙 410013)
【摘 要】PID控制在工業(yè)過程控制中有著最廣泛的應(yīng)用。PID參數(shù)的整定影響控制質(zhì)量,更多的是影響工廠的經(jīng)濟(jì)效益。現(xiàn)代工業(yè)控制系統(tǒng)中存在著名目繁多的不確定性,這就要求PID 控制器具有良好參數(shù)。為了得到較好的PID控制器參數(shù),充分滿足對(duì)系統(tǒng)性能的要求,筆者特設(shè)計(jì)出一種PID控制器參數(shù)整定的軟件,既可以快速的整定參數(shù),又可以滿足不同情況下的需求。
【關(guān)鍵詞】PID控制 參數(shù)整定 參數(shù)整定軟件
在過程控制中,控制系統(tǒng)往往各有不同。然而,無論控制系統(tǒng)的相同與否,其控制的最終目的都是要滿足對(duì)系統(tǒng)穩(wěn)定性,準(zhǔn)確性以及快速性的要求。為了達(dá)到上述目的,人們對(duì)控制器、調(diào)節(jié)器等進(jìn)行了深入的研究。
本文主要介紹一種PID控制器參數(shù)整定軟件的開發(fā)及其應(yīng)用,從軟件開發(fā)的背景、軟件開發(fā)工具的選擇,軟件功能實(shí)現(xiàn)的方法以及軟件界面的設(shè)計(jì)等多方面多角度的對(duì)其進(jìn)行介紹。該軟件根據(jù)對(duì)過程模型的了解情況分別設(shè)有基于模型的參數(shù)整定,基于輸出數(shù)據(jù)的參數(shù)整定以及針對(duì)有豐富工作經(jīng)驗(yàn)的工作人員設(shè)有經(jīng)驗(yàn)整定功能。
在PID控制器參數(shù)整定的軟件中,不僅要有友好的人-機(jī)交互界面,更因其常常要對(duì)大量的數(shù)據(jù)信息進(jìn)行處理,以及對(duì)整定結(jié)果進(jìn)行實(shí)時(shí)、直觀的圖形化顯示等原因,要求開發(fā)工具既要有利于用戶界面的開發(fā),又要有利于大量數(shù)據(jù)快速、準(zhǔn)確的處理[1]。在科技發(fā)展日新月異的今天,編程語言也日趨多樣性,例如大家所熟知的C、C++、Fortran、Visual Basic(VB)、Matlab等,而其中VB在界面的設(shè)計(jì)具有其獨(dú)到之處,與此同時(shí)Matlab在數(shù)據(jù)處理方面更是許多編程語言所不能及的,若能將這兩種語言相互結(jié)合,則既可以實(shí)現(xiàn)友好的人-機(jī)交互界面又具有強(qiáng)大的數(shù)據(jù)處理功能。
好的軟件需要有好的界面,更需要有很好的核心內(nèi)容,這樣才不至于“虛而不實(shí)”,因此對(duì)于一個(gè)標(biāo)準(zhǔn)的PID控制器參數(shù)整定軟件來說其控制算法無疑是這個(gè)軟件的核心部分,只有選擇了合適的PID參數(shù)整定算法,才能得出比較優(yōu)秀的PID控制器參數(shù),才能達(dá)到理想的控制效果。
軟件在算法的實(shí)現(xiàn)方面,采用VB與Matlab混合編程,將VB的友好界面與Matlab強(qiáng)大的運(yùn)算功能相結(jié)合,當(dāng)用戶在界面中輸入想要實(shí)現(xiàn)操作的命令,后臺(tái)將自動(dòng)運(yùn)行Matlab,實(shí)現(xiàn)對(duì)PID控制器參數(shù)的整定,與此同時(shí)將整定結(jié)果第一時(shí)間反應(yīng)到界面上,使用戶可以很直觀的看到軟件整定的結(jié)果。ActiveX技術(shù)的運(yùn)用為軟件功能的實(shí)現(xiàn)做了很好的鋪墊。在Visual Basic中,只需要兩句命令:
Dim Matlab As Object
Set Matlab=CreateObject"Matlab.applicetion"
即已完成Visual Basic與Matlab混合編程的一大部分工作。
本軟件界面設(shè)計(jì)充分利用Visual Basic編程語言中的優(yōu)點(diǎn),控件直觀、可視化效果良好,事件觸發(fā)信息明確,編程實(shí)現(xiàn)較為簡(jiǎn)單,易于編譯調(diào)試等優(yōu)點(diǎn)[2]。由于軟件要實(shí)現(xiàn)的功能較多,且其中各有不同,故建立多個(gè)form窗體,不同窗體實(shí)現(xiàn)不同功能,而不同的窗體,在軟件的主界面中均有快捷鍵,用戶在進(jìn)入軟件后,只需點(diǎn)擊所要實(shí)現(xiàn)的功能,即可進(jìn)入相應(yīng)的界面,操作起來既簡(jiǎn)單又方便。例如,當(dāng)點(diǎn)擊Command1時(shí),只顯示窗體1,則其實(shí)現(xiàn)命令如下:
Form1.Visible=True
Form2.Visible=False
Form3.Visible=False
只需簡(jiǎn)單的幾行命令就可以實(shí)現(xiàn)不同界面切換自如的功能。
本軟件可以實(shí)現(xiàn)多種方法對(duì)PID控制器參數(shù)整定,用戶可根據(jù)具體需要來選擇參數(shù)整定的算法。其中包括Z-N法,內(nèi)??刂品?直接綜合法,粒子群優(yōu)化算法以及VRFT算法[3]。另外用戶也可以根據(jù)實(shí)際系統(tǒng)中被控對(duì)象模型的已知情況選擇基于模型的PID控制器參數(shù)整定算法或者基于控制系統(tǒng)輸出數(shù)據(jù)的PID控制器參數(shù)整定算法。與此同時(shí),本軟件還設(shè)有經(jīng)驗(yàn)整定功能,即用戶可以根據(jù)多年的經(jīng)驗(yàn)來完成對(duì)PID控制器的參數(shù)整定。
我們可以通過ActiveX技術(shù)實(shí)現(xiàn)VB對(duì)Matlab的調(diào)用,實(shí)現(xiàn)了對(duì)PID參數(shù)快速整定,并將其分別以圖形,數(shù)據(jù)等形式直觀的顯示在界面上。
最后,在軟件基本功能得以充分實(shí)現(xiàn)的情況下,對(duì)軟件界面進(jìn)行友好化,根據(jù)軟件界面的設(shè)計(jì)原則,對(duì)軟件界面進(jìn)行設(shè)計(jì),從而制作出友好的人-機(jī)交互界面。
參考文獻(xiàn):
[1]王雅靜,李田澤,竇震海.VB調(diào)用Matlab的編程技術(shù)與干涉圖像處理系統(tǒng)[J]嵌入式軟件應(yīng)用,2007,23(09-2):105-106.
[2]彭道剛,楊平,金光遠(yuǎn).基于VB和Matlab的“自動(dòng)控制原理”CAI軟件設(shè)計(jì)[J].上海電力學(xué)院學(xué)報(bào),2006,22(2):13-24.
[3]景微娜,左信.幾種PID控制器設(shè)計(jì)方法的比較[J].計(jì)算機(jī)仿真, 2008,25(1):27-34.