摘 要:本文以某平整機軋制力系統(tǒng)為實例,通過IBA軟件將現(xiàn)場數(shù)據(jù)讀入MATLAB工作空間,在MATLAB中通過辨識算法對現(xiàn)場數(shù)據(jù)處理獲得軋制力系統(tǒng)傳遞函數(shù),仿真結(jié)果表明,該方法得到的模型可以準確的描述軋制力系統(tǒng)工作特性。
關(guān)鍵詞:MATLAB;壓上系統(tǒng);辨識;IBA
中圖分類號:TP311.11;N945.14
某雙機架平整機是由國內(nèi)自主集成,主要產(chǎn)品為薄帶鋼,為了提高延伸率的控制精度,需要建立較準確的數(shù)學模型?,F(xiàn)數(shù)學模型獲得的方法主要是兩種,一種是通過解析的方法得到,另外一種是通過辨識的方法得到。辨識得到的數(shù)學模型是基于現(xiàn)場數(shù)據(jù),所以較為準確。
為了在平整機調(diào)試過程中,獲得較為準確的數(shù)學模型,所以基于MATLAB開發(fā)一套辨識工具,該工具可以讀入IBA格式數(shù)據(jù),然后通過辨識算法獲得現(xiàn)場的傳遞函數(shù)。
1 離散系統(tǒng)辨識簡介
由于計算機和PLC系統(tǒng)的廣泛應(yīng)用,現(xiàn)場的控制系統(tǒng)多為離散控制系統(tǒng),一般不對連續(xù)系統(tǒng)數(shù)學模型進行直接辨識,而更多地對離散系統(tǒng)模型進行辨識。如果需要系統(tǒng)的連續(xù)模型,則可以通過離散模型的連續(xù)化的方法轉(zhuǎn)換出系統(tǒng)的連續(xù)模型。
現(xiàn)實的系統(tǒng)干差萬別,辨識難度較大??梢允孪燃俣ㄒ环N模型結(jié)構(gòu),然后通過極小化模型與對象之間差異的方法來確定模型的參數(shù)。要先利用結(jié)構(gòu)辨識的方法確定模型結(jié)構(gòu)(如系統(tǒng)階次、純延時等),然后再確定模型的各個參數(shù)。[1]
常用的辨識方法主要有兩種,ARX模型和響應(yīng)曲線擬合。
1.1 ARX模型
MATLAB的系統(tǒng)辨識工具箱中提出了各種各樣的系統(tǒng)辨識函數(shù),其中ARX(自回歸遍歷)模型的辨識可以用arx()函數(shù)加以實現(xiàn)。如果已知輸入信號的列向量u,輸出信號的列向量y,并選定了系統(tǒng)的分子多項式階次m-1,分母多項式階次n及系統(tǒng)純滯后d,則可以通過下面命令辨識出系統(tǒng)的數(shù)學模型。
T=arx([y,u],[m,n,d])
1.2 階躍響應(yīng)曲線擬合
一般過程控制對象模型的階躍響應(yīng)曲線可以用一階或更高階的傳遞函數(shù)近似,還可以用現(xiàn)場的數(shù)據(jù)來辨識這些參數(shù),如一階系統(tǒng)模型對應(yīng)的階躍響應(yīng)解析解可寫成
y(t)=k*(1-e-at)
故可以用最小二乘擬合方法由階躍響應(yīng)數(shù)據(jù)擬合出系統(tǒng)的模型。MATLAB實現(xiàn)如下[2]:
fun=inline('x(1)*(1-exp(-t/x(2)))','x','t');
x=lsqcurvefit(fun,[1 1],t,y);
2 辨識模型階數(shù)的確定
一般而言,低階模型對過程的動態(tài)描述粗糙,而高階模型的描述精確,但另一方面,模型階次的增加會給控制和有關(guān)問題增加復雜性。因此,模型階次必須選擇的恰當。為了較準確的確定系統(tǒng)階數(shù),可以根據(jù)系統(tǒng)Hankel矩陣奇異值來確定系統(tǒng)階數(shù)。
在控制理論里,特征值定義了系統(tǒng)的穩(wěn)定性,Hankel矩陣奇異值定義了系統(tǒng)的每個狀態(tài)的能量值。在確定系統(tǒng)階數(shù)時保留大能量狀態(tài)可以較好地描述系統(tǒng)的工作特性。
該方法的基本內(nèi)容為:采用脈沖響應(yīng)函數(shù)構(gòu)建Hankel矩陣,利用奇異值分解技術(shù)得到矩陣的秩,在求矩陣的秩的時候,我們將奇異值由大到小按降序排列,并將奇異值以最大值歸一化,通過畫出奇異值歸一化曲線,在曲線上找到突降的位置,該處對應(yīng)的奇異值個數(shù)即為模型階次。[3]
給定一個穩(wěn)定的系統(tǒng)G,在MATLAB軟件中可用hankelsv(G)函數(shù)計算Hankel矩陣奇異值。
3 實時數(shù)據(jù)的采集
MATLAB軟件已被控制界廣泛使用,一些公司針對MATLAB開發(fā)了相應(yīng)的軟件包,如德國IBA公司開發(fā)的PDA(Process Data Acquisition)系統(tǒng),是基于PC機對數(shù)據(jù)的采集和分析的系統(tǒng),它由用于信號采集的分布式硬件、用于連接的光纖和其它媒介(如典型的Profibus總線電纜)組成。此外該系統(tǒng)提供在線記錄軟件ibaPDA、離線分析軟件ibaAnalyzer和二次開發(fā)軟件包ibaFiles。ibaPDA軟件用于整個PDA系統(tǒng)的配置管理、數(shù)據(jù)采集控制和數(shù)據(jù)文件的保存。ibaAnalyzer軟件用于保存的數(shù)據(jù)文件的離線分析、數(shù)學計算等。ibaFiles軟件包用于IBA用戶對采集的實時數(shù)據(jù)(.dat文件)進行二次開發(fā),該軟件分為3個版本,免費版、標準版、專業(yè)版,該軟件包是一個動態(tài)鏈接庫DLL文件,該DLL文件MATLAB和C語言都可以調(diào)用。如圖1所示,PDA系統(tǒng)可以通過與PLC系統(tǒng)的通信實時采集PLC中的現(xiàn)場數(shù)據(jù),通過ibaFiles軟件包的接口,MATLAB可以讀取和寫入實時數(shù)據(jù)dat文件,從而將現(xiàn)場數(shù)據(jù)導入MATLAB工作空間中進行分析,這也為系統(tǒng)辨識提供了很大的方便。
4 辨識方法在平整機軋制力系統(tǒng)建模的應(yīng)用
在PLC中編寫發(fā)送程序,將軋制力的給定和反饋數(shù)據(jù)通過Profibus總線實時發(fā)給PDA系統(tǒng),在PDA中配置好相應(yīng)的接收通道??紤]現(xiàn)場設(shè)備的安全性,在平整機軋制力500噸時進行階躍實驗,階躍幅度給定0.15噸,通過PDA系統(tǒng)將采集的實驗數(shù)據(jù)存入硬盤中,獲得數(shù)據(jù)如圖1所示。
圖1 壓上系統(tǒng)的階躍響應(yīng)曲線
通過ibaFiles軟件包提供的讀取接口函數(shù)將階躍響應(yīng)的曲線的X軸和Y軸數(shù)據(jù)導入MATLAB工作空間。
在不確定系統(tǒng)階數(shù)時,可以先用高階模型進行對壓上系統(tǒng)進行辨識,獲得傳遞函數(shù)如下:
對該傳遞函數(shù)進行Hankel矩陣奇異值分析如下:
圖2 Hankel矩陣奇異值
從圖中可以得出一階系統(tǒng)的幅值遠遠大于其它階的幅值,所以可以采用一階模型對壓上系統(tǒng)進行辨識。
采用ARX模型辨識出來的傳遞函數(shù)為:
采用曲線擬合算法辨識出來的傳遞函數(shù)為:
將獲得傳遞函數(shù)的階躍響應(yīng)與壓上系統(tǒng)實際階躍響應(yīng)進行對比:
圖3 辨識模型的階躍響應(yīng)曲線
圖中,點線為壓上系統(tǒng)實際階躍響應(yīng)曲線,虛線為采用ARX方法建模后的階躍響應(yīng)曲線,實線采用曲線擬合法建模后階躍響應(yīng)曲線。
經(jīng)過對比建模后的傳遞函數(shù)與實際系統(tǒng)的階躍響應(yīng)基本一致。
5 結(jié)束語
基于壓上系統(tǒng)的實際階躍響應(yīng)數(shù)據(jù),結(jié)合MATLAB和IBA軟件對平整機軋制力系統(tǒng)進行辨識,并將辨識結(jié)果與現(xiàn)場實際曲線進行對比驗證。結(jié)果表明,該方法獲得系統(tǒng)的數(shù)學模型可以準確的描述軋制力系統(tǒng)工作特性。
參考文獻:
[1]朱丹.基于MATLAB的離散系統(tǒng)辨識與仿真[J].硅谷,2012(15):8-9.
[2]薛定宇.控制系統(tǒng)計算機輔助設(shè)計-MATLAB語言與應(yīng)用(第2版)[M].北京:清華大學出版社,2006.
[3]林裕裕.基于輸出的海洋平臺結(jié)構(gòu)模態(tài)參數(shù)識別技術(shù)研究[D].中國海洋大學,2011.
作者簡介:李輝(1979-),男,江西人,本科,工程師,主要從事冷軋設(shè)備管理和技術(shù)工作。
作者單位:寶鋼股份公司 冷軋薄板廠,上海 200431