石轉(zhuǎn)轉(zhuǎn),張占東,郭開(kāi)璽,張榕慧,郝佩儒
(山西大同大學(xué) 機(jī)電工程學(xué)院,山西 大同 037003)
在傳統(tǒng)的控制方法中,PID作為一種非常經(jīng)典的控制算法,以其使用簡(jiǎn)單、調(diào)節(jié)方便等優(yōu)勢(shì)在工業(yè)系統(tǒng)應(yīng)用中占據(jù)主導(dǎo)地位,其控制特點(diǎn)是不需要知道系統(tǒng)的模型,僅僅依據(jù)目標(biāo)實(shí)際值與期望的偏差進(jìn)行調(diào)節(jié),但PID算法所計(jì)算出的控制量經(jīng)常會(huì)有超約束的值,因此,使用該方法無(wú)法在控制前期考慮系統(tǒng)的約束[1]。為了克服PID控制算法的這一缺點(diǎn),在20世紀(jì)中后期由Culture等率先提出了一種新型的、基于模型預(yù)測(cè)的控制方法,即MPC。
模型預(yù)測(cè)控制(Model Predict Control,MPC)是一種控制多變量系統(tǒng)的技術(shù)[2],其首先在工業(yè)控制中被大量應(yīng)用,經(jīng)過(guò)近幾年不斷的完善逐漸趨于成熟,隨后在其他領(lǐng)域中也迅速得到應(yīng)用,如汽車、航空航天工業(yè)以及智能電網(wǎng)等[3]。
本文基于模型預(yù)測(cè)控制設(shè)計(jì)一種控制算法來(lái)實(shí)現(xiàn)對(duì)質(zhì)量滑塊的位置追蹤。首先搭建滑塊運(yùn)動(dòng)學(xué)模型,之后基于搭建好的運(yùn)動(dòng)學(xué)方程,利用模型預(yù)測(cè)控制理論對(duì)滑塊整體運(yùn)動(dòng)進(jìn)行分析,最后通過(guò)仿真驗(yàn)證所設(shè)計(jì)控制器的可行性。
模型預(yù)測(cè)控制是一種多輸入多輸出算法,其基本控制原理如圖1所示。在控制過(guò)程中有一條參考軌跡即期望軌跡,定義k時(shí)刻為當(dāng)前時(shí)刻,并測(cè)量出當(dāng)前時(shí)刻的狀態(tài)值和控制量值,通過(guò)預(yù)測(cè)模型,預(yù)測(cè)出系統(tǒng)未來(lái)p個(gè)時(shí)域(預(yù)測(cè)時(shí)域)內(nèi)的輸出;求取p個(gè)時(shí)域內(nèi)的開(kāi)環(huán)優(yōu)化問(wèn)題,得到在k時(shí)刻的優(yōu)化解,但只把優(yōu)化解的第一個(gè)分量作用于系統(tǒng);在下一時(shí)刻k+1,根據(jù)新的測(cè)量狀態(tài)重復(fù)上述過(guò)程,且預(yù)測(cè)時(shí)域滾動(dòng)向前,不斷完成優(yōu)化問(wèn)題,從而實(shí)現(xiàn)對(duì)被控對(duì)象的持續(xù)控制[4]。
本文主要研究的是質(zhì)量滑塊的位置追蹤,是指在無(wú)限光滑的一維水平直線上,令滑塊的質(zhì)量為m,初始位置與初始速度都為0的情況下,設(shè)計(jì)一個(gè)控制器,利用傳感器測(cè)得滑塊位移x,并在此基礎(chǔ)上為滑塊提供外力u,使其能夠跟隨參考點(diǎn)xr。
1-參考軌跡;2-預(yù)測(cè)輸出;3-測(cè)量輸出;4-預(yù)測(cè)控制量;5-已執(zhí)行控制量
在MPC的控制策略下,以滑塊為研究對(duì)象,被控量為外力u,首先建立動(dòng)力學(xué)方程:
(1)
(2)
在上述建好的狀態(tài)方程(2)的基礎(chǔ)上,設(shè)k為當(dāng)前采樣時(shí)刻,k+1為下一采樣時(shí)刻,T為控制周期。利用前向歐拉法可得到離散系統(tǒng)狀態(tài)方程:
(3)
移項(xiàng)得:
農(nóng)村電網(wǎng)的整體結(jié)構(gòu)是供電的基礎(chǔ),對(duì)于這方面,首先要把握好主干網(wǎng)架的建設(shè)情況。然后,要考慮到連線的安全接入方式。要充分以安全為核心,提高整體帶來(lái)的供電能力。同時(shí)要針對(duì)一些突發(fā)的狀況作出合理的防護(hù)措施,比如電桿位置的選擇和電桿深度的考慮。建成之后,以110kV為中心,10kV專業(yè)輔助的整體要基本實(shí)現(xiàn)。
x(k+1)=(I+TA)x(k)+TBu(k).
(4)
其中:I為單位矩陣。
(5)
速度v作為系統(tǒng)輸出,輸出方程可表示為:
(6)
MPC控制理論中,預(yù)測(cè)的基本思路是用當(dāng)前的狀態(tài)和輸入預(yù)測(cè)下一個(gè)狀態(tài)并確定預(yù)測(cè)時(shí)域、控制時(shí)域。即定義k時(shí)刻為當(dāng)前時(shí)刻,預(yù)測(cè)接下來(lái)p個(gè)時(shí)域內(nèi)的狀態(tài),從k時(shí)刻到k+p時(shí)刻[5],并記未來(lái)p個(gè)控制時(shí)域內(nèi)預(yù)測(cè)的系統(tǒng)狀態(tài)為:
Xk=[x(k+1|k)Tx(k+2|k)T…x(k+p|k)T]T.
(7)
式(7)中,(k+1|k)表示根據(jù)k采樣時(shí)刻的信息來(lái)預(yù)測(cè)k+1時(shí)刻的值,以此類推到k+p。當(dāng)要對(duì)動(dòng)態(tài)系統(tǒng)未來(lái)狀態(tài)進(jìn)行預(yù)測(cè)時(shí),還應(yīng)求得整個(gè)預(yù)測(cè)時(shí)域內(nèi)的控制輸入量Uk,即為后續(xù)將要求解的優(yōu)化問(wèn)題的獨(dú)立變量:
Uk=[u(k|k)Tu(k+1|k)T…u(k+p-1|k)T]T.
(8)
接下來(lái)通過(guò)離散化狀態(tài)方程依次對(duì)未來(lái)p個(gè)控制周期的系統(tǒng)狀態(tài)進(jìn)行預(yù)測(cè),可以得到:
(9)
(10)
系統(tǒng)的控制時(shí)域?yàn)閚。想要讓系統(tǒng)關(guān)系愈加明了,則未來(lái)時(shí)刻的輸出可以整合成矩陣的形式表達(dá):
Yk=Ψx(k)+ΘΔUk.
(11)
其中:
通過(guò)式(11)可看出,利用系統(tǒng)當(dāng)前的狀態(tài)量x(k)和控制時(shí)域內(nèi)的控制增量ΔUk可以計(jì)算出預(yù)測(cè)時(shí)域內(nèi)的狀態(tài)量和輸出量,實(shí)現(xiàn)模型預(yù)測(cè)控制算法中的“預(yù)測(cè)”功能。同時(shí)由Θ可知,矩陣為下三角形式,可以得出:k+1時(shí)刻的輸入對(duì)k時(shí)刻的輸出沒(méi)有影響,k+2時(shí)刻的輸入對(duì)k和k+1時(shí)刻沒(méi)有影響。
每個(gè)采樣時(shí)刻的優(yōu)化均可得到一系列控制序列,但只將優(yōu)化解的第一個(gè)元素作用于系統(tǒng),然后在下一采樣時(shí)刻將新得到的測(cè)量狀態(tài)值作為初始條件,重新進(jìn)行優(yōu)化。同時(shí),隨著當(dāng)前時(shí)刻的向前推移,預(yù)測(cè)時(shí)域也在向前滾動(dòng)[6]。
由于外部干擾和模型失配的影響,系統(tǒng)的預(yù)測(cè)輸出和實(shí)際輸出會(huì)存在偏差,若在下一時(shí)刻,根據(jù)測(cè)量到的偏差值在線求解控制輸入U(xiǎn)k,即可優(yōu)化掉這個(gè)偏差值[7]。為了讓實(shí)際輸出軌跡追蹤預(yù)先設(shè)定的參考軌跡,定義預(yù)測(cè)時(shí)域內(nèi)的參考序列:
Rk=[r(k+1)Tr(k+2)T…r(k+p)T]T.
(12)
最佳的控制輸入值實(shí)際是使得圖1當(dāng)中系統(tǒng)參考軌跡曲線與預(yù)測(cè)輸出曲線越接近越好。因此,用預(yù)測(cè)輸出與參考值之間的累計(jì)誤差定義一個(gè)優(yōu)化目標(biāo)函數(shù):
J(Uk)=(Yk-Rk)TQ(Yk-Rk).
(13)
通常不希望控制動(dòng)作變化太大,對(duì)優(yōu)化目標(biāo)函數(shù)再添加一項(xiàng)對(duì)控制量的約束:
(14)
其中:Q和W為權(quán)重矩陣。
因此,該優(yōu)化問(wèn)題可以描述如下:
(15)
令E=Ψy(k)-Rk,再將優(yōu)化函數(shù)J(Uk)展開(kāi)后合并同類項(xiàng)得:
(16)
調(diào)用MATLAB中的QP即二次規(guī)劃求解器quadprog進(jìn)行求解,令:
(17)
(18)
得到最終優(yōu)化目標(biāo)函數(shù):
(19)
為了驗(yàn)證MPC控制器的可行性,利用MATLAB/Simulink搭建仿真平臺(tái),實(shí)現(xiàn)質(zhì)量滑塊的位置追蹤控制。
將方程(1)兩邊同時(shí)進(jìn)行拉普拉斯變換得:
(20)
即可得到傳遞函數(shù):
(21)
在Simulink中搭建仿真環(huán)境,如圖2所示,同時(shí)編寫(xiě)MPC控制器。
圖2 仿真環(huán)境
本文所研究滑塊的質(zhì)量設(shè)定為1.05 g,其中0.05 g為建模誤差。通過(guò)給定不同的預(yù)測(cè)時(shí)域值來(lái)對(duì)滑塊位置追蹤狀況進(jìn)行對(duì)比分析。當(dāng)控制周期為0.01 s時(shí),將預(yù)測(cè)時(shí)域分別設(shè)置為p=20、p=30、p=45、p=53、p=60,在此參數(shù)下的滑塊模型預(yù)測(cè)位置追蹤仿真結(jié)果如圖3所示。由仿真結(jié)果可知,當(dāng)給定的預(yù)測(cè)時(shí)域值越大,系統(tǒng)的狀態(tài)便能夠?qū)ζ谕能壽E進(jìn)行更加平穩(wěn)的追蹤。
圖3 滑塊模型預(yù)測(cè)位置追蹤仿真結(jié)果
本文提出了基于模型預(yù)測(cè)控制的滑塊軌跡追蹤控制方法,以質(zhì)量滑塊為研究對(duì)象,對(duì)其進(jìn)行理論分析,建立運(yùn)動(dòng)學(xué)模型,通過(guò)仿真分析驗(yàn)證了方案的可行性。