本發(fā)明屬于自動(dòng)化技術(shù)領(lǐng)域,涉及一種焦炭爐爐膛壓力的分布式PID型動(dòng)態(tài)矩陣控制方法。
背景技術(shù):
實(shí)際過程中往往存在著大量復(fù)雜高維的大規(guī)模系統(tǒng),其變量和約束的數(shù)目通常有幾十個(gè)甚至上百個(gè)之多,因而針對(duì)這樣一類大規(guī)模預(yù)測(cè)控制的在線實(shí)施問題便顯得尤為重要。分布式動(dòng)態(tài)矩陣控制(DDMC)作為分布式預(yù)測(cè)控制(DMPC)的一個(gè)主要分支,綜合利用網(wǎng)絡(luò)通信技術(shù)和控制理論,把一個(gè)復(fù)雜大規(guī)模系統(tǒng)的在線求解問題分散到各個(gè)子系統(tǒng)中分布實(shí)現(xiàn),有效降低了問題的規(guī)模和復(fù)雜性,能很好的控制存在多變量、強(qiáng)耦合、不確定的被控對(duì)象,改善了系統(tǒng)的控制性能。然而傳統(tǒng)DDMC方法通常在線計(jì)算量較大,采樣周期也不宜過小,從而不能使擾動(dòng)受到快速抑制。因而對(duì)于模型階次,環(huán)境擾動(dòng)、非線性等方面存在不確定性較大的控制系統(tǒng),常規(guī)的DDMC方法通常難以達(dá)到預(yù)期的控制效果。傳統(tǒng)的PID控制由于其控制結(jié)構(gòu)簡(jiǎn)單、操作方便、魯棒性強(qiáng)等優(yōu)點(diǎn),一直被廣泛的應(yīng)用于實(shí)際工業(yè)過程中。如果能夠在實(shí)際過程中將PID控制同DDMC方法相結(jié)合,在保證系統(tǒng)良好控制性能的同時(shí),又提高了控制參數(shù)設(shè)計(jì)的自由度。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明目的是針對(duì)傳統(tǒng)DDMC方法應(yīng)用于模型階次,環(huán)境擾動(dòng)、非線性等方面存在不確定性較大的控制系統(tǒng)的不足之處,提出了一種焦炭爐爐膛壓力的分布式PID型動(dòng)態(tài)矩陣控制方法。該方法將PID控制同常規(guī)的DDMC方法相結(jié)合,彌補(bǔ)了傳統(tǒng)DDMC方法的不足,并保證了良好的控制性能。本發(fā)明方法首先通過采集實(shí)時(shí)階躍響應(yīng)數(shù)據(jù)建立被控對(duì)象的動(dòng)態(tài)矩陣模型向量,再將大規(guī)模系統(tǒng)的在線優(yōu)化實(shí)現(xiàn)問題轉(zhuǎn)化為各個(gè)小規(guī)模子系統(tǒng)的優(yōu)化求解問題,并把網(wǎng)絡(luò)環(huán)境下的每個(gè)子系統(tǒng)看作一個(gè)智能體,同時(shí)各智能體之間通過網(wǎng)絡(luò)通信完成信息交換,以保證系統(tǒng)整體的控制品質(zhì)。然后通過引入PID算子建立一種改進(jìn)的性能指標(biāo),并依據(jù)納什最優(yōu)思想來設(shè)計(jì)各智能體的PID型動(dòng)態(tài)矩陣控制器,再將當(dāng)前時(shí)刻的即時(shí)控制律作用于每個(gè)智能體,并將時(shí)域滾動(dòng)到下一時(shí)刻,重復(fù)上述優(yōu)化過程,從而完成整個(gè)大規(guī)模系統(tǒng)的優(yōu)化任務(wù)。
本發(fā)明的技術(shù)方案是通過數(shù)據(jù)采集、模型建立、預(yù)測(cè)機(jī)理、優(yōu)化等手段,確立了一種焦炭爐爐膛壓力的分布式PID型動(dòng)態(tài)矩陣控制方法,利用該方法能很好的處理系統(tǒng)模型階次,環(huán)境擾動(dòng)、非線性等方面存在不確定性較大的控制問題,并在保證良好控制品質(zhì)的同時(shí),提高控制參數(shù)設(shè)計(jì)的自由度。
本發(fā)明方法的步驟包括:
步驟1.通過焦炭爐爐膛壓力對(duì)象的實(shí)時(shí)階躍響應(yīng)數(shù)據(jù)建立被控對(duì)象動(dòng)態(tài)矩陣控制的階躍響應(yīng)模型向量,具體方法是:
1.1根據(jù)分布式控制的思想,將一個(gè)N輸入N輸出的大規(guī)模系統(tǒng)分散為N個(gè)智能體子系統(tǒng);
1.2在穩(wěn)態(tài)工況下,以第j個(gè)智能體控制量為輸入對(duì)第i個(gè)智能體輸出量進(jìn)行階躍響應(yīng)實(shí)驗(yàn),分別記錄第j(1≤j≤N)個(gè)輸入對(duì)第i(1≤i≤N)個(gè)輸出的階躍響應(yīng)曲線;
1.3將步驟1.2得到的階躍響應(yīng)曲線進(jìn)行濾波處理,然后擬合成一條光滑曲線,記錄光滑曲線上每個(gè)采樣時(shí)刻對(duì)應(yīng)的階躍響應(yīng)數(shù)據(jù),第一個(gè)采樣時(shí)刻為Ts,相鄰兩個(gè)采樣時(shí)刻的間隔時(shí)間為Ts,采樣時(shí)刻順序?yàn)門s、2Ts、3Ts ……;被控對(duì)象的階躍響應(yīng)將在某一個(gè)時(shí)刻tL=LijTs后趨于平穩(wěn),當(dāng)aij(t)(t>Lij)與aij(Lij)的誤差和測(cè)量誤差有相同的數(shù)量級(jí)時(shí),即可認(rèn)為aij(Lij)近似等于階躍響應(yīng)的穩(wěn)態(tài)值。建立第j個(gè)輸入對(duì)第i個(gè)輸出的階躍響應(yīng)模型向量aij:
aij=[aij(1),aij(2),…,aij(Lij)]T
其中T為矩陣的轉(zhuǎn)置符號(hào),aij(k)為t=kTs時(shí)刻第j個(gè)輸入對(duì)第i個(gè)輸出的階躍響應(yīng)采樣值,Lij為第j個(gè)輸入對(duì)第i個(gè)輸出的建模時(shí)域。
步驟2.設(shè)計(jì)第i個(gè)智能體的PID型動(dòng)態(tài)矩陣控制器,具體方法如下:
2.1利用步驟1獲得的模型向量aij建立被控對(duì)象的動(dòng)態(tài)矩陣,其形式如下:
其中Aij為第j個(gè)智能體輸入對(duì)第i個(gè)智能體輸出的P×M階動(dòng)態(tài)矩陣,P為動(dòng)態(tài)矩陣控制算法的優(yōu)化時(shí)域,M為動(dòng)態(tài)矩陣控制算法的控制時(shí)域,且Lij=L(1≤i≤3,1≤j≤3),M<P<L,L為系統(tǒng)的統(tǒng)一建模時(shí)域,N=3為輸入輸出個(gè)數(shù);
2.2獲取第i個(gè)智能體當(dāng)前k時(shí)刻的模型預(yù)測(cè)初始響應(yīng)值yi,0(k)
首先,在k-1時(shí)刻加入控制增量Δu1(k-1),Δu2(k-1),…,Δun(k-1),得到第i個(gè)智能體的模型預(yù)測(cè)值yi,P(k-1):
其中,
yi,P(k-1)=[yi,1(k|k-1),yi,1(k+1|k-1),…,yi,1(k+L-1|k-1)]T
yi,0(k-1)=[yi,0(k|k-1),yi,0(k+1|k-1),…,yi,0(k+L-1|k-1)]T,
Aii,0=[aii(1),aii(2),…,aii(L)]T,Aij,0=[aij(1),aij(2),…,aij(L)]T
yi,1(k|k-1),yi,1(k+1|k-1),…,yi,1(k+L-1|k-1)分別表示第i個(gè)智能體在k-1時(shí)刻對(duì)k,k+1,…,k+L-1時(shí)刻的模型預(yù)測(cè)值,yi,0(k|k-1),yi,0(k+1|k-1),…,yi,0(k+L-1|k-1)表示第i個(gè)智能體k-1時(shí)刻對(duì)k,k+1,…,k+L-1時(shí)刻的初始預(yù)測(cè)值,Aii,0,Aij,0分別為第i個(gè)智能體和第j個(gè)智能體對(duì)第i個(gè)智能體的階躍響應(yīng)數(shù)據(jù)建立的矩陣,Δu1(k-1),Δu2(k-1),…,Δun(k-1)為k-1時(shí)刻各智能體的輸入控制增量;
然后,可以得到k時(shí)刻第i個(gè)智能體的模型預(yù)測(cè)誤差值ei(k):
ei(k)=y(tǒng)i(k)-yi,1(k|k-1)
其中yi(k)表示k時(shí)刻測(cè)得的第i個(gè)智能體的實(shí)際輸出值;
進(jìn)一步得到k時(shí)刻修正后的模型輸出值yi,cor(k):
yi,cor(k)=y(tǒng)i,0(k-1)+h*ei(k)
其中,
yi,cor(k)=[yi,cor(k|k),yi,cor(k+1|k),…,yi,cor(k+L-1|k)]T,h=[1,α,…,α]T
yi,cor(k|k),yi,cor(k+1|k),…,yi,cor(k+L-1|k)分別表示第i個(gè)智能體在k時(shí)刻模型的修正值,h為誤差補(bǔ)償?shù)臋?quán)矩陣,α為誤差校正系數(shù);
最后得到k時(shí)刻第i個(gè)智能體的模型預(yù)測(cè)的初始響應(yīng)值yi,0(k):
yi,0(k)=Syi,cor(k)
其中,S為L(zhǎng)×L階的狀態(tài)轉(zhuǎn)移矩陣,
2.3計(jì)算第i個(gè)智能體在M個(gè)連續(xù)的輸入控制增量Δui(k),Δui(k+1),…,Δui(k+M-1)下的模型預(yù)測(cè)輸出yi,PM,具體方法是:
其中,
yi,PM(k)=[yi,M(k+1|k),yi,M(k+2|k),…,yi,M(k+P|k)]T
yi,P0(k)=[yi,0(k+1|k),yi,0(k+2|k),…,yi,0(k+P|k)]T
Δui,M(k)=[Δui(k),Δui(k+1),…,Δui(k+M-1)]T
Δuj,M(k)=[Δuj(k),Δuj(k+1),…,Δuj(k+M-1)]T
yi,P0(k)是yi,0(k)的前P項(xiàng),yi,0(k+1|k),yi,0(k+2|k),…,yi,0(k+P|k)為第i個(gè)智能體k時(shí)刻對(duì)k+1,k+2,…,k+P時(shí)刻的初始預(yù)測(cè)輸出值;
2.4建立第i個(gè)智能體的性能指標(biāo)Ji(k),形式如下:
wi(k)=[ωi(k+1),ωi(k+2),…,ωi(k+P)]T
ωi(k+ε)=λεyi(k)+(1-λε)c(k)(ε=1,2,…,P)
Δwi(k)=[Δωi(k+1),Δωi(k+2),…,ωi(k+P)]T
Δyi,PM(k)=[Δyi,M(k+1|k),Δyi,M(k+2|k),…,Δyi,M(k+P|k)]T
Δ2wi(k)=[Δ2ωi(k+1),Δ2ωi(k+2),…,Δ2ωi(k+P)]T
Δ2yi,PM(k)=[Δ2yi,M(k+1|k),Δ2yi,M(k+2|k),…,Δ2yi,M(k+P|k)]T
Δωi(k+ε)=ωi(k+ε)-ωi(k+ε-1)
Δyi,M(k+ε|k)=y(tǒng)i,M(k+ε|k)-yi,M(k+ε-1|k)
Δ2ωi(k+ε)=Δωi(k+ε)-Δωi(k+ε-1)
Δ2yi,M(k+ε|k)=Δyi,M(k+ε|k)-Δyi,M(k+ε-1|k)
其中ωi(k+ε)為第i個(gè)智能體給定期望輸出的參考軌跡,yi(k)為k時(shí)刻第i個(gè)智能體的過程實(shí)際輸出,c(k)為k時(shí)刻第i個(gè)智能體的期望輸出,λ為參考軌跡的柔化因子,分別為第i個(gè)智能體的比例系數(shù)矩陣、積分系數(shù)矩陣、微分系數(shù)矩陣;為第i個(gè)智能體的控制加權(quán)系數(shù)矩陣。
2.5將步驟2.4中的性能指標(biāo)變換為如下形式:
進(jìn)一步得到
同理可得
其中
引入矩陣
進(jìn)而有
進(jìn)一步可將性能指標(biāo)轉(zhuǎn)化為
其中,
2.6依據(jù)納什最優(yōu)的思想,以Δui,M(k)為控制變量,由求解最優(yōu)控制律,形式如下:
其中,
2.7由步驟2.2到步驟2.6,可以得到k時(shí)刻第i個(gè)智能體的新一輪迭代最優(yōu)解為:
進(jìn)一步得到整個(gè)系統(tǒng)在k時(shí)刻的最優(yōu)控制律:
其中:
ω(k)=[ω1(k),ω2(k),…,ωn(k)]T,yP0(k)=[y1,P0(k),y2,P0(k),…,yn,P0(k)]T
2.8將第i個(gè)智能體k時(shí)刻的納什最優(yōu)解的首項(xiàng)作為即時(shí)控制增量Δui(k),得到第i個(gè)智能體的實(shí)際控制量ui(k)=ui(k-1)+Δui(k)作用于第i個(gè)智能體;
2.9在下一時(shí)刻,重復(fù)步驟2.2到2.8繼續(xù)求解第i個(gè)智能體的即時(shí)控制增量Δui(k+1),進(jìn)而得到整個(gè)系統(tǒng)的最優(yōu)控制律Δu(k+1),并依次循環(huán)。
本發(fā)明提出了一種焦炭爐爐膛壓力的分布式PID型動(dòng)態(tài)矩陣控制方法。該方法通過采集實(shí)時(shí)階躍響應(yīng)數(shù)據(jù)建立被控對(duì)象的動(dòng)態(tài)矩陣模型向量,并依據(jù)納什優(yōu)化的思想設(shè)計(jì)了一種新型分布式動(dòng)態(tài)矩陣控制器,在保證系統(tǒng)整體控制品質(zhì)的同時(shí),有效彌補(bǔ)了傳統(tǒng)DDMC方法的不足,并提高了控制參數(shù)設(shè)計(jì)的自由度。
具體實(shí)施方式
以焦炭爐爐膛壓力控制為例:
焦炭爐爐膛壓力控制系統(tǒng)是一個(gè)典型的多變量耦合過程,調(diào)節(jié)手段采用控制煙道擋板的閥門開度。
步驟1.通過焦炭爐爐膛壓力對(duì)象的實(shí)時(shí)階躍響應(yīng)數(shù)據(jù)建立被控對(duì)象動(dòng)態(tài)矩陣控制的階躍響應(yīng)模型向量,具體方法是:
1.1根據(jù)分布式控制的思想,將一個(gè)N輸入N輸出的大規(guī)模系統(tǒng)分散為N個(gè)爐膛子系統(tǒng);
1.2在穩(wěn)態(tài)工況下,以第j個(gè)爐膛控制量為輸入對(duì)第i個(gè)爐膛輸出量進(jìn)行階躍響應(yīng)實(shí)驗(yàn),分別記錄第j(1≤j≤N)個(gè)輸入對(duì)第i(1≤i≤N)個(gè)輸出的階躍響應(yīng)曲線;
1.3將步驟1.2得到的階躍響應(yīng)曲線進(jìn)行濾波處理,然后擬合成一條光滑曲線,記錄光滑曲線上每個(gè)采樣時(shí)刻對(duì)應(yīng)的階躍響應(yīng)數(shù)據(jù),第一個(gè)采樣時(shí)刻為Ts,相鄰兩個(gè)采樣時(shí)刻的間隔時(shí)間為Ts,采樣時(shí)刻順序?yàn)門s、2Ts、3Ts ……;被控對(duì)象的階躍響應(yīng)將在某一個(gè)時(shí)刻tL=LijTs后趨于平穩(wěn),當(dāng)aij(t)(t>Lij)與aij(Lij)的誤差和測(cè)量誤差有相同的數(shù)量級(jí)時(shí),即可認(rèn)為aij(Lij)近似等于階躍響應(yīng)的穩(wěn)態(tài)值。建立第j個(gè)輸入對(duì)第i個(gè)輸出的階躍響應(yīng)模型向量aij:
aij=[aij(1),aij(2),…,aij(Lij)]T
其中T為矩陣的轉(zhuǎn)置符號(hào),aij(k)為t=kTs時(shí)刻第j個(gè)輸入對(duì)第i個(gè)輸出的階躍響應(yīng)采樣值,Lij為第j個(gè)輸入對(duì)第i個(gè)輸出的建模時(shí)域。
步驟2.設(shè)計(jì)第i個(gè)爐膛的PID型動(dòng)態(tài)矩陣控制器,具體方法如下:
2.1利用步驟1獲得的模型向量aij建立被控對(duì)象的動(dòng)態(tài)矩陣,其形式如下:
其中Aij為第j個(gè)爐膛輸入對(duì)第i個(gè)爐膛輸出的P×M階動(dòng)態(tài)矩陣,P為動(dòng)態(tài)矩陣控制算法的優(yōu)化時(shí)域,M為動(dòng)態(tài)矩陣控制算法的控制時(shí)域,且Lij=L(1≤i≤3,1≤j≤3),M<P<L,L為系統(tǒng)的統(tǒng)一建模時(shí)域,N=3為輸入輸出個(gè)數(shù);
2.2獲取第i個(gè)爐膛當(dāng)前k時(shí)刻的模型預(yù)測(cè)初始響應(yīng)值yi,0(k)
首先,在k-1時(shí)刻加入控制增量Δu1(k-1),Δu2(k-1),…,Δun(k-1),得到第i個(gè)爐膛的模型預(yù)測(cè)值yi,P(k-1):
其中,
yi,P(k-1)=[yi,1(k|k-1),yi,1(k+1|k-1),…,yi,1(k+L-1|k-1)]T
yi,0(k-1)=[yi,0(k|k-1),yi,0(k+1|k-1),…,yi,0(k+L-1|k-1)]T,
Aii,0=[aii(1),aii(2),…,aii(L)]T,Aij,0=[aij(1),aij(2),…,aij(L)]T
yi,1(k|k-1),yi,1(k+1|k-1),…,yi,1(k+L-1|k-1)分別表示第i個(gè)爐膛在k-1時(shí)刻對(duì)k,k+1,…,k+L-1時(shí)刻的模型預(yù)測(cè)值,yi,0(k|k-1),yi,0(k+1|k-1),…,yi,0(k+L-1|k-1)表示k-1時(shí)刻對(duì)k,k+1,…,k+L-1時(shí)刻的初始預(yù)測(cè)值,Aii,0,Aij,0分別為第i個(gè)爐膛和第j個(gè)爐膛對(duì)第i個(gè)爐膛的階躍響應(yīng)數(shù)據(jù)建立的矩陣,Δu1(k-1),Δu2(k-1),…,Δun(k-1)為k-1時(shí)刻各個(gè)爐膛的閥門開度增量;
然后,可以得到k時(shí)刻第i個(gè)爐膛的模型預(yù)測(cè)誤差值ei(k):
ei(k)=y(tǒng)i(k)-yi,1(k|k-1)
其中yi(k)表示k時(shí)刻測(cè)得的第i個(gè)爐膛的實(shí)際輸出值;
進(jìn)一步得到k時(shí)刻修正后的模型輸出值yi,cor(k):
yi,cor(k)=y(tǒng)i,0(k-1)+h*ei(k)
其中,yi,cor(k)=[yi,cor(k|k),yi,cor(k+1|k),…,yi,cor(k+L-1|k)]T,h=[1,α,…,α]T yi,cor(k|k),yi,cor(k+1|k),…,yi,cor(k+L-1|k)分別表示第i個(gè)爐膛在k時(shí)刻模型的修正值,h為誤差補(bǔ)償?shù)臋?quán)矩陣,α為誤差校正系數(shù);
最后得到k時(shí)刻第i個(gè)爐膛的模型預(yù)測(cè)的初始響應(yīng)值yi,0(k):
yi,0(k)=Syi,cor(k)
其中,S為L(zhǎng)×L階的狀態(tài)轉(zhuǎn)移矩陣,
2.3計(jì)算第i個(gè)爐膛在M個(gè)連續(xù)的閥門開度增量Δui(k),Δui(k+1),…,Δui(k+M-1)下的預(yù)測(cè)輸出值yi,PM,具體方法是:
其中,
yi,PM(k)=[yi,M(k+1|k),yi,M(k+2|k),…,yi,M(k+P|k)]T
yi,P0(k)=[yi,0(k+1|k),yi,0(k+2|k),…,yi,0(k+P|k)]T
Δui,M(k)=[Δui(k),Δui(k+1),…,Δui(k+M-1)]T
Δuj,M(k)=[Δuj(k),Δuj(k+1),…,Δuj(k+M-1)]T
yi,P0(k)是yi,0(k)的前P項(xiàng),yi,0(k+1|k),yi,0(k+2|k),…,yi,0(k+P|k)為第i個(gè)爐膛k時(shí)刻對(duì)k+1,k+2,…,k+P時(shí)刻的初始預(yù)測(cè)輸出值;
2.4建立第i個(gè)爐膛的性能指標(biāo)Ji(k),形式如下:
wi(k)=[ωi(k+1),ωi(k+2),…,ωi(k+P)]T
ωi(k+ε)=λεyi(k)+(1-λε)c(k)(ε=1,2,…,P)
Δwi(k)=[Δωi(k+1),Δωi(k+2),…,ωi(k+P)]T
Δyi,PM(k)=[Δyi,M(k+1|k),Δyi,M(k+2|k),…,Δyi,M(k+P|k)]T
Δ2wi(k)=[Δ2ωi(k+1),Δ2ωi(k+2),…,Δ2ωi(k+P)]T
Δ2yi,PM(k)=[Δ2yi,M(k+1|k),Δ2yi,M(k+2|k),…,Δ2yi,M(k+P|k)]T
Δωi(k+ε)=ωi(k+ε)-ωi(k+ε-1)
Δyi,M(k+ε|k)=y(tǒng)i,M(k+ε|k)-yi,M(k+ε-1|k)
Δ2ωi(k+ε)=Δωi(k+ε)-Δωi(k+ε-1)
Δ2yi,M(k+ε|k)=Δyi,M(k+ε|k)-Δyi,M(k+ε-1|k)
其中ωi(k+ε)為第i個(gè)爐膛給定期望輸出的參考軌跡,yi(k)為k時(shí)刻第i個(gè)爐膛的過程實(shí)際輸出,c(k)為k時(shí)刻第i個(gè)爐膛的期望輸出,λ為參考軌跡的柔化因子,分別為第i個(gè)爐膛的比例系數(shù)矩陣、積分系數(shù)矩陣、微分系數(shù)矩陣;為第i個(gè)爐膛的控制加權(quán)系數(shù)矩陣。
2.5將步驟2.4中的性能指標(biāo)變換為如下形式:
進(jìn)一步得到
同理可得
其中
引入矩陣
進(jìn)而有
進(jìn)一步可將性能指標(biāo)轉(zhuǎn)化為
其中,
2.6依據(jù)納什最優(yōu)的思想,以Δui,M(k)為控制變量,由求解最優(yōu)控制律,形式如下:
其中,
2.7由步驟2.2到步驟2.6,可以得到k時(shí)刻第i個(gè)爐膛的新一輪迭代最優(yōu)解為:
進(jìn)一步得到整個(gè)系統(tǒng)在k時(shí)刻的最優(yōu)控制律:
其中:
ω(k)=[ω1(k),ω2(k),…,ωn(k)]T,yP0(k)=[y1,P0(k),y2,P0(k),…,yn,P0(k)]T
2.8將第i個(gè)爐膛k時(shí)刻的納什最優(yōu)解首項(xiàng)作為即時(shí)控制增量Δui(k),得到第i個(gè)爐膛的實(shí)際控制量ui(k)=ui(k-1)+Δui(k)作用于第i個(gè)爐膛;
2.9在下一時(shí)刻,重復(fù)步驟2.2到2.8繼續(xù)求解第i個(gè)爐膛的即時(shí)控制增量Δui(k+1),進(jìn)而得到整個(gè)系統(tǒng)的最優(yōu)控制律Δu(k+1),并依次循環(huán)。