摘 要: 隨著科學技術(shù)的普及發(fā)展,以及計算機應用進入各個領(lǐng)域,使用科學計算軟件已經(jīng)變成越來越常規(guī)的工作。在這樣的背景下,Matlab(主要是基于數(shù)值式計算)、MAPLE(主要是基于符號式計算)等科學計算軟件得到了迅猛發(fā)展??茖W計算軟件的廣闊發(fā)展前景以及在未來的普及應用,同樣是不可低估的。在此通過SCILAB軟件對PID控制器參數(shù)優(yōu)化進行仿真分析,看到了SCILAB軟件在PID控制方面的應用具有可行性和可靠性,為今后PID控制領(lǐng)域的分析探索出新的領(lǐng)域。
關(guān)鍵詞: SCILAB; PID控制; 參數(shù)優(yōu)化; 科學計算軟件
中圖分類號: TN710?34 文獻標識碼: A 文章編號: 1004?373X(2015)03?0128?03
Analysis of PID controller based on SCILAB/Xcos
ZHAO Li?na, ZHU zhi?ying
(Dalian Institute of Science and Technology, Dalian 116052, China)
Abstract: With the development of science and technology, as well as computer application in all fields, the use of scientific computing software has become more and more routine work. In this context, the Matlab (mainly based on numerical calculation), MAPLE (mainly based on symbolic calculation) and other scientific calculation software has been rapidly developed. The broad development prospect and future universal application of scientific computing softwares should not be underestimated. A simulation analysis for PID controller parameter optimization is conducted with SCILAB software. It is found that the SCILAB software is feasible and reliable in the field of PID control. Some new areas have been explored for analysis in the field of PID control.
Keywords: SCILAB; PID control; parameter optimization; scientific computing software
0 引 言
SCILAB是一種與Matlab類似的科學工程計算軟件,其數(shù)據(jù)類型豐富,可以很方便地實現(xiàn)各種矩陣運算與圖形顯示,能應用于科學計算、數(shù)學建模、信號處理、決策優(yōu)化、線性/非線性控制等各個方面。它還提供可以滿足不同工程與科學需要的工具箱,例如SCICOS,信號處理工具箱,圖與網(wǎng)絡工具箱等。可以說,就基本的功能如科學計算、矩陣處理及圖形顯示而言,Matlab能完成的工作SCILAB都可以實現(xiàn)。
主要介紹論文的背景、相關(guān)領(lǐng)域的前人研究歷史與現(xiàn)狀,以及作者的意圖與依據(jù),包括論文的追求目標,研究范圍和理論依據(jù)、技術(shù)設(shè)計等;不應詳述教科書上能找到的基本理論。
1 分析方法
1.1 SCILAB簡介
由于SCILAB的語法與Matlab非常接近,熟悉Matlab編程的人很快就會掌握SCILAB的使用。同時,SCILAB提供的語言轉(zhuǎn)換函數(shù)可以自動將用Matlab語言編寫的程序翻譯為SCILAB語言。目前,SCILAB除了WINDOWS與NT版本外,還有多種UNIX或LINUX下的版本,如SGI MIPS Irix,PC Linux,Sun Sparc stations(Sun Solaris)等。
目前SCILAB已經(jīng)發(fā)布到5.4.1版,全世界使用SCILAB的人數(shù)估計有1 000 000。SCILAB也是以矩陣作為主要的數(shù)據(jù)類型,同時擁有豐富的繪圖功能。SCILAB能處理包括信號處理、數(shù)據(jù)分析、圖像增強、數(shù)值優(yōu)化、動態(tài)系統(tǒng)仿真等方面的問題。網(wǎng)絡上也有不少人為它寫了許多延伸庫、豐富了它的功能。
同Matlab軟件中的Simulink工具箱類似,SCILAB也擁有一個用于混合動態(tài)系統(tǒng)建模/仿真的工具箱:Xcos(它代替了SCILAB 5.2之前的Scicos)。用戶可以自己編寫擴展的工具模塊并添加于SCILAB中,或者使用別人已編寫好的擴展模塊。SCILAB提供了一個模塊管理器(ATOMS)統(tǒng)一對擴展模塊進行搜索、安裝和更新。SCILAB的其他一些工具箱:圖像處理(SIP、SIVP)、小波變換(SCILAB Wavelet Toolbox)、串口通信(Serial Communication Toolbox)、圖形和網(wǎng)絡計算(Metanet)、GPU計算(sciGPGPU)、航天動力學分析(CelestLab)等等。
1.2 SCILAB的特點
作為開放源碼的軟件,SCILAB的源代碼、用戶手冊及二進制的可執(zhí)行文件都是免費的,公布于INRIA的網(wǎng)站上可以直接下載,在網(wǎng)站也可以下載。用戶不僅可以在SCILAB的許可證條件下自由使用該軟件,還可以根據(jù)自己需要修改源代碼,使之更加符合自身需要。其主要特點如下:
(1) 目前有大約1 700個用于科學和工程計算的數(shù)學函數(shù)可以使用;
(2) 能夠?qū)崿F(xiàn)2維和3維可視化數(shù)據(jù)圖形輸出;
(3) 對約束/無約束、連續(xù)/離散問題的優(yōu)化問題的應用;
(4) 可以對數(shù)據(jù)進行分析與建模;
(5) 在控制領(lǐng)域?qū)崿F(xiàn)對控制系統(tǒng)的分析與設(shè)計;
(6) 在信號處理領(lǐng)域的分析應用;
(7) 目前實現(xiàn)了自定義開發(fā)擴展功能的API。
1.3 SCILAB軟件國內(nèi)外應用狀況
SCILAB始源于20世紀80年代在INRIA開發(fā)的計算機輔助控制系統(tǒng)設(shè)計軟件Blaise,90年代初,Simulog停止分發(fā)Basile。Basile更名為SCILAB,1994年1月2日,SCILAB的第一個釋放版本,SCILAB 1.1上傳到一個匿名ftp站點。直到2002年底,SCILAB都是由6人小組與一些外部開發(fā)者一道共同開發(fā)并發(fā)布的。從2003年開始,由新成立的SCILAB協(xié)會負責SCILAB軟件的后續(xù)開發(fā)以及相關(guān)技術(shù)支持。
SCILAB協(xié)會于2005年啟動了基于Java的 SCILAB 5.x 的開發(fā),而之前的部分SCILAB開發(fā)小組成員(包括ENPC以及部分INRIA成員)則在之前的 SCILAB 4.x 的基礎(chǔ)上另外發(fā)布了基于GTK+的SCILAB版本:ScicosLab(該版本集成了Scicos)。
為了保證SCILAB的長遠發(fā)展,在INRIA的支持下,SCILAB事業(yè)公司于2010年6月成立。自2012年7月開始,SCILAB事業(yè)公司將完全負責對SCILAB后續(xù)版本的開發(fā)與發(fā)布,此外公司也提供關(guān)于SCILAB的專業(yè)服務與支持。
對這一優(yōu)秀的自由軟件,國外已有很多人加以關(guān)注、討論和贊賞。在國內(nèi),2001年1月SCILAB首次放在旨在推廣開放源碼軟件的“共創(chuàng)聯(lián)盟網(wǎng)站”上,短短不到一個月內(nèi),下載次數(shù)已達300多次。著名的Springer出版社于1999年6月出版了一本關(guān)于SCILAB的書:《Engineering and Scientific Computing With SCILAB》,介紹了SCILAB的編程語言、函數(shù)、各種工具箱及其在控制、優(yōu)化、圖形、信號處理中的應用實例。字,以反映論文具有的首創(chuàng)性;凡可用圖形、曲線或表格說明的部分,一定不要用累贅的文字描述。避免用圖形和表格重復地反映同一組數(shù)據(jù);圖、表、公式應編排在文中第一次提及時;切忌采用教科書式的撰寫方式,對已有知識避免重新描述或論證,盡量采用開列參考文獻的方法;對用到的某些教學輔佐手段,應防止過分注意細節(jié)的數(shù)學推導。
2 PID控制器的原理
在工程實際中,應用最為廣泛的調(diào)節(jié)器控制規(guī)律為比例、積分、微分控制,簡稱PID控制,又稱PID調(diào)節(jié)。它以其結(jié)構(gòu)簡單、穩(wěn)定性好、工作可靠、調(diào)整方便而成為工業(yè)控制的主要技術(shù)之一。當被控對象的結(jié)構(gòu)和參數(shù)不能完全掌握,或得不到精確的數(shù)學模型時,控制理論的其他技術(shù)難以采用時,系統(tǒng)控制器的結(jié)構(gòu)和參數(shù)必須依靠經(jīng)驗和現(xiàn)場調(diào)試來確定,這時應用PID控制技術(shù)最為方便。即當我們不完全了解一個系統(tǒng)和被控對象,或不能通過有效的測量手段來獲得系統(tǒng)參數(shù)時,最適合用PID控制技術(shù)。PID控制,實際中也有PI和PD控制。PID控制器就是根據(jù)系統(tǒng)的誤差,利用比例、積分、微分計算出控制量進行控制的。
PID是工業(yè)生產(chǎn)中最常用的一種控制方式,PID調(diào)節(jié)儀表也是工業(yè)控制中最常用的儀表之一,PID適用于需要進行高精度測量控制的系統(tǒng),可根據(jù)被控對象自動演算出最佳PID控制參數(shù)。PID參數(shù)自整定控制儀可選擇外給定(或閥位)控制功能。可取代伺服放大器直接驅(qū)動執(zhí)行機構(gòu)(如閥門等)。PID外給定(或閥位)控制儀可自動跟隨外部給定值(或閥位反饋值)進行控制輸出(模擬量控制輸出或繼電器正轉(zhuǎn)、反轉(zhuǎn)控制輸出)。可實現(xiàn)自動/手動無擾動切換。手動切換至自動時,采用逼近法計算,以實現(xiàn)手動/自動的平穩(wěn)切換。PID外給定(或閥位)控制儀可同時顯示測量信號及閥位反饋信號。
PID控制器的參數(shù)整定是控制系統(tǒng)設(shè)計的核心內(nèi)容。它是根據(jù)被控過程的特性確定PID控制器的比例系數(shù)、積分時間和微分時間的大小。
PID控制器參數(shù)整定的方法很多,概括起來有兩大類:一是理論計算整定法,它主要是依據(jù)系統(tǒng)的數(shù)學模型,經(jīng)過理論計算確定控制器參數(shù),這種方法所得到的計算數(shù)據(jù)未必可以直接用,還必須通過工程實際進行調(diào)整和修改;二是工程整定方法,它主要依賴工程經(jīng)驗,直接在控制系統(tǒng)的試驗中進行,且方法簡單、易于掌握,在工程實際中被廣泛采用。
利用該方法進行 PID控制器參數(shù)的整定步驟如下:
(1) 首先預選擇一個足夠短的采樣周期讓系統(tǒng)工作;
(2) 僅加入比例控制環(huán)節(jié),直到系統(tǒng)對輸入的階躍響應出現(xiàn)臨界振蕩,記下這時的比例放大系數(shù)和臨界振蕩周期;
(3) 在一定的控制度下通過公式計算得到PID控制器的參數(shù)。
PID參數(shù)自整定控制儀可選擇帶有一路模擬量控制輸出(或開關(guān)量控制輸出、繼電器和可控硅正轉(zhuǎn)、反轉(zhuǎn)控制)及一路模擬量變送輸出,可適用于各種測量控制場合。PID參數(shù)自整定控制儀支持多機通信,具有多種標準串行雙向通信功能,可選擇多種通信方式,如RS 232、RS 485、RS 422等,通信波特率300~9 600 b/s 儀表內(nèi)部參數(shù)自由設(shè)定??膳c各種帶串行輸入輸出的設(shè)備(如電腦、可編程控制器、PLC 等)進行通信,構(gòu)成管理系統(tǒng)。
3 實 驗
現(xiàn)以一簡單PID控制器為例,在Scialb控制臺窗口下:打開兩窗口(組件盤窗口、模型窗口),選擇拖模塊,連線構(gòu)系統(tǒng);建立Xcos仿真模型。輸入即激勵;系統(tǒng)輸出即響應;激勵和響應匯入單圖形顯示器顯示,便于對比。系統(tǒng)框圖構(gòu)建如圖1所示。
圖1 系統(tǒng)框圖
3.1 對話設(shè)參數(shù)示例
3.1.1 CLR模型對話框
設(shè)置傳遞函數(shù)的參數(shù)如圖2所示。此例中該組件模塊傳遞函數(shù)設(shè)置為[1(1+0.5s+s2)。]
3.1.2 仿真激勵
參數(shù)均設(shè)置好后,可直接應用“啟動”工具鈕,便仿真激勵了,此時運行期間“啟動”工具鈕暗,“停止”工具鈕亮,可利用此工具鈕停止仿真過程。當仿真結(jié)束了,則“啟動”工具鈕亮,“停止”工具鈕暗??衫谩皢印惫ぞ哜o再次仿真運行。仿真結(jié)束,相應響應曲線應出現(xiàn)單圖形顯示器的圖像窗口。
3.1.3 分析響應
如果考慮觀察有關(guān)觀察點的坐標,可以右鍵擊出圖形窗口的選擇觀察點坐標方式對話框,如圖3所示。單圖形顯示器顯示了響應曲線,以及選擇的觀察點坐標。還可以在編輯菜單下選擇有關(guān)項目欄設(shè)置字體、網(wǎng)格、色彩等屬性,也可以在控制臺工作區(qū)用xgrid指令給圖像窗口繪制網(wǎng)格。
3.2 結(jié)果分析
對系統(tǒng)引入反饋前后仿真結(jié)果進行比較,如圖4所示。
圖4(a)的仿真結(jié)果是仿真的初始結(jié)果,會看到與理想值差別較大,圖4(b)則是進行了多次循環(huán)仿真之后的調(diào)整仿真結(jié)果。
4 結(jié) 論
通過循環(huán)仿真前后的對比,可以看出PID控制的優(yōu)越性,同時通過Scilab軟件的仿真運行結(jié)果說明,PID控制器在該軟件上的分析是可行的,并且具有一定的可靠性。
參考文獻
[1] 尚宏,陳志敏,任永平.一種新型非線性PID控制器及其參數(shù)設(shè)計[J].控制理論與應用,2009(4):45?48.
[2] 王一飛,楊公訓.基于SCILAB/SCICOS的控制系統(tǒng)仿真方法研究[J].儀器儀表學報,2004,25(z1):12?16.
[3] 劉志勇.科學計算軟件SCILAB及其編程研究[J].湖南工業(yè)職業(yè)技術(shù)學院學報,2008,8(1):22?25.
[4] 謝援朝.Scilab在經(jīng)典控制教學中的應用[J].中國電力教育,2009(22):46?48.
[5] 蘇玉鑫.非線性機械系統(tǒng)PID控制漸近穩(wěn)定性分析[J].自動化學報,2008,34(12):32?36.
[6] 楊世勇.模糊控制與PID控制的對比及其復合控制[J].自動化技術(shù)與應用,2011,30(11):41?43.
[7] 劉敏,劉藻珍.基于Matlab的轉(zhuǎn)臺控制系統(tǒng)仿真[C]//2002系統(tǒng)仿真技術(shù)及其應用學術(shù)論文集(第4卷).北京:中國自動化學會系統(tǒng)仿真專業(yè)委員會,2002:101?106.
[8] JUTAN A. A nonlinear PID controller [J]. Canadian Journal of Chemical Engineering, 1989, 30(3): 11?16.
[9] WANG W, ZHANG Y T, CHAI T Y. A survey of advanced PID parameter tuning methods [J]. Acta Automatica Sinica . 2000, 26(3): 348?355.
[10] GAO Z. Special issue on PID control [J]. IEE Proceedings of D?Control Theory and Applications, 2002,149(1): 12?20.