摘 要:本文基于MATLAB/RTW的功能研究,設計了一種半實物仿真系統(tǒng),系統(tǒng)采用的方法是快速原型設計實現(xiàn)技術,這種技術集軟件開發(fā)、硬件開發(fā)和算法設計與實現(xiàn)這三個階段于一體,提供了一個快速開發(fā)的方法,利用這種方法可開發(fā)和研究工程實踐中的產(chǎn)品(如PID控制器)。具體方法是利用Matlab/Simulink/RTW提供的實時的開發(fā)環(huán)境,使用RTW進行實時仿真和目標代碼生成功能,用戶可以縮短產(chǎn)品開發(fā)周期,降低成本。RTW可以支持基于模型的實時控制及調(diào)試,適用于加速仿真過程和快速原型化,為控制系統(tǒng)開發(fā)提供了一種快速開發(fā)的實用方法。
關鍵詞:MATLAB/SIMULINK/RTW PID控制 半實物仿真 實時控制
引言
現(xiàn)代市場對產(chǎn)品的需求呈現(xiàn)多樣性和快速性的趨勢,對控制系統(tǒng)安全性和可靠性的要求也與日俱增,為了在激烈的市場競爭中取勝,必須不斷地縮短新產(chǎn)品開發(fā)與投入市場的周期,這就出現(xiàn)了企業(yè)新產(chǎn)品面臨著多樣性的需求和快速開發(fā)之間的矛盾。為了設計可靠的控制系統(tǒng),滿足用戶的多樣化需求,縮短項目開發(fā)周期,降低產(chǎn)品開發(fā)費用,需要采用先進的開發(fā)工具來加速設計流程。使用快速原型設計技術來進行控制系統(tǒng)開發(fā)的目的就是為了縮短開發(fā)周期,在行業(yè)競爭中能夠快速開發(fā)新產(chǎn)品,從而獲得最大的經(jīng)濟效益和市場益。
在本文介紹的基于RTW的半實物仿真系統(tǒng)中,RTW是MATLAB圖形建模和仿真環(huán)境Simulink的一個重要的補充功能模塊,它能直接從Simulink的模型中產(chǎn)生優(yōu)化的、可移植的和個性化的代碼,并根據(jù)目標配制自動生成多種環(huán)境下的程序。利用它可加速仿真過程,或生成可在不同的快速原型化實時環(huán)境下的程序。通過使用RTW,我們可以將主要精力集中在系統(tǒng)設計上,從而縮短了為控制器開發(fā)研發(fā)周期,提高了工作效率。基于RTW的半實物仿真如圖1所示。

采用Matlab提供的工具箱建立PID控制模型,當模型實驗完成后,通過RTW直接生成代碼,通過整合、交叉編譯、下載到目標機,宿主機監(jiān)控目標機,按實際要求實時修改參數(shù),開發(fā)出符合實際要求的控制器。
1 系統(tǒng)組成及原理
1.1 硬件組成
計算機是半實物仿真系統(tǒng)的核心,負責各種參數(shù)的實時采集和數(shù)據(jù)處理,并根據(jù)數(shù)據(jù)處理結(jié)果進行決策,產(chǎn)生控制信息,從而控制被控對象的運行狀態(tài)。為了提高系統(tǒng)實時仿真的能力,本研究采用主、目標機結(jié)構,如圖2所示。

宿主機:是帶有以太網(wǎng)卡和通訊端口的臺式計算機,其上安裝Windows操作系統(tǒng),并安裝MATLAB、Simulink、RTW(Real TimeWorkshop)、xPCTarget以及相應的C語言編譯器等軟件。主要用于實現(xiàn)仿真前期準備和仿真過程中的實時交互任務,具體擔負著編譯仿真源程序、啟動仿真運行、在運行過程中提供交互控制等任務。
目標機:當控制系統(tǒng)比較復雜時常采用帶ISA插槽和以太網(wǎng)卡的工控機;當控制系統(tǒng)控制對象單一、簡單且要求不高,為了節(jié)約成本采用單片機;它用于實時運行仿真程序,具體負責執(zhí)行仿真目標程序、通過I/O通道與外部實物進行數(shù)據(jù)交換、實現(xiàn)半實物實時仿真。
主機和目標機通過RS232或TCP/IP協(xié)議進行通信。
外圍設備:是實際的工業(yè)被控對象,在仿真過程中,先在主計算機上用Simulink建立仿真模型,通過RTW的編譯變?yōu)榭蓤?zhí)行代碼,然后通過連接好的網(wǎng)絡下載到目標機上運行。目標機可以通過各種I/O板接入被控對象進行半實物仿真。
1.2 軟件環(huán)境
操作系統(tǒng)為Windows,所用的程序為MATLAB7.0/Real-time Workshop/Real-time Windows Target、相應的C語言編譯器。
1.3 系統(tǒng)原理
基于RTW的半實物仿真的過程如圖3所示:

首先,用Simulink建立模型,然后利用RTW分析模型,并將其轉(zhuǎn)化為C語言對應的代碼;
然后,由相應的C語言編譯器生成代碼之后,再轉(zhuǎn)換為xPC Target平臺下的可執(zhí)行代碼;
最后,生成的可執(zhí)行程序通過網(wǎng)絡傳送到目標機上,主機發(fā)出指令即可運行程序,副計算機同時將仿真過程中的信號傳回到主機。
在實際的工業(yè)控制器開發(fā)中,用Simulink和xPC Target對工業(yè)被控系統(tǒng)進行半實物仿真時,既要通過數(shù)據(jù)采集卡D/A接口將仿真工控機的計算結(jié)果送往被控系統(tǒng),還要通過數(shù)據(jù)采集卡采集信號送到仿真工控機。xPC Target提供了將這些I/O接口接入計算機的各種驅(qū)動程序。避免直接用RTW進行半實物仿真方案時,需用C語言編寫接口程序等工作,簡化半實物仿真的工作量。在建立Simulink仿真模型時,直接將所用到的板卡功能對應的模塊拖入Simulink仿真模型中,并在實際仿真工控機中插入相應板卡,然后編譯模型文件,模型文件中的板卡信息被編譯為可執(zhí)行代碼,下載到目標機并執(zhí)行和I/O板建立了聯(lián)系,將實際的板卡連到仿真回路中,在仿真過程中可從數(shù)據(jù)采集卡輸入輸出數(shù)據(jù),進行半實物仿真。
2 半實物仿真實驗
2.1 首先實現(xiàn)PC對PC的實時代碼生成
通過實現(xiàn)PC對PC的實時代碼生成,驗證用RTW進行半實物仿真是可行、可靠、便捷的。
實驗硬件組成:
宿主機是運行Matlab、Simulink和Real-Timeworkshop的計算機,實時可執(zhí)行代碼的生成以及實時控制參數(shù)調(diào)整就是在宿主機上完成的;
目標機是運用Real-Time Workshop生成的代碼的PC機;
主、目標機是網(wǎng)絡通信。
實現(xiàn)PC對PC實時監(jiān)控的具體步驟:
(1) 建立正弦發(fā)生器Simulink仿真模型:

(2)生成目標代碼:
系統(tǒng)模型通過軟件仿真得到了預期正弦波,接下來就是將模型生成C代碼,便于移植到目標機上運行。
目標代碼生成的過程:
1)打開Simulink設置頁configuration Parameters
2)設置求解器步長為固定步長
3)設置工作方式為外模式
4)點擊Build生成代碼
(3)設置目標PC的IP地址,把宿主機已生成的代碼通過網(wǎng)絡傳到目標PC。
(4)啟動目標PC運行生成代碼,宿主機通過Scope監(jiān)控目標PC。
2.2 宿主機生成代碼在單片機上實現(xiàn)
該實驗目標機為MCS-51(ADUC812)單片機,通過RS232串口線通信。
宿主機生成代碼在單片機上實現(xiàn)的步驟:
(1)將宿主機生成代碼下載到目標及系統(tǒng);
(2)配置端口驅(qū)動:
Simulink的端口驅(qū)動是通過S函數(shù)來實現(xiàn)的。S函數(shù)使用一種特殊的調(diào)用規(guī)則來實現(xiàn)用戶與Simulink的內(nèi)部解法器進行交互。
(3)實時仿真:
目標機接電源,主機通過Scope顯示正弦波,此時主機對目標機實時監(jiān)控。
純軟件仿真圖與目標機的仿真圖:

通過對主機上純軟件仿真圖與目標機的仿真圖比較表明:
(1)主機完成了對目標機代碼的生成,并能夠?qū)ζ溥M行實時監(jiān)控、參數(shù)調(diào)整(通過調(diào)整純比例控制Kp實現(xiàn)),目標機能夠?qū)崟r運行RTW代碼。
(2)用RTW進行半實物仿真是可行、可靠、便捷的。
以上試驗僅是把控制算法(純比例Kp控制)及系統(tǒng)模型轉(zhuǎn)化成C代碼下載到目標機上運行,還沒有連接被控對象。
下面對PID閉環(huán)控制系統(tǒng)進行半實物仿真平臺搭建,把PID控制器與被控對象連接,來深入研究半實物仿真平臺搭建,為實現(xiàn)復雜的工業(yè)PID控制系統(tǒng)開發(fā)提供方法。
2.3 PID閉環(huán)控制系統(tǒng)半實物仿真平臺搭建
該半實物仿真平臺控制器用實物,而受控對象使用計算機建立的數(shù)學模型。
圖7為一實際的PID控制半實物仿真框圖:

此框圖將控制器通過研華PCL-1710A卡和工控機模擬的被控對象連接起來,宿主機通過RS232串口線和控制器連接起來,這讓輸出的信號反饋回宿主機,這形成PID閉環(huán)半實物仿真平臺。
該閉環(huán)系統(tǒng)半實物仿真的方法及步驟是:首先要對系統(tǒng)建立較為精確的數(shù)學模型,依此作為被控對象,和實際的控制電路板組成半實物仿真模型,系統(tǒng)采集的信號通過PCL-1710A的A/D口送入工控機,控制信號由D/A口輸出。在SIMULINK仿真環(huán)境下,利用RTW的實時視窗目標(Real-Time Windows Target),在實驗條件下,較為精確的實時的再現(xiàn)系統(tǒng)的運行結(jié)果,通過對故障和正常等各種情況的比較,對控制參數(shù)實時調(diào)整,最終得到滿意的控制器。
鑒于該系統(tǒng)仿真具體實現(xiàn)與所做的實驗方法一致,本論文就不論述。
結(jié)論
基于RTW的PID算法及半實物仿真研究,整個過程得出以下結(jié)論:
① 實際實驗表明:采用RTW仿真的結(jié)果和實際實時控制實驗結(jié)果基本吻合,這證明RTW仿真模型和控制算法實現(xiàn)是可靠的。
② 相對于VC++等編程語言或組態(tài)軟件開發(fā)整套控制系統(tǒng)的傳統(tǒng)開發(fā)方式而言,基于RTW的快速一體化解決方法,可使系統(tǒng)設計人員把主要精力放在系統(tǒng)設計、模型搭建上,大大節(jié)省了開發(fā)時間,使開發(fā)效率大大提高。
③ 本課題的研究為基于RTW開發(fā)復雜過程控制系統(tǒng)、實時控制過程中測控儀器的開發(fā)提供了參考,具有實際的指導意義。
參考文獻:
[1]王偉,張晶濤,柴天佑.PID參數(shù)先進整定方法綜述.自動化學報,2000.26,(3):347-355.
[2]浙江大學化工自動化教研組.調(diào)節(jié)器的工程整定和校驗.北京:石油化學工業(yè)出版社,1976.
[3]陶永華.新型PID控制及其應用.北京:機械工業(yè)出版社,2002:233-235.
[4]金鑫,譚文,李志軍等.典型工業(yè)過程魯棒PID控制器的整定.(控制理論與應用待刊出).
[5]Astrom K J,Hangglund T,HangCete Automatic tuning and adaptation for PID controllers A survey.Control Engineer—ing Practice,1993,(1):699-714.