
摘 要: 隨著科學技術的普及發展,以及計算機應用進入各個領域,使用科學計算軟件已經變成越來越常規的工作。在這樣的背景下,Matlab(主要是基于數值式計算)、MAPLE(主要是基于符號式計算)等科學計算軟件得到了迅猛發展。科學計算軟件的廣闊發展前景以及在未來的普及應用,同樣是不可低估的。在此通過SCILAB軟件對PID控制器參數優化進行仿真分析,看到了SCILAB軟件在PID控制方面的應用具有可行性和可靠性,為今后PID控制領域的分析探索出新的領域。
關鍵詞: SCILAB; PID控制; 參數優化; 科學計算軟件
中圖分類號: 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類似的科學工程計算軟件,其數據類型豐富,可以很方便地實現各種矩陣運算與圖形顯示,能應用于科學計算、數學建模、信號處理、決策優化、線性/非線性控制等各個方面。它還提供可以滿足不同工程與科學需要的工具箱,例如SCICOS,信號處理工具箱,圖與網絡工具箱等。可以說,就基本的功能如科學計算、矩陣處理及圖形顯示而言,Matlab能完成的工作SCILAB都可以實現。
主要介紹論文的背景、相關領域的前人研究歷史與現狀,以及作者的意圖與依據,包括論文的追求目標,研究范圍和理論依據、技術設計等;不應詳述教科書上能找到的基本理論。
1 分析方法
1.1 SCILAB簡介
由于SCILAB的語法與Matlab非常接近,熟悉Matlab編程的人很快就會掌握SCILAB的使用。同時,SCILAB提供的語言轉換函數可以自動將用Matlab語言編寫的程序翻譯為SCILAB語言。目前,SCILAB除了WINDOWS與NT版本外,還有多種UNIX或LINUX下的版本,如SGI MIPS Irix,PC Linux,Sun Sparc stations(Sun Solaris)等。
目前SCILAB已經發布到5.4.1版,全世界使用SCILAB的人數估計有1 000 000。SCILAB也是以矩陣作為主要的數據類型,同時擁有豐富的繪圖功能。SCILAB能處理包括信號處理、數據分析、圖像增強、數值優化、動態系統仿真等方面的問題。網絡上也有不少人為它寫了許多延伸庫、豐富了它的功能。
同Matlab軟件中的Simulink工具箱類似,SCILAB也擁有一個用于混合動態系統建模/仿真的工具箱:Xcos(它代替了SCILAB 5.2之前的Scicos)。用戶可以自己編寫擴展的工具模塊并添加于SCILAB中,或者使用別人已編寫好的擴展模塊。SCILAB提供了一個模塊管理器(ATOMS)統一對擴展模塊進行搜索、安裝和更新。SCILAB的其他一些工具箱:圖像處理(SIP、SIVP)、小波變換(SCILAB Wavelet Toolbox)、串口通信(Serial Communication Toolbox)、圖形和網絡計算(Metanet)、GPU計算(sciGPGPU)、航天動力學分析(CelestLab)等等。
1.2 SCILAB的特點
作為開放源碼的軟件,SCILAB的源代碼、用戶手冊及二進制的可執行文件都是免費的,公布于INRIA的網站上可以直接下載,在網站也可以下載。用戶不僅可以在SCILAB的許可證條件下自由使用該軟件,還可以根據自己需要修改源代碼,使之更加符合自身需要。其主要特點如下:
(1) 目前有大約1 700個用于科學和工程計算的數學函數可以使用;
(2) 能夠實現2維和3維可視化數據圖形輸出;
(3) 對約束/無約束、連續/離散問題的優化問題的應用;
(4) 可以對數據進行分析與建模;
(5) 在控制領域實現對控制系統的分析與設計;
(6) 在信號處理領域的分析應用;
(7) 目前實現了自定義開發擴展功能的API。
1.3 SCILAB軟件國內外應用狀況
SCILAB始源于20世紀80年代在INRIA開發的計算機輔助控制系統設計軟件Blaise,90年代初,Simulog停止分發Basile。Basile更名為SCILAB,1994年1月2日,SCILAB的第一個釋放版本,SCILAB 1.1上傳到一個匿名ftp站點。直到2002年底,SCILAB都是由6人小組與一些外部開發者一道共同開發并發布的。從2003年開始,由新成立的SCILAB協會負責SCILAB軟件的后續開發以及相關技術支持。
SCILAB協會于2005年啟動了基于Java的 SCILAB 5.x 的開發,而之前的部分SCILAB開發小組成員(包括ENPC以及部分INRIA成員)則在之前的 SCILAB 4.x 的基礎上另外發布了基于GTK+的SCILAB版本:ScicosLab(該版本集成了Scicos)。
為了保證SCILAB的長遠發展,在INRIA的支持下,SCILAB事業公司于2010年6月成立。自2012年7月開始,SCILAB事業公司將完全負責對SCILAB后續版本的開發與發布,此外公司也提供關于SCILAB的專業服務與支持。
對這一優秀的自由軟件,國外已有很多人加以關注、討論和贊賞。在國內,2001年1月SCILAB首次放在旨在推廣開放源碼軟件的“共創聯盟網站”上,短短不到一個月內,下載次數已達300多次。著名的Springer出版社于1999年6月出版了一本關于SCILAB的書:《Engineering and Scientific Computing With SCILAB》,介紹了SCILAB的編程語言、函數、各種工具箱及其在控制、優化、圖形、信號處理中的應用實例。字,以反映論文具有的首創性;凡可用圖形、曲線或表格說明的部分,一定不要用累贅的文字描述。避免用圖形和表格重復地反映同一組數據;圖、表、公式應編排在文中第一次提及時;切忌采用教科書式的撰寫方式,對已有知識避免重新描述或論證,盡量采用開列參考文獻的方法;對用到的某些教學輔佐手段,應防止過分注意細節的數學推導。
2 PID控制器的原理
在工程實際中,應用最為廣泛的調節器控制規律為比例、積分、微分控制,簡稱PID控制,又稱PID調節。它以其結構簡單、穩定性好、工作可靠、調整方便而成為工業控制的主要技術之一。當被控對象的結構和參數不能完全掌握,或得不到精確的數學模型時,控制理論的其他技術難以采用時,系統控制器的結構和參數必須依靠經驗和現場調試來確定,這時應用PID控制技術最為方便。即當我們不完全了解一個系統和被控對象,或不能通過有效的測量手段來獲得系統參數時,最適合用PID控制技術。PID控制,實際中也有PI和PD控制。PID控制器就是根據系統的誤差,利用比例、積分、微分計算出控制量進行控制的。
PID是工業生產中最常用的一種控制方式,PID調節儀表也是工業控制中最常用的儀表之一,PID適用于需要進行高精度測量控制的系統,可根據被控對象自動演算出最佳PID控制參數。PID參數自整定控制儀可選擇外給定(或閥位)控制功能。可取代伺服放大器直接驅動執行機構(如閥門等)。PID外給定(或閥位)控制儀可自動跟隨外部給定值(或閥位反饋值)進行控制輸出(模擬量控制輸出或繼電器正轉、反轉控制輸出)。可實現自動/手動無擾動切換。手動切換至自動時,采用逼近法計算,以實現手動/自動的平穩切換。PID外給定(或閥位)控制儀可同時顯示測量信號及閥位反饋信號。
PID控制器的參數整定是控制系統設計的核心內容。它是根據被控過程的特性確定PID控制器的比例系數、積分時間和微分時間的大小。
PID控制器參數整定的方法很多,概括起來有兩大類:一是理論計算整定法,它主要是依據系統的數學模型,經過理論計算確定控制器參數,這種方法所得到的計算數據未必可以直接用,還必須通過工程實際進行調整和修改;二是工程整定方法,它主要依賴工程經驗,直接在控制系統的試驗中進行,且方法簡單、易于掌握,在工程實際中被廣泛采用。
利用該方法進行 PID控制器參數的整定步驟如下:
(1) 首先預選擇一個足夠短的采樣周期讓系統工作;
(2) 僅加入比例控制環節,直到系統對輸入的階躍響應出現臨界振蕩,記下這時的比例放大系數和臨界振蕩周期;
(3) 在一定的控制度下通過公式計算得到PID控制器的參數。
PID參數自整定控制儀可選擇帶有一路模擬量控制輸出(或開關量控制輸出、繼電器和可控硅正轉、反轉控制)及一路模擬量變送輸出,可適用于各種測量控制場合。PID參數自整定控制儀支持多機通信,具有多種標準串行雙向通信功能,可選擇多種通信方式,如RS 232、RS 485、RS 422等,通信波特率300~9 600 b/s 儀表內部參數自由設定。可與各種帶串行輸入輸出的設備(如電腦、可編程控制器、PLC 等)進行通信,構成管理系統。
3 實 驗
現以一簡單PID控制器為例,在Scialb控制臺窗口下:打開兩窗口(組件盤窗口、模型窗口),選擇拖模塊,連線構系統;建立Xcos仿真模型。輸入即激勵;系統輸出即響應;激勵和響應匯入單圖形顯示器顯示,便于對比。系統框圖構建如圖1所示。
圖1 系統框圖
3.1 對話設參數示例
3.1.1 CLR模型對話框
設置傳遞函數的參數如圖2所示。此例中該組件模塊傳遞函數設置為[1(1+0.5s+s2)。]
3.1.2 仿真激勵
參數均設置好后,可直接應用“啟動”工具鈕,便仿真激勵了,此時運行期間“啟動”工具鈕暗,“停止”工具鈕亮,可利用此工具鈕停止仿真過程。當仿真結束了,則“啟動”工具鈕亮,“停止”工具鈕暗。可利用“啟動”工具鈕再次仿真運行。仿真結束,相應響應曲線應出現單圖形顯示器的圖像窗口。
3.1.3 分析響應
如果考慮觀察有關觀察點的坐標,可以右鍵擊出圖形窗口的選擇觀察點坐標方式對話框,如圖3所示。單圖形顯示器顯示了響應曲線,以及選擇的觀察點坐標。還可以在編輯菜單下選擇有關項目欄設置字體、網格、色彩等屬性,也可以在控制臺工作區用xgrid指令給圖像窗口繪制網格。
3.2 結果分析
對系統引入反饋前后仿真結果進行比較,如圖4所示。
圖4(a)的仿真結果是仿真的初始結果,會看到與理想值差別較大,圖4(b)則是進行了多次循環仿真之后的調整仿真結果。
4 結 論
通過循環仿真前后的對比,可以看出PID控制的優越性,同時通過Scilab軟件的仿真運行結果說明,PID控制器在該軟件上的分析是可行的,并且具有一定的可靠性。
參考文獻
[1] 尚宏,陳志敏,任永平.一種新型非線性PID控制器及其參數設計[J].控制理論與應用,2009(4):45?48.
[2] 王一飛,楊公訓.基于SCILAB/SCICOS的控制系統仿真方法研究[J].儀器儀表學報,2004,25(z1):12?16.
[3] 劉志勇.科學計算軟件SCILAB及其編程研究[J].湖南工業職業技術學院學報,2008,8(1):22?25.
[4] 謝援朝.Scilab在經典控制教學中的應用[J].中國電力教育,2009(22):46?48.
[5] 蘇玉鑫.非線性機械系統PID控制漸近穩定性分析[J].自動化學報,2008,34(12):32?36.
[6] 楊世勇.模糊控制與PID控制的對比及其復合控制[J].自動化技術與應用,2011,30(11):41?43.
[7] 劉敏,劉藻珍.基于Matlab的轉臺控制系統仿真[C]//2002系統仿真技術及其應用學術論文集(第4卷).北京:中國自動化學會系統仿真專業委員會,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.