賴紹禹 陳 博 俞 立
(1.浙江工業(yè)大學(xué)信息工程學(xué)院,浙江杭州 310023;2.浙江工業(yè)大學(xué)網(wǎng)絡(luò)空間安全研究院,浙江杭州 310023)
近年來,以5G為代表的通信技術(shù)的快速發(fā)展極大地改變了傳統(tǒng)控制系統(tǒng)的面貌.通過使用專用或公共網(wǎng)絡(luò)進(jìn)行控制系統(tǒng)各個(gè)模塊之間的通信,使得控制技術(shù)與通信技術(shù)發(fā)生了深度的融合[1].與此同時(shí),網(wǎng)絡(luò)化控制系統(tǒng)(networked control systems,NCSs)、信息物理系統(tǒng)(cyber-physical systems,CPSs)等概念也應(yīng)運(yùn)而生.本質(zhì)上講,無論是NCSs還是CPSs,其都是控制系統(tǒng)在融合新一代的通信、感知、計(jì)算等技術(shù)后升級(jí)換代的產(chǎn)物[2-4].隨著網(wǎng)絡(luò)通信技術(shù)在控制系統(tǒng)中的大量運(yùn)用,網(wǎng)絡(luò)化在給控制系統(tǒng)的部署、維護(hù)以及擴(kuò)展帶來了極大靈活性的同時(shí)也使控制系統(tǒng)暴露在了網(wǎng)絡(luò)攻擊的威脅之下.近年來,頻繁發(fā)生的關(guān)于工業(yè)控制系統(tǒng)的安全事件也充分暴露了控制系統(tǒng)在網(wǎng)絡(luò)環(huán)境下的巨大安全隱患.2010年,伊朗位于納坦茲的鈾濃縮工廠遭受了蠕蟲病毒Stuxnet的攻擊,并導(dǎo)致了近千臺(tái)離心機(jī)損毀,同時(shí)Stuxnet病毒也攻擊了Bushehr核電站,最終Bushehr核電站被迫關(guān)閉、伊朗核計(jì)劃也被迫推遲[5].2012年,“火焰”病毒席卷中東地區(qū),對(duì)石油工業(yè)控制系統(tǒng)的安全運(yùn)行造成了重大影響[6].2015年,專門針對(duì)電力系統(tǒng)的Black-Energy3病毒攻擊了烏克蘭的電力部門,導(dǎo)致7座110 kV和23座35 kV變電站長達(dá)3個(gè)小時(shí)的斷電,22萬人的電力供應(yīng)受到影響[7].由此可見,控制系統(tǒng)在網(wǎng)絡(luò)環(huán)境下面臨的安全威脅十分嚴(yán)峻,特別是關(guān)系到國民經(jīng)濟(jì)的重要工業(yè)控制系統(tǒng),一旦其受到攻擊,隨之而來的人力、物力以及經(jīng)濟(jì)損失將可能是不可估量的[8].因此,研究網(wǎng)絡(luò)攻擊下控制系統(tǒng)的安全問題具有重要的現(xiàn)實(shí)意義[9].
目前,針對(duì)網(wǎng)絡(luò)化控制系統(tǒng)的網(wǎng)絡(luò)攻擊可大致概括為拒絕服務(wù)(denial-of-service,DoS)攻擊[10]、重放攻擊[11]和虛假數(shù)據(jù)注入攻擊[12]這3類.其中,DoS攻擊又是最容易實(shí)施且經(jīng)濟(jì)損失最重大的一種攻擊[13].因此,如何保證DoS攻擊下控制系統(tǒng)的安全運(yùn)行引起了學(xué)術(shù)界以及工業(yè)界的廣泛關(guān)注.從控制理論的視角出發(fā),有關(guān)DoS攻擊下控制系統(tǒng)安全問題的研究主要集中在以下兩個(gè)方面:
1)基于估計(jì)(濾波)理論,研究DoS攻擊下控制系統(tǒng)的狀態(tài)估計(jì)問題:文獻(xiàn)[14]基于多傳感器信息冗余的優(yōu)勢(shì),提出了DoS攻擊下分布式降維融合估計(jì)方法,實(shí)現(xiàn)了DoS攻擊下系統(tǒng)狀態(tài)的有效估計(jì).文獻(xiàn)[15]從攻擊者的角度出發(fā),研究了有能量約束的DoS攻擊者的攻擊策略和系統(tǒng)狀態(tài)的估計(jì)性能之間的關(guān)系,并從理論上給出了攻擊者在能量約束下使估計(jì)誤差協(xié)方差最大的攻擊策略.文獻(xiàn)[16]研究了有能量約束的DoS攻擊者對(duì)遠(yuǎn)程兩個(gè)無線傳感器的DoS攻擊調(diào)度問題,其中兩個(gè)傳感器是通過不同的頻帶發(fā)送量測數(shù)據(jù)的,并且攻擊者一次只能攻擊一個(gè)信道.文獻(xiàn)[17]基于博弈論研究了有能量約束的傳感器節(jié)點(diǎn)向遠(yuǎn)程估計(jì)器發(fā)送量測值的策略和攻擊者對(duì)通信鏈路發(fā)動(dòng)DoS攻擊策略之間的博弈問題,并證明了最優(yōu)狀態(tài)估計(jì)策略是傳感器節(jié)點(diǎn)和攻擊者零和博弈的納什平衡點(diǎn).
2)從系統(tǒng)控制的角度出發(fā),研究DoS攻擊對(duì)系統(tǒng)性能的影響以及應(yīng)對(duì)措施:文獻(xiàn)[18]從攻擊頻率和持續(xù)時(shí)間兩個(gè)維度對(duì)DoS攻擊行為進(jìn)行了建模,并導(dǎo)出了系統(tǒng)在DoS攻擊下能夠保持輸入-狀態(tài)穩(wěn)定的充分條件.文獻(xiàn)[19]針對(duì)基于輸出反饋的動(dòng)態(tài)事件觸發(fā)控制系統(tǒng),提出了一種能夠容忍DoS攻擊的控制器設(shè)計(jì)框架,并實(shí)現(xiàn)了系統(tǒng)的控制性能與系統(tǒng)對(duì)DoS攻擊的魯棒性之間的平衡.文獻(xiàn)[20]研究了能量約束下DoS攻擊攻擊調(diào)度方式和系統(tǒng)控制性能之間的關(guān)系,并從理論上導(dǎo)出了使得線性二次高斯控制器代價(jià)函數(shù)最大的最優(yōu)攻擊策略.文獻(xiàn)[21]將拒絕服務(wù)攻擊和控制器視為博弈雙方,研究了它們之間的零和博弈問題,并從理論上證明了攻擊者和防御者之間的最優(yōu)博弈策略為兩者之間的鞍點(diǎn)平衡點(diǎn).文獻(xiàn)[22]則根據(jù)控制器和DoS攻擊者在不同情形下博弈結(jié)果的差異,提出了一種基于博弈結(jié)果的切換控制策略.文獻(xiàn)[23]利用Markov隨機(jī)博弈的方法研究了多通道傳輸框架下對(duì)信道的DoS攻擊和量測數(shù)據(jù)傳輸策略之間的博弈問題,并通過動(dòng)態(tài)規(guī)劃以及值迭代方法給出了DoS攻擊下的最優(yōu)控制策略.
盡管DoS攻擊下控制系統(tǒng)安全問題研究取得了不錯(cuò)的進(jìn)展,但是目前的研究大多局限了只考慮DoS攻擊下的狀態(tài)估計(jì)問題或控制問題,DoS攻擊下狀態(tài)估計(jì)器與控制器的聯(lián)合設(shè)計(jì)問題仍然缺乏足夠的關(guān)注.為此,本文研究了DoS攻擊下控制系統(tǒng)的觀測器與控制器的聯(lián)合設(shè)計(jì)問題.針對(duì)有能量約束的DoS攻擊造成通信鏈路阻塞的情形,首先提出了一種具有多個(gè)增益的切換Luenberger觀測器,實(shí)現(xiàn)了對(duì)系統(tǒng)狀態(tài)的間歇性估計(jì).通過將文獻(xiàn)[24]中DoS攻擊下基于狀態(tài)反饋的冗余控制思想進(jìn)行擴(kuò)展,在未發(fā)生DoS攻擊的時(shí)刻,觀測器基于系統(tǒng)輸出首先計(jì)算出當(dāng)前時(shí)刻的狀態(tài)估計(jì)值,然后控制器基于狀態(tài)估計(jì)值計(jì)算出當(dāng)前以及未來一段時(shí)域內(nèi)冗余的控制信號(hào),并將其封裝在一個(gè)數(shù)據(jù)包中發(fā)送給執(zhí)行器.執(zhí)行器則根據(jù)DoS攻擊發(fā)生的情況選擇適當(dāng)數(shù)量的控制信號(hào)用于執(zhí)行,從而保證了執(zhí)行器在有無DoS攻擊的情況下都有合適的控制輸入.該方法能夠有效地克服執(zhí)行器在DoS攻擊下采用保持輸入或零輸入策略的盲目性,使系統(tǒng)在DoS攻擊下也能實(shí)現(xiàn)良好的控制性能.其次,通過引入一個(gè)同時(shí)包含觀測器和系統(tǒng)狀態(tài)的增廣變量,用切換系統(tǒng)對(duì)不同持續(xù)時(shí)間DoS攻擊下的觀測器和系統(tǒng)狀態(tài)的動(dòng)態(tài)特性進(jìn)行了統(tǒng)一的描述,并基于多Lyapunov函數(shù)方法推導(dǎo)了保證切換系統(tǒng)在任意切換律下指數(shù)穩(wěn)定的充分條件,同時(shí)給出了基于觀測器的控制器設(shè)計(jì)方法.最后,通過網(wǎng)絡(luò)化控制倒立擺的實(shí)驗(yàn)驗(yàn)證了所提方法的有效性.
說明:Rn和Rm×n分別表示n維和m×n維實(shí)歐幾里得空間;N表示非負(fù)整數(shù)集;N[c1,c2]表示整數(shù)集{t ∈N|c1≤t≤c2};A>0表示A是一個(gè)具有適當(dāng)維數(shù)的正定矩陣;‖x‖表示向量x的2范數(shù);σmax(A)和σmin(A)分別表示矩陣A的最大奇異值和最小奇異值;I和0分別表示具有適當(dāng)維數(shù)的單位陣和零矩陣;AT表示矩陣A的轉(zhuǎn)置;矩陣中的符號(hào)?表示矩陣的對(duì)稱塊;{·}表示包含元素·的集合;∪表示集合的并操作運(yùn)算符.
考慮如圖1所示的由傳感器、觀測器、控制器和執(zhí)行器組成的網(wǎng)絡(luò)化控制系統(tǒng).
圖1 DoS攻擊下的網(wǎng)絡(luò)化控制系統(tǒng)Fig.1 The networked control system under DoS attacks
在圖1所示的網(wǎng)絡(luò)化控制系統(tǒng)中,傳感器通過網(wǎng)絡(luò)將獲取的量測數(shù)據(jù)發(fā)送給觀測器,觀測器則根據(jù)傳感器的量測值以及系統(tǒng)的輸入給出系統(tǒng)的狀態(tài)估計(jì),并通過內(nèi)部網(wǎng)絡(luò)發(fā)送給執(zhí)行器.控制器則根據(jù)觀測器的狀態(tài)估計(jì)值計(jì)算出對(duì)應(yīng)的控制信號(hào)并通過網(wǎng)絡(luò)發(fā)送給執(zhí)行器.外部環(huán)境中存在的攻擊者可對(duì)傳感器到觀測器或控制器到執(zhí)行器的通信鏈路發(fā)動(dòng)DoS攻擊進(jìn)而阻斷數(shù)據(jù)的傳輸.其中,被控對(duì)象的動(dòng)態(tài)特性可以由如下的離散時(shí)間線性狀態(tài)空間模型描述:
其中:x(k)∈Rn是系統(tǒng)狀態(tài),u(k)∈Rm是控制輸入,y(k)∈Rp是量測輸出;A,B,C和D為已知的具有適當(dāng)維數(shù)的常系數(shù)矩陣.
在進(jìn)一步討論DoS攻擊情形之前,首先本文對(duì)DoS攻擊行為做出如下假設(shè).
假設(shè)1由于能量約束,DoS攻擊者能夠連續(xù)中斷的最大通信次數(shù)為N.
為了對(duì)DoS 攻擊下系統(tǒng)的狀態(tài)進(jìn)行估計(jì),本文引入圖2所示的切換Luenberger觀測器.
圖2 切換Luenberger觀測器示意圖Fig.2 The schematic of switching Luenberger observer
圖2中,每個(gè)子觀測器的動(dòng)態(tài)特性可以由如下的方程進(jìn)行描述:
其中kκ(kκ ∈N,κ ∈N)表示切換Luenberger觀測器的切換點(diǎn),即傳感器到觀測器以及控制器到執(zhí)行器的網(wǎng)絡(luò)都沒有發(fā)生DoS攻擊的采樣時(shí)刻.
是一個(gè)依賴于DoS攻擊行為的切換信號(hào).σ(kκ)的取值表示在時(shí)刻kκ之后數(shù)據(jù)傳輸被DoS攻擊連續(xù)中斷的次數(shù),即從時(shí)刻kκ+1起有連續(xù)σ(kκ)次的數(shù)據(jù)傳輸被DoS攻擊中斷(若σ(kκ)=0則表示在采樣時(shí)刻kκ+1沒有DoS攻擊發(fā)生).為系統(tǒng)狀態(tài)的估計(jì)值,y(kκ)為量測的系統(tǒng)輸出,為估計(jì)的系統(tǒng)輸出,為需要設(shè)計(jì)的觀測器增益,定義為
其中k0=0.
注意到式(2)給出的切換Luenberger觀測器實(shí)際上是一種間歇性觀測器,即它只在無DoS攻擊的時(shí)刻工作并給出系統(tǒng)當(dāng)前的狀態(tài)估計(jì).為了實(shí)現(xiàn)這樣的工作模式,關(guān)鍵點(diǎn)是觀測器需要在每個(gè)采樣時(shí)刻確定此時(shí)傳感器到觀測器或控制器到執(zhí)行器的通信鏈路是否被DoS攻擊中斷.在每個(gè)采樣時(shí)刻,觀測器可以根據(jù)是否能接收傳感器的量測數(shù)據(jù)來判斷傳感器到觀測器的通信鏈路是否被DoS攻擊中斷.為了使觀測器在每個(gè)采樣時(shí)刻能夠判斷控制器到執(zhí)行器的通信鏈路是否被DoS攻擊中斷,一個(gè)簡單可行的方法是執(zhí)行器在收到控制信號(hào)之后立即向控制器發(fā)送一個(gè)應(yīng)答信號(hào)(ACK信號(hào))來確認(rèn)數(shù)據(jù)是否傳輸成功.如果控制器收到ACK信號(hào),則說明控制器到執(zhí)行器的通信鏈路沒有被DoS攻擊中斷,執(zhí)行器成功收到控制信號(hào),根據(jù)式(3),此時(shí)系統(tǒng)切換到下一個(gè)子系統(tǒng).
引入的切換Luenberger觀測器給出了被控對(duì)象在沒有DoS攻擊時(shí)刻的狀態(tài)估計(jì)值.結(jié)合文獻(xiàn)[24]中在DoS攻擊下基于狀態(tài)反饋的冗余控制思想,本文將根據(jù)Luenberger觀測器的狀態(tài)估計(jì)值設(shè)計(jì)一種冗余的控制律使得執(zhí)行器在有無DoS攻擊的情況下都有合適的控制信號(hào).本文的核心思想如下:在沒有DoS攻擊的時(shí)刻kκ,控制器根據(jù)Luenberger觀測器給出的狀態(tài)估計(jì)(kκ)計(jì)算出當(dāng)前以及部分未來時(shí)域的控制輸入,并將它們封裝在一個(gè)數(shù)據(jù)包中同時(shí)發(fā)送給執(zhí)行器.執(zhí)行器則根據(jù)DoS攻擊的發(fā)生情況選擇執(zhí)行部分或全部的控制信號(hào).基于這一思想,本文給出如下的冗余控制律:
其中:s=0,1,···,σ(kκ),σ(kκ)是與式(2)給出的切換Luenberger觀測器中σ(kκ)相一致的切換信號(hào).u(kκ),u(kκ+1),···,u(kκ+s)分別表示執(zhí)行器在離散時(shí)間時(shí)刻kκ,kκ+1,···,kκ+s的控制輸入.K0,K1,···,KN是需要進(jìn)行設(shè)計(jì)的控制器增益.控制律(4)的具體實(shí)施過程如下:控制器在每個(gè)沒有發(fā)生DoS攻擊的離散時(shí)間時(shí)刻kκ根據(jù)觀測器對(duì)當(dāng)前狀態(tài)的估計(jì)值計(jì)算出N+1個(gè)控制輸入
并將其封裝在一個(gè)數(shù)據(jù)包中同時(shí)發(fā)送給執(zhí)行器.若在kκ+1時(shí)刻有新的數(shù)據(jù)包到達(dá)執(zhí)行器,則執(zhí)行器只執(zhí)行U(kκ)中的第1個(gè)控制輸入u(kκ).否則,執(zhí)行器在執(zhí)行完控制信號(hào)u(kκ)后,將會(huì)依次執(zhí)行u(kκ+1),···,u(kκ+s)直到下一個(gè)新的數(shù)據(jù)包到達(dá).當(dāng)新的數(shù)據(jù)包到達(dá)時(shí),執(zhí)行器便會(huì)丟棄原有的數(shù)據(jù)包并立即去執(zhí)行新的數(shù)據(jù)包中的控制輸入.這里控制律的冗余性體現(xiàn)在不是每次計(jì)算的所有控制信號(hào)都會(huì)被執(zhí)行器執(zhí)行.
于是,根據(jù)DoS攻擊連續(xù)中斷通信次數(shù)的差異,被控對(duì)象在相鄰兩個(gè)DoS攻擊未發(fā)生的時(shí)刻(即切換點(diǎn))間的動(dòng)態(tài)特性可以表示為
其中i=σ(kκ).根據(jù)的定義,式(5)表明
定義估計(jì)誤差
結(jié)合式(2)以及式(5),本文引入如下的切換系統(tǒng)模型來對(duì)觀測器和被控對(duì)象的動(dòng)態(tài)進(jìn)行統(tǒng)一的描述:
其中:
注1這里的控制方法的可行性得益于網(wǎng)絡(luò)中數(shù)據(jù)包的封裝特性.以鏈路層的Ethernet封裝為例,每個(gè)以太網(wǎng)幀的數(shù)據(jù)字段長度有一個(gè)最小46字節(jié)的要求[25-26].這意味著,在除去以太網(wǎng)幀中封裝的上層數(shù)據(jù)包的頭部情況下發(fā)送1個(gè)字節(jié)或幾個(gè)字節(jié)之間的數(shù)據(jù)將會(huì)消耗相同的網(wǎng)絡(luò)資源.通常,本文需要數(shù)據(jù)封裝不會(huì)超過以太網(wǎng)幀數(shù)據(jù)字段的最小字節(jié)要求.因此,本文提出的控制方法不會(huì)增加額外的網(wǎng)絡(luò)負(fù)載.
注2這里的控制方法同樣可以處理NCSs的丟包問題.然而,DoS攻擊誘導(dǎo)的丟包現(xiàn)象和網(wǎng)絡(luò)中固有的丟包現(xiàn)象的重要區(qū)別在于:DoS攻擊造成的丟包率會(huì)遠(yuǎn)遠(yuǎn)大于網(wǎng)絡(luò)中本身存在的丟包率并且網(wǎng)絡(luò)中本身存在的丟包過程往往是一個(gè)隨機(jī)過程,而DoS攻擊造成丟包現(xiàn)象則往往不滿足某一特定的概率分布[13,27].因此,這里的控制方法更具有一般性.
進(jìn)一步,作者將相鄰兩個(gè)切換點(diǎn)的系統(tǒng)狀態(tài)z(kκ)和z(kκ+1)(即沒有DoS攻擊時(shí)刻的狀態(tài))之間的系統(tǒng)狀態(tài)記為z(kj,κ),系統(tǒng)狀態(tài)z(kj,κ)中的下標(biāo)j ∈N[1,N]表示系統(tǒng)狀態(tài)z(kj,κ)是系統(tǒng)狀態(tài)z(kκ)后的第j個(gè)受到DoS攻擊時(shí)的狀態(tài),即
根據(jù)以上系統(tǒng)狀態(tài)的定義,可知z(k),z(kκ)和z(kj,κ)滿足{z(k)}={z(kκ)}∪{z(kj,κ)}.
在本節(jié)中,作者將推導(dǎo)出使切換系統(tǒng)模型(6)在任意切換律下指數(shù)穩(wěn)定的充分條件以及對(duì)應(yīng)的觀測器、控制器設(shè)計(jì)方案.在給出主要的結(jié)論之前,需要引入以下的定義及引理:
定義1對(duì)于切換系統(tǒng)模型(6),若存在正整數(shù)c和λ<1使得如下的不等式
成立,則系統(tǒng)(6)是指數(shù)穩(wěn)定的.
引理1對(duì)于任意一個(gè)矩陣F ∈Rn×n以及任意一個(gè)向量x ∈Rn,如下的不等式成立:
其中α1,α2分別是F的最大奇異值和最小奇異值[28].
引理2(Schur補(bǔ)引理[29]) 假設(shè)一個(gè)對(duì)稱矩陣S能夠劃分為以下4個(gè)部分:
那么以下3個(gè)條件是等價(jià)的:
定理1對(duì)于切換系統(tǒng)(6),若存在常數(shù)0<λi <1,u>0以及適當(dāng)維數(shù)的矩陣Pi >0,i ∈M使得以下的矩陣不等式
成立,則系統(tǒng)(6)將會(huì)是指數(shù)穩(wěn)定的.
證為式(6)表示的切換系統(tǒng)模型中的每個(gè)子系統(tǒng)選擇如下的分段Lyapunov函數(shù):
其中下標(biāo)σ(kκ)表明式(10)-(11)中的Lyapunov函數(shù)對(duì)應(yīng)位于切換點(diǎn)kκ和kκ+1之間的子系統(tǒng)σ(kκ)=i,i ∈M.分別用zT(kκ)和z(kκ)左乘和右乘不等式(7)可以得到
其中λσ(kκ)和Fσ(kκ)對(duì)應(yīng)位于切換點(diǎn)kκ和kκ+1之間的子系統(tǒng)σ(kκ)=i,i ∈M.根據(jù)式(10)-(11),有
類似地,可以得到
注意到如下的事實(shí):
以及條件(8),可以得到
進(jìn)一步,通過歸納可以得到如下的遞推關(guān)系:
其中:β1=進(jìn)一步,可以得到
結(jié)合不等式(18),類似地,可以得到
注意到kκ+2,kj,κ+2和κ有如下的關(guān)系:
當(dāng)κ+2≥N,
綜合式(20)-(23)以及ρ<1,可以推出
當(dāng)κ+2≥N時(shí),
比較式(24)-(25),可以發(fā)現(xiàn)在N個(gè)切換點(diǎn)之后的z(k)都滿足如下的不等式:
由于這里的切換點(diǎn)指的是沒有DoS攻擊的時(shí)刻,所以本文總是可以在N(N+1)個(gè)時(shí)間步內(nèi)找到這N個(gè)切換點(diǎn),于是結(jié)合定義1可以得出結(jié)論:系統(tǒng)(6)將會(huì)是指數(shù)穩(wěn)定的. 證畢.
在本節(jié)中,將根據(jù)定理1的結(jié)論給出對(duì)應(yīng)的基于觀測器的輸出反饋控制器設(shè)計(jì)方案.
將式(6)中的Hi(i ∈M)寫成如下的形式:
其中A0i,B0i,W,T分別為
由Schur補(bǔ)引理,矩陣不等式(7)等價(jià)于
將式(27)代入到式(28)中,可以得到
引入新的矩陣變量Qi(i ∈M),將式(29)重新寫為
由于式(30)中含有矩陣的逆,屬于非線性項(xiàng),無法直接使用MATLAB的LMI工具箱進(jìn)行求解,因此需要對(duì)其進(jìn)行進(jìn)一步的轉(zhuǎn)化.應(yīng)用文獻(xiàn)[30]提出的錐補(bǔ)線性化算法,不等式(8)-(9)和式(30)約束下的可行性問題可轉(zhuǎn)化為如下的問題進(jìn)行求解:
其中,式(31)中的極小化問題可用如下的迭代算法進(jìn)行求解.
算法1基于觀測器的輸出反饋控制器求解算法.
步驟1選取一組使不等式(8)-(9)和式(32)-(33)成立的0<λN <···<λ1<λ0<1,μ<
步驟2求得使不等式(8)-(9)和式(32)-(33)成立的一組可行解,記為(),并設(shè)置l=0,
步驟3求解以下的極小化問題:
得到一組新的解(Pi,Qi,Ki,Li,i ∈M).檢驗(yàn)條件(7)是否滿足,若滿足則退出計(jì)算,否則設(shè)置l=l+1,并返回步驟3.
注3式(7)中的λi(i ∈M)是和系統(tǒng)衰減率相關(guān)的一個(gè)參數(shù).當(dāng)μ給定時(shí),λi越小,λi所對(duì)應(yīng)的子系統(tǒng)也就衰減得越快.由于每個(gè)離散時(shí)間子系統(tǒng)的狀態(tài)轉(zhuǎn)移矩陣Hi(i ∈M)所對(duì)應(yīng)的狀態(tài)轉(zhuǎn)移過程的時(shí)間跨度是不同的,算法1中選擇的參數(shù)0<λN <···<λ1<λ0<1(在μ給定的情況下)表明子系統(tǒng)狀態(tài)轉(zhuǎn)移過程的時(shí)間跨度越大,其衰減率也將會(huì)越大.這里僅僅給出了設(shè)計(jì)參數(shù)的定性分配方案,如何定量地確定設(shè)計(jì)參數(shù)的最優(yōu)分配方案將是作者進(jìn)一步的研究方向.
注4在系統(tǒng)建模過程中,通過狀態(tài)變量的增廣,用矩陣Hσ(kκ)對(duì)觀測器與被控對(duì)象的動(dòng)態(tài)特性進(jìn)行了統(tǒng)一的描述.因此,以上算法求出的觀測器與控制器具有近似的收斂速度.在實(shí)際的工程應(yīng)用中,為了獲得更好的控制性能,往往需要觀測器的收斂速度大于控制器的收斂速度.注意到矩陣中的是唯一一個(gè)和切換Luenberger觀測器的衰減率相關(guān)的一項(xiàng).因此,在實(shí)際應(yīng)用中可根據(jù)需要在矩陣前乘以一個(gè)大于1的系數(shù)θi(i=σ(kκ))后再應(yīng)用以上算法進(jìn)行求解,使求得的觀測器相對(duì)于控制器有較大的收斂速度.
考慮圖3中的Googol公司的直線一級(jí)倒立擺系統(tǒng).
圖3 網(wǎng)絡(luò)化控制的倒立擺系統(tǒng)Fig.3 The networked inverted pendulum system
該倒立擺系統(tǒng)主要包含倒立擺機(jī)構(gòu)、電控箱、上位機(jī)3部分,其中上位機(jī)上同時(shí)運(yùn)行有通過UPD協(xié)議進(jìn)行相互通信的客戶端以及服務(wù)器端程序.通過在客戶端和服務(wù)器端之間人為地對(duì)量測信號(hào)和控制信號(hào)進(jìn)行攔截可以模擬DoS攻擊.使用牛頓-歐拉方法以及小偏差線性化理論對(duì)圖3所示的倒立擺系統(tǒng)進(jìn)行建模可以得到如下的連續(xù)時(shí)間狀態(tài)空間模型:
其中:x是倒立擺滑塊的位置,是滑塊的速度,滑塊的加速度用作系統(tǒng)的輸入,?是擺桿與豎直方向的夾角,是擺桿的角速度,l=0.25 m是擺桿轉(zhuǎn)動(dòng)軸心到其質(zhì)心的長度,9.8 m/s2是重力加速度,y是系統(tǒng)的量測輸出.這里的倒立擺系統(tǒng)中只有滑塊的位置和擺桿的角度是可直接測量的.本文設(shè)置系統(tǒng)的采用周期為10 ms,將系統(tǒng)的連續(xù)時(shí)間狀態(tài)空間模型離散化后可以得到如下的對(duì)應(yīng)于式(1)中的參數(shù):
本文假設(shè)DoS攻擊者最多能連續(xù)阻塞至少一個(gè)通道的次數(shù)為5(即N=5),這就意味著本文需要6個(gè)子系統(tǒng)來對(duì)DoS攻擊下系統(tǒng)的所有可能的動(dòng)態(tài)特性進(jìn)行描述.根據(jù)式(36)-(37)給出的離散時(shí)間系統(tǒng)參數(shù),取每個(gè)子系統(tǒng)的設(shè)計(jì)參數(shù)λ0,λ1,···,λ5,μ的值分別為0.985,0.984,0.983,0.982,0.981,0.980,應(yīng)用提出的設(shè)計(jì)算法,使用MATLAB的LMI工具箱可以得到如下的控制器及觀測器設(shè)計(jì)參數(shù):
L0,L1,L2,L3,L4,L5的值分別為
為了評(píng)估本文提出的控制方法,本文選擇一組理想的狀態(tài)反饋控制作為對(duì)照.由于倒立擺上沒有直接測量速度以及角速度的傳感器,這里狀態(tài)反饋控制中所需的倒立擺速度以及角速度是由下式
計(jì)算的.其中ts為倒立擺的采樣間隔.設(shè)置連續(xù)時(shí)間系統(tǒng)(34)的期望極點(diǎn)為[?2?3?4+3i?4?3i],解得狀態(tài)反饋增益為
通過實(shí)驗(yàn)(這里的控制器是采用零階保持策略的離散控制器),可以得到如圖4-5所示的關(guān)于倒立擺的位置以及角度的實(shí)驗(yàn)數(shù)據(jù).
圖4 狀態(tài)反饋控制下倒立擺滑塊的位置Fig.4 The position of the slider under state feedback control
圖5 狀態(tài)反饋控制下倒立擺擺桿的角度Fig.5 The angle of the pendulum rod under state feedback control
現(xiàn)考慮圖6所示的DoS攻擊(1表示有DoS攻擊,0表示無DoS攻擊),當(dāng)周期地持續(xù)地施加圖6所示的DoS攻擊時(shí),狀態(tài)反饋控制器無法對(duì)倒立擺進(jìn)行有效的控制.這表明所設(shè)計(jì)的狀態(tài)反饋控制律雖然能夠保證倒立擺在良好工況下的穩(wěn)定運(yùn)行,但其對(duì)網(wǎng)絡(luò)中發(fā)生的DoS攻擊還是十分脆弱的.
圖6 DoS攻擊分布Fig.6 The distribution of DoS attack
下面應(yīng)用本文提出的控制方法進(jìn)行實(shí)驗(yàn),可以得到在有無DoS攻擊下的實(shí)驗(yàn)結(jié)果圖7-10(施加的持續(xù)性周期DoS攻擊同樣服從圖6所示的DoS攻擊分布).
圖7 無DoS攻擊時(shí)倒立擺滑塊的位置Fig.7 The position of the slider in the absence of DoS attack
圖8 無DoS攻擊時(shí)倒立擺擺桿的角度Fig.8 The angle of the pendulum rod in the absence of DoS attack
圖9 發(fā)生DoS攻擊時(shí)倒立擺滑塊的位置Fig.9 The position of the slider under DoS attack
圖10 發(fā)生DoS攻擊時(shí)倒立擺擺桿的角度Fig.10 The angle of the pendulum rod under DoS attack
以上的實(shí)驗(yàn)結(jié)果表明:所提出的控制方法在有無DoS攻擊的情況下都能對(duì)倒立擺進(jìn)行有效的控制.相比于狀態(tài)反饋控制方法,這里的基于Luenberger觀測器的冗余控制方法對(duì)DoS攻擊具有較強(qiáng)的魯棒性但控制效果要稍微差一些.觀測器的引入會(huì)額外增加更多的不確定性,相比于直接的狀態(tài)反饋控制,基于狀態(tài)觀測值的控制會(huì)不可避免地?fù)p失一定的控制性能.當(dāng)DoS攻擊發(fā)生時(shí),系統(tǒng)的實(shí)際采樣間隔會(huì)相應(yīng)地增加,這會(huì)降低相鄰兩個(gè)切換點(diǎn)之間的外部干擾、非線性因素對(duì)基于前一個(gè)切換點(diǎn)狀態(tài)估計(jì)值計(jì)算的控制輸入的有效性,從而增加了DoS攻擊下的倒立擺對(duì)外部干擾等影響的敏感性.這一事實(shí)在圖9上表現(xiàn)為倒立擺的位置出現(xiàn)了較大的波動(dòng).進(jìn)一步地,通過在倒立擺擺桿的頂端施加一個(gè)水平方向的外部擾動(dòng),可以發(fā)現(xiàn)DoS攻擊下的倒立擺更容易失去原有的穩(wěn)定性.這是因?yàn)镈oS攻擊增加了倒立擺的實(shí)際采樣間隔,而采樣間隔的增加使得系統(tǒng)對(duì)外部的干擾不能進(jìn)行及時(shí)的反饋校正.因此,如何使網(wǎng)絡(luò)化控制系統(tǒng)在有無DoS攻擊的情況下?lián)碛幸恢碌目刂菩阅軐⑹亲髡呦乱徊降难芯糠较?
本文針對(duì)DoS攻擊下網(wǎng)絡(luò)化控制系統(tǒng)的安全控制問題,提出了一種具有多個(gè)增益的切換Luenberger觀測器,實(shí)現(xiàn)了DoS攻擊下系統(tǒng)狀態(tài)值的間歇性觀測.根據(jù)獲得的狀態(tài)估計(jì)值設(shè)計(jì)了包含當(dāng)前以及未來一段時(shí)域控制輸入的冗余控制律,保證了被控系統(tǒng)在有無DoS攻擊的情況下都有合適控制輸入更新,克服了零輸入策略和保持輸入策略的盲目性.進(jìn)一步,通過構(gòu)造一個(gè)切換系統(tǒng)模型導(dǎo)出了控制系統(tǒng)在DoS攻擊下指數(shù)穩(wěn)定的充分條件以及獲得所需的控制器增益和觀測器增益的設(shè)計(jì)算法,并基于構(gòu)造的切換系統(tǒng)模型的結(jié)構(gòu)特征定性地給出了設(shè)計(jì)參數(shù)的分配原則.最后,網(wǎng)絡(luò)化倒立擺控制系統(tǒng)的實(shí)驗(yàn)驗(yàn)證了所提出的方法的有效性.