陳書(shū)釗,楚龍飛,楊秀梅,蔡德淮
1. 翎客航天科技有限公司,北京 100176 2. 昆明理工大學(xué) 信息工程與自動(dòng)化學(xué)院,昆明 650500
可重復(fù)使用運(yùn)載器(Reusable Launch Vehicle, RLV)是指能夠在地球表面與太空之間重復(fù)往返的多用途飛行器[1-2],分為部分可重復(fù)運(yùn)載器和完全可重復(fù)運(yùn)載器。具備可重復(fù)使用、可靠性高、維護(hù)成本低等特點(diǎn)的運(yùn)載器,根據(jù)費(fèi)用均攤的原則,可有效降低單位載荷的發(fā)射成本[3]。
麥道與NASA合作于20世紀(jì)90年代研發(fā)一種火箭動(dòng)力單級(jí)入軌飛行器DC-X,其通過(guò)控制發(fā)動(dòng)機(jī)推力實(shí)現(xiàn)了飛行器的垂直起飛和垂直降落(VTVL)技術(shù),是RLV的早期雛形。后來(lái)由于一些原因,DC-X項(xiàng)目最終被放棄。但是DC-X項(xiàng)目為RLV的發(fā)展開(kāi)辟了新的道路。DC-X項(xiàng)目的一些工程師后來(lái)進(jìn)入了藍(lán)色起源(Blue Origin)專(zhuān)注于RLV的研發(fā),并于2005年通過(guò)Charon原理樣機(jī)完成了VTVL技術(shù)驗(yàn)證,其隨后又進(jìn)行了大量相關(guān)試驗(yàn),并通過(guò)New Shepard-1,于2015年成為第1個(gè)具有VTVL技術(shù)且進(jìn)入太空的民營(yíng)航天公司。同時(shí)DC-X項(xiàng)目也為Armadillo航空航天、Masten空間注入了靈感,這兩家民營(yíng)航天公司分別通過(guò)自己研發(fā)設(shè)計(jì)的Mod和Xombie兩個(gè)具備VTVL功能的飛行器獲得了2008年和2009年的XPRIZE最高獎(jiǎng),為RLV的發(fā)展注入了活力。
SpaceX太空探索公司是最晚研發(fā)RLV的公司,卻是迄今為止走的最遠(yuǎn)的公司。其用Grasshopper火箭于2012年開(kāi)始研發(fā)VTVL技術(shù),2015年其Falcon-9火箭將衛(wèi)星送入軌道之后成功完成陸地回收,實(shí)現(xiàn)人類(lèi)航天史上一個(gè)重大里程碑。2018年2月SpaceX“重型獵鷹”(Falcon Heavy)取得重大成果,其助推器和芯級(jí)都具備可回收能力,成為具備可部分重復(fù)使用能力的現(xiàn)役最大運(yùn)載火箭。
運(yùn)載火箭的重復(fù)利用通常包括4項(xiàng)關(guān)鍵技術(shù)[4]:精確高效的控制技術(shù)、可以變推力和重復(fù)使用的發(fā)動(dòng)機(jī)技術(shù)、高可靠的著陸支撐技術(shù)、快速檢修再利用技術(shù)。而垂直起飛與垂直降落技術(shù)則是前3項(xiàng)技術(shù)的結(jié)合。精確高效的控制技術(shù)包含了制導(dǎo)系統(tǒng)、動(dòng)力控制系統(tǒng)、姿態(tài)控制系統(tǒng)和其他控制系統(tǒng)?;鸺诨厥盏倪^(guò)程中制導(dǎo)系統(tǒng)對(duì)精確著陸起著至關(guān)重要的作用,對(duì)此SpaceX和Masten兩家公司分別在文獻(xiàn)[5-6]中進(jìn)行了詳細(xì)討論,同時(shí)關(guān)于可回收火箭的制導(dǎo)技術(shù)也存在大量研究[7-8]。但關(guān)于可回收火箭的動(dòng)力控制系統(tǒng)研究卻很少,SpaceX和Masten也并未透露更多信息。翎客航天作為世界上繼SpaceX之后第六家掌握了VTVL技術(shù)的商業(yè)航天公司,本文將詳細(xì)討論其在VTVL技術(shù)動(dòng)力控制系統(tǒng)方面所做的創(chuàng)新。
動(dòng)力控制系統(tǒng)是根據(jù)火箭的飛行狀態(tài)直接參與發(fā)動(dòng)機(jī)推力控制的系統(tǒng),控制效果的優(yōu)劣決定著火箭回收的成敗。由于目前VTVL技術(shù)在世界上還屬于非常前沿的技術(shù),其相關(guān)參考文獻(xiàn)極其有限,而關(guān)于VTVL技術(shù)中非常關(guān)鍵的動(dòng)力控制系統(tǒng)方面的參考文獻(xiàn)目前還沒(méi)有。動(dòng)力控制系統(tǒng)可以通過(guò)經(jīng)典控制理論的方法進(jìn)行設(shè)計(jì),即在已知被控對(duì)象較為精確的模型的情況下設(shè)計(jì)控制器結(jié)構(gòu),通過(guò)穩(wěn)定性計(jì)算確定參數(shù)進(jìn)而獲得使系統(tǒng)穩(wěn)定的控制器。然而這種思路對(duì)于一個(gè)民營(yíng)商業(yè)航天公司意味著很大的成本付出,因?yàn)楸豢啬P偷木_程度取決于加工工藝,而目前所有滿(mǎn)足航天標(biāo)準(zhǔn)的加工工藝都意味著巨大的成本。因此對(duì)精確程度較差的被控模型實(shí)現(xiàn)穩(wěn)定控制,成為民營(yíng)商業(yè)航天公司一個(gè)較大的需求。
翎客航天基于3 000 N深度可變推力(10%~110%)發(fā)動(dòng)機(jī)LinkPower-3,于2015年開(kāi)始研發(fā)RLV技術(shù),并依靠民間工業(yè)力量制造了一系列代號(hào)為RLV-T小型可回收火箭驗(yàn)證機(jī),并于2018年初通過(guò)RLV-T3成功掌握了VTVL技術(shù)。相較于科研院所代表國(guó)家力量研制出的大型火箭,該系列火箭存在一些特殊的技術(shù)難點(diǎn),比如其質(zhì)心位置測(cè)算和慣量測(cè)算有較大誤差,機(jī)械傳動(dòng)有較大誤差等。這一系列技術(shù)難點(diǎn)導(dǎo)致被控對(duì)象的模型不準(zhǔn)確,計(jì)算可以保證穩(wěn)定的控制器卻難以實(shí)現(xiàn)穩(wěn)定控制。為了實(shí)現(xiàn)對(duì)RLV-T3的穩(wěn)定控制,翎客航天獨(dú)立研發(fā)了一種稱(chēng)為狀態(tài)預(yù)測(cè)神經(jīng)網(wǎng)絡(luò)控制(State Prediction Neural Network Control, SPNNC)的智能控制算法[9-10]。該算法可以在已知被控對(duì)象粗糙狀態(tài)方程(線性)的情況下,通過(guò)調(diào)整一個(gè)主要參數(shù)和一個(gè)輔助參數(shù)實(shí)現(xiàn)穩(wěn)定控制,可應(yīng)用于所有可以經(jīng)過(guò)線性狀態(tài)方程實(shí)現(xiàn)預(yù)測(cè)的單輸入單輸出(SISO)系統(tǒng)和多輸入多輸出(MIMO)系統(tǒng)。基于神經(jīng)網(wǎng)絡(luò)的控制器種類(lèi)有很多,而SPNNC的創(chuàng)新點(diǎn)在于將狀態(tài)方程用于預(yù)測(cè)并與神經(jīng)網(wǎng)絡(luò)的優(yōu)化性能相結(jié)合從而實(shí)現(xiàn)強(qiáng)魯棒性的控制。SPNNC不需要離線訓(xùn)練、計(jì)算簡(jiǎn)單且迅速、容錯(cuò)能力強(qiáng)、通用性強(qiáng)。同時(shí),將這種新的控制算法大膽地應(yīng)用于火箭回收技術(shù),也是航天領(lǐng)域的一次創(chuàng)新,是商業(yè)航天靈活性的體現(xiàn)。
人工神經(jīng)網(wǎng)絡(luò)(簡(jiǎn)稱(chēng)神經(jīng)網(wǎng)絡(luò))是人類(lèi)根據(jù)動(dòng)物中樞神經(jīng)系統(tǒng)(尤其是腦)的結(jié)構(gòu)和信號(hào)處理機(jī)制構(gòu)建的一種處理實(shí)際問(wèn)題的數(shù)學(xué)模型[11]。而將人工神經(jīng)網(wǎng)絡(luò)應(yīng)用于控制系統(tǒng)可實(shí)現(xiàn)智能控制,具有可控復(fù)雜(如非線性、快時(shí)變、多變量、環(huán)境擾動(dòng)等)系統(tǒng),高容錯(cuò)性能,多模態(tài)組合(定性決策和定量控制相結(jié)合)控制等特點(diǎn)[10]。基于神經(jīng)網(wǎng)絡(luò)的控制器具有非常多的種類(lèi),如基于自適應(yīng)方式的神經(jīng)網(wǎng)絡(luò)控制器,由神經(jīng)網(wǎng)絡(luò)單獨(dú)組成的控制器,神經(jīng)網(wǎng)絡(luò)與比例-積分-微分(PID)、預(yù)測(cè)控制、內(nèi)??刂频葌鹘y(tǒng)控制結(jié)構(gòu)結(jié)合形成的神經(jīng)網(wǎng)絡(luò)控制器,神經(jīng)網(wǎng)絡(luò)的智能控制,神經(jīng)網(wǎng)絡(luò)優(yōu)化控制等[11]。而本文要介紹的SPNNC正是結(jié)合神經(jīng)網(wǎng)絡(luò)的優(yōu)化性能與狀態(tài)空間預(yù)測(cè)性能于一體的在線學(xué)習(xí)控制算法。
該算法包括2個(gè)核心部分,即神經(jīng)網(wǎng)絡(luò)部分和狀態(tài)預(yù)測(cè)部分。其中神經(jīng)網(wǎng)絡(luò)部分的作用就是盡可能地使被控對(duì)象的輸出和參考量一致,而狀態(tài)預(yù)測(cè)部分的作用就是為了規(guī)避系統(tǒng)時(shí)滯導(dǎo)致的控制失步,將神經(jīng)網(wǎng)絡(luò)產(chǎn)生控制的時(shí)間點(diǎn)和被控系統(tǒng)產(chǎn)生作用的時(shí)間點(diǎn)盡可能地保持在最小區(qū)間內(nèi)。神經(jīng)網(wǎng)絡(luò)部分可認(rèn)為只起到一個(gè)優(yōu)化器的作用,當(dāng)被控對(duì)象為簡(jiǎn)單SISO系統(tǒng)時(shí),可以將神經(jīng)網(wǎng)絡(luò)簡(jiǎn)化為單神經(jīng)元進(jìn)行控制,其優(yōu)點(diǎn)是計(jì)算簡(jiǎn)單迅速、邏輯清晰。當(dāng)被控對(duì)象為特定情況的MIMO系統(tǒng)時(shí),即可通過(guò)狀態(tài)方程對(duì)未來(lái)進(jìn)行預(yù)測(cè),則神經(jīng)網(wǎng)絡(luò)部分采用多層網(wǎng)絡(luò)(如BP(BackPropagation)神經(jīng)網(wǎng)絡(luò))進(jìn)行控制,其優(yōu)點(diǎn)是可以實(shí)現(xiàn)復(fù)雜系統(tǒng)較好的控制。RLV-T3小型可回收火箭驗(yàn)證機(jī)的高度控制正是使用了單神經(jīng)元進(jìn)行的,第3節(jié)將會(huì)對(duì)該控制進(jìn)行詳細(xì)說(shuō)明。
本算法采用BP神經(jīng)網(wǎng)絡(luò)[11]作為控制器,通過(guò)在線學(xué)習(xí)的方法能夠很好地保證系統(tǒng)的穩(wěn)定性。同時(shí)對(duì)于該算法,修改網(wǎng)絡(luò)的輸入輸出可以實(shí)現(xiàn)對(duì)多輸入多輸出系統(tǒng)的控制。
Simulink中,SPNNC對(duì)SISO系統(tǒng)的控制結(jié)構(gòu)如圖1所示。雖然BP神經(jīng)網(wǎng)絡(luò)有很多優(yōu)點(diǎn),但對(duì)于本文設(shè)計(jì)的算法并非必需,因?yàn)閷?duì)于簡(jiǎn)單的SISO系統(tǒng),BP神經(jīng)網(wǎng)絡(luò)可以直接用單神經(jīng)元進(jìn)行代替。用單個(gè)神經(jīng)元代替BP神經(jīng)網(wǎng)絡(luò)作為控制器進(jìn)行控制,對(duì)于簡(jiǎn)單SISO系統(tǒng)不僅不會(huì)影響控制器的控制效果,而且結(jié)構(gòu)簡(jiǎn)單、計(jì)算耗時(shí)短、收斂快[11-13]。關(guān)于用單個(gè)神經(jīng)元進(jìn)行控制將會(huì)在下面的小節(jié)中詳細(xì)介紹。
圖1 狀態(tài)預(yù)測(cè)神經(jīng)網(wǎng)絡(luò)控制結(jié)構(gòu)Fig.1 Structure of State Prediction Neural Network Control (SPNNC)
圖1中神經(jīng)網(wǎng)絡(luò)控制(NNC)部分在進(jìn)行控制之前需對(duì)數(shù)據(jù)做預(yù)處理,即保存當(dāng)前誤差e(k),并將e(k)、e(k-1)、e(k-2)作為神經(jīng)網(wǎng)絡(luò)的3個(gè)輸入同時(shí)送入BP神經(jīng)網(wǎng)絡(luò)控制器模塊。BP神經(jīng)網(wǎng)絡(luò)控制器會(huì)對(duì)優(yōu)化目標(biāo)進(jìn)行優(yōu)化,計(jì)算出控制量u(k),然后將控制量u(k)輸入到被控對(duì)象中參與控制。
BP神經(jīng)網(wǎng)絡(luò)控制器的網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。其中隱層神經(jīng)元的個(gè)數(shù)可因不同情況進(jìn)行調(diào)整。
圖2 3輸入1輸出BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)Fig.2 BP neural network structure of 3 inputs and 1 output
當(dāng)將SPNNC應(yīng)用于特定情況(系統(tǒng)未來(lái)的狀態(tài)可以通過(guò)狀態(tài)方程進(jìn)行預(yù)測(cè))的MIMO系統(tǒng)時(shí),BP神經(jīng)網(wǎng)絡(luò)將采用如圖3所示的結(jié)構(gòu)。其中每一個(gè)參考量rs與反饋ys的差相鄰的3個(gè)時(shí)刻值對(duì)應(yīng)神經(jīng)網(wǎng)絡(luò)輸入層的3個(gè)神經(jīng)元xs1、xs2、xs3,輸出層的ys對(duì)應(yīng)被控對(duì)象的控制輸入。
對(duì)于SISO系統(tǒng),圖2中的神經(jīng)網(wǎng)絡(luò)可以用單神經(jīng)元結(jié)構(gòu)代替,如圖4所示。
對(duì)于圖3更為一般的結(jié)構(gòu),其前向計(jì)算過(guò)程用矩陣可表示為
圖3 MIMO系統(tǒng)中BP神經(jīng)網(wǎng)絡(luò)控制器結(jié)構(gòu)Fig.3 BP neural network control structure in MIMO system
圖4 單神經(jīng)元結(jié)構(gòu)Fig.4 Single neuron structure
(1)
優(yōu)化指標(biāo)為
(2)
式中:X為輸入向量;Hi和Yi分別為參與激活函數(shù)運(yùn)算前隱層和輸出層的數(shù)據(jù)向量;Ho和Yo為激活函數(shù)運(yùn)算后隱層和輸出層的數(shù)據(jù)向量;f1(·)和f2( ·)分別為隱層和輸出層的激活函數(shù);Whx和Wyh分別為輸入層到隱層和隱層到輸出層包含了偏置量的權(quán)重矩陣;rs和ys分別為MIMO系統(tǒng)中第s個(gè)參考量和第s個(gè)系統(tǒng)輸出量;S為輸入輸出總數(shù)。
當(dāng)使用梯度下降法對(duì)式(2)的指標(biāo)進(jìn)行優(yōu)化時(shí),僅需對(duì)當(dāng)前的ri、yi(i=1,2,…,s)進(jìn)行優(yōu)化,而無(wú)需對(duì)歷史數(shù)據(jù)進(jìn)行優(yōu)化。另外,還有一項(xiàng)被控對(duì)象關(guān)于輸入控制量的偏導(dǎo)數(shù)未知,故假設(shè)被控對(duì)象與輸入控制量的關(guān)系滿(mǎn)足:
y=G(u)
(3)
(4)
根據(jù)以上提供的關(guān)系,即可實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)的在線學(xué)習(xí)與前向計(jì)算,進(jìn)而對(duì)被控對(duì)象進(jìn)行控制。
狀態(tài)空間模型本質(zhì)上是將動(dòng)力系統(tǒng)的高階微分方程降為一階多變量微分方程組。對(duì)于一個(gè)線性系統(tǒng),可用狀態(tài)空間模型表示為[14]
(5)
式中:x′(t)∈Rn為狀態(tài)向量;y′(t)∈Rq為輸出向量;u′(t)∈Rp為輸入向量;A′∈Rn×n為狀態(tài)轉(zhuǎn)移矩陣;B′∈Rn×p為輸入矩陣;C′∈Rq×n為輸出矩陣;D′∈Rq×p為前饋矩陣(通常為0);t為系統(tǒng)時(shí)間。為了形式上易于理解,以上變量右上角的“′”僅表示不同的變量,而不是數(shù)學(xué)運(yùn)算。在給定初始值的情況下,計(jì)算式(5)所示微分方程的解,可得
(6)
式中:
(7)
取t=kT(k=0,1,2,…),T為離散系統(tǒng)采樣周期。即可將式(5)離散化:
(8)
式中:x(k)=x′(kT)∈Rn為狀態(tài)向量;y(k)=y′(kT)∈Rq為輸出向量;u(k)=u′(kT)∈Rp為輸入向量;A=(I+A′T)∈Rn×n為狀態(tài)轉(zhuǎn)移矩陣;B=B′T∈Rn×p為輸入矩陣;C=C′∈Rq×n為輸出矩陣;D=D′∈Rq×p為前饋矩陣(通常為0)。
同時(shí)式(7)可變?yōu)?/p>
Φ(k)=Φ′(kT)=eA′kT=I+A′kT+
(9)
將式(9)泰勒展開(kāi)取前兩項(xiàng),做如下近似:
Φ(k)=Φ′(kT)=eA′kT=(eA′T)k≈
(I+A′T)k=Ak
(10)
因此式(6)可變?yōu)?/p>
(11)
式(11)也可以寫(xiě)為
(12)
式(11)和式(12)的區(qū)別在于加和的順序,形式不同而結(jié)果相同。
式(11)和式(12)同樣可以通過(guò)式(8)中狀態(tài)轉(zhuǎn)移方程的累加求和得到,2種計(jì)算方式的結(jié)果相同。下面的計(jì)算中統(tǒng)一使用式(12)。
式(11)和式(12)都是在u(0)~u(k)已知的情況下基于0時(shí)刻狀態(tài)量計(jì)算k時(shí)刻的狀態(tài)量,為了將式(12)應(yīng)用于系統(tǒng)未來(lái)行為預(yù)測(cè),需對(duì)其做適當(dāng)調(diào)整。當(dāng)系統(tǒng)處于k時(shí)刻,并對(duì)系統(tǒng)的k+M時(shí)刻進(jìn)行預(yù)測(cè)時(shí),系統(tǒng)控制輸入u(k)~u(k+M)是未知的,為了實(shí)現(xiàn)較為合理的預(yù)測(cè)可作如下假設(shè):
u(k+i)=ρ(i)u(k)
(13)
式中:ρ(i)為系數(shù)。
系統(tǒng)處于k時(shí)刻時(shí),對(duì)k時(shí)刻到k+M時(shí)刻的系統(tǒng)輸入u(i)可以作各種更為合理的假設(shè),而且系統(tǒng)控制輸入u(i),(i=0,1,…,M)也并非一直起作用??梢约俣刂戚斎胫辉谇癙(P≤M)個(gè)周期起作用,而之后的M-P個(gè)周期無(wú)控制輸入。綜上所述,式(12)可表示為
(14)
由式(8)可知,當(dāng)D=0時(shí),式(8)第2式變?yōu)?/p>
y(k+M)=Cx(k+M)=CAMx(k)+
(15)
當(dāng)M、P、ρ(i)確定后,式(15)可以進(jìn)一步簡(jiǎn)化為
y(k+M)=αx(k)+βu(k)
(16)
因此系統(tǒng)式(8)即變?yōu)?/p>
(17)
式(17)即為狀態(tài)轉(zhuǎn)移方程、輸出方程和預(yù)測(cè)方程。將式(17)與神經(jīng)網(wǎng)絡(luò)控制算法結(jié)合,即可實(shí)現(xiàn)單點(diǎn)預(yù)測(cè)控制。
多變量系統(tǒng)又稱(chēng)多輸入多輸出系統(tǒng),是指系統(tǒng)內(nèi)部存在多個(gè)變量,且普遍存在耦合的復(fù)雜系統(tǒng),如圖5所示。
對(duì)于MIMO系統(tǒng)可以采用各種各樣的解耦控制[15-19],本文提出的SPNNC也可以對(duì)含有特定特征的MIMO系統(tǒng)進(jìn)行解耦控制。這種特征即:系統(tǒng)時(shí)滯小或者可以通過(guò)一定方法(狀態(tài)空間法等)對(duì)系統(tǒng)未來(lái)進(jìn)行預(yù)測(cè)(或粗估計(jì))。式(17)描述的預(yù)測(cè)方法僅限于線性系統(tǒng),而非線性系統(tǒng)則需要線性化。對(duì)于時(shí)滯小的系統(tǒng)可以省去對(duì)未來(lái)的預(yù)測(cè)部分,直接使用神經(jīng)網(wǎng)絡(luò)進(jìn)行控制。而對(duì)于時(shí)滯較大的系統(tǒng),則必須對(duì)系統(tǒng)的未來(lái)進(jìn)行預(yù)測(cè),進(jìn)而實(shí)現(xiàn)穩(wěn)定控制。
對(duì)于RLV-T3小型可回收火箭,所有控制通道均可簡(jiǎn)化為SISO系統(tǒng),即無(wú)需進(jìn)行解耦控制。為了驗(yàn)證SPNNC對(duì)MIMO系統(tǒng)的控制效果,2.2節(jié)將通過(guò)Simulink仿真方法對(duì)此進(jìn)行說(shuō)明。
圖5 MIMO系統(tǒng)Fig.5 MIMO system
RLV-T3小型可回收火箭高為4 500 mm,儲(chǔ)罐直徑為450 mm,起飛質(zhì)量為300 kg,燃料體系為L(zhǎng)OX-EtOH,配備一臺(tái)3 000 N可深度變推力(10%~110%)矢量發(fā)動(dòng)機(jī)。RLV-T3的整體外觀如圖6所示。關(guān)于電氣部分,該火箭帶有一個(gè)姿態(tài)傳感器、一個(gè)3軸加速度傳感器、載波相位差分(RTK)系統(tǒng)、發(fā)動(dòng)機(jī)擺角傳感器、各儲(chǔ)罐壓力傳感器、燃燒室壓力傳感器、點(diǎn)火系統(tǒng)、閥門(mén)控制系統(tǒng)、滅火系統(tǒng)、無(wú)線傳輸系統(tǒng)、電動(dòng)系統(tǒng)、電源管理系統(tǒng)和安控系統(tǒng)。因?yàn)樵撔吞?hào)火箭的研制只是為了驗(yàn)證火箭整體性能和低空火箭回收技術(shù),無(wú)需應(yīng)對(duì)高速、高溫、高壓等極端工況,故整箭的姿態(tài)控制和推力控制僅通過(guò)一個(gè)二自由度可擺動(dòng)矢量發(fā)動(dòng)機(jī)實(shí)現(xiàn)。在箭體飛行過(guò)程中,沿箭體方向的旋轉(zhuǎn)是一個(gè)干擾小項(xiàng),由于僅有一臺(tái)矢量發(fā)動(dòng)機(jī),無(wú)能力也無(wú)必要對(duì)該方向的旋轉(zhuǎn)進(jìn)行控制,在實(shí)際飛行過(guò)程中也驗(yàn)證了該論斷。
由于民間工業(yè)制造能力的限制,該型號(hào)火箭在制造過(guò)程中相較于航天院所內(nèi)各機(jī)械結(jié)構(gòu)精度指標(biāo)略低、電氣技術(shù)可靠性略差,對(duì)箭體的穩(wěn)定性控制造成一定壓力。對(duì)箭體的控制主要存在以下難點(diǎn):RTK數(shù)據(jù)采樣頻率略低(10 Hz)、RTK天線容易受遮擋物的影響(箭體轉(zhuǎn)動(dòng)會(huì)產(chǎn)生影響)、箭體產(chǎn)生的劇烈振動(dòng)對(duì)加速度傳感器影響較大、發(fā)動(dòng)機(jī)推力關(guān)于流量閥圈數(shù)之間呈非線性關(guān)系、系統(tǒng)時(shí)滯、步進(jìn)電機(jī)對(duì)流量閥的機(jī)械傳動(dòng)存在間隙、在飛行過(guò)程中箭體是一個(gè)變質(zhì)量變質(zhì)心物體、發(fā)動(dòng)機(jī)推力線可能與重力線不相交引起箭體自身旋轉(zhuǎn)、低溫液氧容易受環(huán)境影響造成壓力不穩(wěn)定進(jìn)而影響發(fā)動(dòng)機(jī)推力不穩(wěn)定以及箭體結(jié)構(gòu)易發(fā)生變化進(jìn)而質(zhì)心慣量發(fā)生變化等。
圖6 RLV-T3小型可回收火箭整體外觀Fig.6 Overall appearance of RLV-T3 small reusable rocket
為了研究上述算法的可行性,現(xiàn)通過(guò)Simulink仿真進(jìn)行分析。根據(jù)RLV-T3小型回收火箭自身動(dòng)力系統(tǒng)、控制系統(tǒng)的基本參數(shù)建立仿真模型,對(duì)高度控制進(jìn)行仿真分析。被控對(duì)象模型的精細(xì)程度會(huì)影響控制算法參數(shù),進(jìn)而影響控制效果。
RLV-T3采用了氮?dú)庠鰤海谡麄€(gè)飛行過(guò)程中氮?dú)鈮簭?qiáng)大于4 MPa。燃料儲(chǔ)罐和液氧儲(chǔ)罐通過(guò)減壓閥與氮?dú)庀噙B,并在飛行過(guò)程中保持在3.5 MPa。推進(jìn)劑通過(guò)管路經(jīng)過(guò)流量閥后匯入發(fā)動(dòng)機(jī),控制系統(tǒng)根據(jù)傳感器采集的數(shù)據(jù)計(jì)算后控制流量閥和發(fā)動(dòng)機(jī)擺角執(zhí)行機(jī)構(gòu)。流量閥會(huì)根據(jù)控制指令打開(kāi)適宜的開(kāi)口通徑控制推進(jìn)劑流量,進(jìn)而使發(fā)動(dòng)機(jī)產(chǎn)生適宜大小的推力,以保證箭體達(dá)到預(yù)定的運(yùn)動(dòng)效果。而發(fā)動(dòng)機(jī)擺角執(zhí)行機(jī)構(gòu)則根據(jù)箭體運(yùn)動(dòng)狀態(tài)控制發(fā)動(dòng)機(jī)推力的方向,進(jìn)而控制箭體的運(yùn)動(dòng)。
高度傳感器采用的是0.03 m精度、10 Hz采樣頻率的RTK,該傳感器可以提供經(jīng)緯度和高度三維信息,利用這些信息實(shí)現(xiàn)閉環(huán)控制。流量閥通過(guò)步進(jìn)電機(jī)進(jìn)行控制,而步進(jìn)電機(jī)通過(guò)處理器輸出一定數(shù)量的脈沖到電機(jī)驅(qū)動(dòng)進(jìn)行控制,每一個(gè)脈沖可對(duì)應(yīng)步進(jìn)電機(jī)轉(zhuǎn)過(guò)對(duì)應(yīng)的角度,因此
dθ=k1u(t)dt
(18)
式中:k1為比例系數(shù),而步進(jìn)電機(jī)轉(zhuǎn)過(guò)的圈數(shù)可表示為
(19)
式中:τ0為控制量從產(chǎn)生到完成存在的延時(shí)。在推進(jìn)劑儲(chǔ)罐壓強(qiáng)固定的情況下,假設(shè)發(fā)動(dòng)機(jī)產(chǎn)生的推力與流量閥圈數(shù)之間的關(guān)系滿(mǎn)足:
F(t)=f(C)=f{C[u(t)]}
(20)
假設(shè)火箭在飛行過(guò)程中推進(jìn)劑秒耗量滿(mǎn)足:
(21)
則飛行過(guò)程中火箭整體實(shí)時(shí)質(zhì)量為
(22)
由牛頓第二定律可知
F(t)-m(t)g=m(t)a(t)
(23)
式中:g為沒(méi)有方向的重力加速度常數(shù)。即得
(24)
加速度經(jīng)過(guò)兩次積分可得
(25)
將上述過(guò)程整理后得
h(t)=F(u(t))
(26)
即箭體高度與控制量脈沖數(shù)的關(guān)系是非線性關(guān)系,且其中推力與流量閥圈數(shù)的關(guān)系式(20)也是非線性關(guān)系,因此無(wú)法準(zhǔn)確地得到其傳遞函數(shù)。其結(jié)構(gòu)如圖7所示。
該被控對(duì)象具有復(fù)雜的非線性環(huán)節(jié),使用經(jīng)典控制理論的分析方法難以獲得系統(tǒng)穩(wěn)定的參數(shù)。而對(duì)于RLV-T3的真實(shí)情況,其物理結(jié)構(gòu)易發(fā)生變化,系統(tǒng)特性變化范圍大,對(duì)控制器的魯棒性要求很高。對(duì)于此復(fù)雜的非線性系統(tǒng),使用SPNNC可以?xún)H取其重要的線性環(huán)節(jié),而忽略掉非線性環(huán)節(jié)。即僅考慮其加速度積分到位移的部分,并據(jù)此列出系統(tǒng)方程對(duì)系統(tǒng)未來(lái)進(jìn)行預(yù)測(cè),因?yàn)橥ㄟ^(guò)下面的試驗(yàn)可以看出,SPNNC極強(qiáng)的魯棒性可以容納這些控制誤差。
下面建立離散時(shí)間狀態(tài)預(yù)測(cè)神經(jīng)網(wǎng)絡(luò)控制器:
如前所述,對(duì)于SISO系統(tǒng)可以將神經(jīng)網(wǎng)絡(luò)簡(jiǎn)化為一個(gè)神經(jīng)元實(shí)現(xiàn)控制。對(duì)于圖4的單神經(jīng)元,設(shè)參考量與預(yù)測(cè)反饋值的差為
e(k)=r(k)-y(k+M)
(27)
設(shè)神經(jīng)元輸入向量為
X(k)=Li×[e(k)e(k-1)e(k-2)]T
(28)
式中:Li為入口系數(shù)。設(shè)權(quán)重為
(29)
設(shè)激活函數(shù)為
(30)
則神經(jīng)元的前向計(jì)算為
(31)
式中:Lo為出口系數(shù);b為偏置量。入口系數(shù)和出口系數(shù)是為使神經(jīng)元的優(yōu)化性能最大化而定的常數(shù),因不同被控對(duì)象而異。
優(yōu)化指標(biāo)為
(32)
對(duì)于狀態(tài)預(yù)測(cè)部分,僅需考慮箭體遵從牛頓第2定律而產(chǎn)生運(yùn)動(dòng)的部分,即設(shè)狀態(tài)量為
x=[vh]T
(33)
則式(17)變?yōu)?/p>
(34)
(35)
其中:T為控制周期;ρ(i)為權(quán)重序列;P為加速度項(xiàng)作用長(zhǎng)度;M為預(yù)測(cè)步長(zhǎng)。
當(dāng)面對(duì)不同的被控對(duì)象時(shí),控制周期T是固定的,權(quán)重序列一般由1到0均勻取P個(gè)數(shù)。對(duì)于具有線性運(yùn)動(dòng)特征的被控對(duì)象,式(34)都不變,所以對(duì)于不同的被控對(duì)象,主要調(diào)整P和M,以及輔助調(diào)整Li、Lo即可。對(duì)于圖7的被控對(duì)象,經(jīng)過(guò)調(diào)整以上參數(shù)后,控制器對(duì)階躍信號(hào)的響應(yīng)如圖8所示??刂破鲗?duì)正弦信號(hào)的響應(yīng)如圖9所示。從圖8和圖9可知該算法響應(yīng)時(shí)間4 s,對(duì)周期大于8 s的正弦信號(hào)幅頻特性跟隨良好。
圖7 RLV-T3高度控制通道被控對(duì)象Fig.7 Controlled plant of height control channel of RLV-T3
圖8 SPNNC對(duì)階躍信號(hào)的響應(yīng)Fig.8 SPNNC’s response to step signal
圖9 SPNNC對(duì)正弦信號(hào)的響應(yīng)Fig.9 SPNNC’s response to sinusoidal signal
2.2節(jié)中針對(duì)RLV-T3小型可回收火箭建立了時(shí)域仿真模型,并設(shè)計(jì)了SPNNC控制器。本小節(jié)將比較SPNNC和PID 2種控制器的控制效果。SPNNC對(duì)高度的控制使用了RLV-T3飛行過(guò)程中采集到的高度、速度、加速度3種信息,PID控制器同樣使用這3種信息構(gòu)成串聯(lián)PID控制器。SPNNC控制器的結(jié)構(gòu)如圖1所示,三級(jí)串聯(lián)PID如圖10所示。
RLV-T3小型可回收火箭對(duì)建立仿真模型存在諸多不確定因素,其中最大的不確定因素是發(fā)動(dòng)機(jī)關(guān)于流量閥的推力曲線。由于實(shí)際情況的限制,RLV-T3使用的LinkPower-3發(fā)動(dòng)機(jī)無(wú)法進(jìn)行與RLV-T3相同狀態(tài)下的出廠測(cè)試。測(cè)試獲得的推力曲線僅可作為發(fā)動(dòng)機(jī)基本性能評(píng)估,不可作為RLV-T3仿真模型中發(fā)動(dòng)機(jī)推力關(guān)于流量閥曲線的精確模型。因此RLV-T3仿真模型中的推力曲線只能在一定范圍內(nèi)粗略估計(jì)。由此帶來(lái)的控制負(fù)擔(dān)需要由控制算法來(lái)承擔(dān)。
RLV-T3仿真模型的發(fā)動(dòng)機(jī)性能備選了7種不同的推力曲線,如圖11所示。
圖10 三級(jí)串聯(lián)PID控制器結(jié)構(gòu)Fig.10 Structure of series PID controller
圖11 發(fā)動(dòng)機(jī)推力曲線Fig.11 Thrust curves of engine
其中數(shù)據(jù)1較為接近理論推力曲線,其他6條數(shù)據(jù)曲線為在一定范圍內(nèi)做拉偏后的曲線。固定發(fā)動(dòng)機(jī)推力曲線后保持被控對(duì)象不變,分別使用SPNNC和PID控制器進(jìn)行控制,根據(jù)得到的飛行高度數(shù)據(jù)曲線可對(duì)比SPNNC和PID的控制性能。保持SPNNC和PID不變,分別使用7條推力曲線去檢驗(yàn)2種控制器的控制效果,可檢驗(yàn)2種控制器在復(fù)雜不確定因素下的控制性能。
推力曲線采用數(shù)據(jù)1,保持被控對(duì)象不變調(diào)整參數(shù)將2種控制器整定到最佳控制狀態(tài),得到PID的12個(gè)控制參數(shù)和SPNNC的2個(gè)控制參數(shù)如表1所示,控制效果如圖12所示。由參數(shù)的數(shù)量可以看出,通過(guò)試驗(yàn)對(duì)控制器的參數(shù)進(jìn)行整定時(shí),SPNNC更容易整定。
圖12 兩種控制器對(duì)數(shù)據(jù)1的階躍響應(yīng)Fig.12 Step response of two controllers to data 1
在保持2種控制器不變的情況下,使用7條推力曲線檢驗(yàn)2種控制器的控制性能,獲得2個(gè)控制器的7個(gè)控制性能指標(biāo)。經(jīng)驗(yàn)證2個(gè)控制器在7個(gè)推力曲線下均未出現(xiàn)劇烈失穩(wěn)的情況。7個(gè)控制性能指標(biāo)分別是穩(wěn)態(tài)值、穩(wěn)態(tài)誤差、上升時(shí)間、峰值時(shí)間、調(diào)節(jié)時(shí)間、超調(diào)量、穩(wěn)定后標(biāo)準(zhǔn)差。7個(gè)控制性能指標(biāo)計(jì)算規(guī)則如下:
穩(wěn)態(tài)值:選取20~45 s之間數(shù)據(jù)的均值。
表1 SPNNC和PID的控制參數(shù)Table 1 Control parameters of SPNNC and PID
穩(wěn)態(tài)誤差:穩(wěn)態(tài)值與單位階躍信號(hào)1的差。
上升時(shí)間:響應(yīng)信號(hào)第1次達(dá)到穩(wěn)態(tài)值95%的時(shí)間。
峰值時(shí)間:響應(yīng)信號(hào)達(dá)到最大值時(shí)的時(shí)間。
調(diào)節(jié)時(shí)間:響應(yīng)信號(hào)達(dá)到峰值后再次進(jìn)入95%~105%穩(wěn)態(tài)值的時(shí)間。
超調(diào)量:響應(yīng)信號(hào)的最大峰值與穩(wěn)態(tài)值的差同穩(wěn)態(tài)值的比。
穩(wěn)定后標(biāo)準(zhǔn)差:響應(yīng)信號(hào)在20~45 s范圍內(nèi)的標(biāo)準(zhǔn)差。
計(jì)算后得到表2。其中數(shù)據(jù)1對(duì)應(yīng)的圖像為圖12。由表2中數(shù)據(jù)可以看出,在數(shù)據(jù)1對(duì)應(yīng)的推力曲線下,SPNNC和PID控制效果總體差別不是很大。PID控制器的穩(wěn)態(tài)誤差和上升時(shí)間都優(yōu)于SPNNC,峰值時(shí)間和超調(diào)量遜于SPNNC,而穩(wěn)定后標(biāo)準(zhǔn)差兩者基本相同。而對(duì)于其他數(shù)據(jù)對(duì)應(yīng)的推力曲線,除了數(shù)據(jù)3的穩(wěn)態(tài)誤差(穩(wěn)態(tài)值與穩(wěn)態(tài)誤差直接相關(guān))和數(shù)據(jù)5與數(shù)據(jù)7的上升時(shí)間顯示出PID略?xún)?yōu),其他所有指標(biāo)均顯示SPNNC優(yōu)于PID,SPNNC控制器具有絕對(duì)優(yōu)勢(shì)。以上的數(shù)據(jù)與分析充分說(shuō)明了SPNNC優(yōu)越的魯棒性與滿(mǎn)足需求的控制精度。
表2 兩種控制器對(duì)7種推力曲線的性能指標(biāo)Table 2 Performance indexes of two controllers for 7 thrust curves
假設(shè)存在以下系統(tǒng):
(36)
對(duì)于該線性系統(tǒng),可以使用式(17)進(jìn)行描述和預(yù)測(cè),因此可以使用SPNNC進(jìn)行控制。為了驗(yàn)證其控制效果,下面通過(guò)Simulink進(jìn)行仿真,其控制結(jié)構(gòu)如圖13所示。
其中BP神經(jīng)網(wǎng)絡(luò)采用了6輸入2輸出3層神經(jīng)網(wǎng)絡(luò),被控對(duì)象模塊為式(17)描述的狀態(tài)轉(zhuǎn)移方程和輸出方程,狀態(tài)預(yù)測(cè)模塊為式(17)描述的預(yù)測(cè)方程。通過(guò)調(diào)整適當(dāng)?shù)膮?shù),即可得到如下控制效果。圖14為被控對(duì)象在控制器作用下對(duì)于2個(gè)階躍信號(hào)的響應(yīng)效果,圖15為一個(gè)階躍信號(hào)和一個(gè)正弦信號(hào)的響應(yīng)效果。
由仿真可知,SPNNC對(duì)于式(36)描述的MIMO系統(tǒng)的控制響應(yīng)時(shí)間較短、幅頻和相頻跟隨特性好,可以實(shí)現(xiàn)解耦控制。
為了說(shuō)明SPNNC對(duì)式(36)系統(tǒng)控制的魯棒性,現(xiàn)將式(36)中被控對(duì)象的輸入矩陣B做拉偏處理,即假設(shè)
(37)
式中:r=0.2,0.33,1,3,5。對(duì)于圖14所示的2個(gè)參考輸入,保持狀態(tài)預(yù)測(cè)部分參數(shù)不變、神經(jīng)網(wǎng)絡(luò)控制器參數(shù)不變,對(duì)不同的r進(jìn)行控制仿真,得到如圖16所示的效果。
圖13 狀態(tài)預(yù)測(cè)神經(jīng)網(wǎng)絡(luò)控制算法應(yīng)用于MIMO系統(tǒng)示例Fig.13 Example of SPNNC applied to MIMO system
圖14 SPNNC對(duì)MIMO系統(tǒng)的控制效果Fig.14 SPNNC’s control effect in MIMO system
圖15 SPNNC對(duì)MIMO系統(tǒng)不同信號(hào)的控制效果Fig.15 SPNNC’s control effect with different signal in MIMO system
圖16 不精準(zhǔn)被控模型下的SPNNC控制效果Fig.16 SPNNC’s effect with inaccurate plant
由圖16可知,當(dāng)輸入矩陣發(fā)生一定幅度變化時(shí)SPNNC依然可以實(shí)現(xiàn)穩(wěn)定控制,r越接近1控制效果越好。這種方法并不嚴(yán)謹(jǐn),但能從一定角度反映SPNNC的魯棒性。
進(jìn)一步考察SPNNC對(duì)非線性系統(tǒng)的控制能力。假設(shè)實(shí)際被控對(duì)象的狀態(tài)方程為
(38)
其他量不變。
對(duì)于式(38)描述的系統(tǒng),首先通過(guò)泰勒展開(kāi)將非線性狀態(tài)方程線性化進(jìn)而進(jìn)行預(yù)測(cè),可得到使用SPNNC控制器得到的控制效果如圖17所示。
圖17 非線性被控模型下的SPNNC控制效果Fig.17 SPNNC’s effect with nonlinear plant
由圖17可見(jiàn),對(duì)于非線性系統(tǒng)線性化之后使用狀態(tài)方程進(jìn)行預(yù)測(cè)依然可以實(shí)現(xiàn)穩(wěn)定控制,只是存在微量穩(wěn)態(tài)誤差。這也體現(xiàn)了SPNNC的一個(gè)缺點(diǎn),那就是控制精度略差,對(duì)此第3節(jié)將會(huì)進(jìn)一步說(shuō)明。
為了驗(yàn)證SPNNC的性能,使用圖6中的火箭進(jìn)行了多次試驗(yàn)驗(yàn)證。下面針對(duì)其中一次飛行試驗(yàn)進(jìn)行說(shuō)明。
本次飛行試驗(yàn)高度通道指令曲線如圖17中實(shí)線所示,即分為上升、高度保持、下降、軟著陸4個(gè)階段。
上升階段:該階段為點(diǎn)火后至第18 s,在該階段目標(biāo)高度持續(xù)上升。
高度保持階段:該階段為18~26 s,在該階段,箭體高度保持在6.5 m。
下降階段:該階段為26~37 s,在該階段目標(biāo)高度以一定速度下降。
軟著陸階段:該階段為37 s至結(jié)束,目標(biāo)高度停在0.1 m。目標(biāo)高度設(shè)為0.1 m直至關(guān)機(jī)。
表3列出了本次飛行試驗(yàn)的狀態(tài)參數(shù)和試驗(yàn)數(shù)據(jù)。本次飛行試驗(yàn)耗時(shí)為43.5 s。
表3 試驗(yàn)數(shù)據(jù)Table 3 Test data
圖18為RLV-T3小型可回收火箭在飛行過(guò)程中高度與目標(biāo)高度的關(guān)系,實(shí)際過(guò)程對(duì)指令的響應(yīng)時(shí)間4 s左右,其中高度保持階段目標(biāo)高度與箭體實(shí)際高度之差最大為0.2 m,平均定高6.4 m。圖19(a)為RLV-T3飛行過(guò)程中在大地坐標(biāo)系下3個(gè)軸向的速度數(shù)據(jù),其中z軸方向即為高度方向,上升階段最大速度0.7 m/s,下降階段最大速度0.7 m/s,著陸速度為0 m/s,無(wú)沖擊。圖19(b)為箭體豎直方向的運(yùn)動(dòng)加速度,由圖中可以看出箭體在飛行過(guò)程中振動(dòng)較大,除了點(diǎn)火瞬間,上下加速度絕對(duì)值不超過(guò)0.75 m/s2。
圖18 基于SPNNC的RLV-T3飛行測(cè)試Fig.18 RLV-T3 flight test based on SPNNC
圖19 箭體飛行過(guò)程中參數(shù)變化Fig.19 Parameters changing during the flight
圖19(c)箭體在飛行過(guò)程中SPNNC對(duì)流量閥控制的過(guò)程。圖19(d)箭體在飛行過(guò)程中兩個(gè)軸向的姿態(tài)角。
本次試驗(yàn)場(chǎng)景圖如圖20所示。
圖20 RLV-T3小型可回收火箭飛行試驗(yàn)Fig.20 Flight test of RLV-T3 small reusable rocket
從RLV-T3小型可回收火箭試驗(yàn)數(shù)據(jù)可以看出,上升階段與下降階段對(duì)目標(biāo)高度的跟隨較為平穩(wěn),高度保持階段最大定高誤差為0.2 m,最大穩(wěn)態(tài)誤差為0.1 m。軟著陸階段,速度曲線和加速度曲線顯示著陸平穩(wěn),著陸無(wú)沖擊。試驗(yàn)過(guò)程中SPNNC根據(jù)箭體加速度、速度、位置進(jìn)行控制,動(dòng)態(tài)地調(diào)整流量閥,使箭體處于動(dòng)態(tài)平衡中。整個(gè)試驗(yàn)過(guò)程,高度控制與姿態(tài)控制解耦,箭體姿態(tài)較為平穩(wěn),通過(guò)一個(gè)小的角度抵御風(fēng)的干擾。通過(guò)以上數(shù)據(jù)分析,使用SPNNC對(duì)RLV-T3的高度可以實(shí)現(xiàn)一定精度內(nèi)的穩(wěn)定控制。
1) RLV-T3小型可回收火箭是國(guó)內(nèi)第一枚利用民間工業(yè)力量加工生產(chǎn),并實(shí)現(xiàn)了垂直起飛、彈道飛行、空中懸停、軟著陸回收全流程的火箭。對(duì)于翎客航天的VTVL技術(shù),SPNNC起到了至關(guān)重要的作用,其極強(qiáng)的魯棒性和快速響應(yīng)能力保證了火箭較大變化時(shí)的控制穩(wěn)定性,同時(shí)又保證了滿(mǎn)足要求的控制精度。
2) 經(jīng)過(guò)近百次的飛行試驗(yàn)發(fā)現(xiàn),SPNNC具有很多優(yōu)勢(shì)和不足。SPNNC的優(yōu)勢(shì)包括在線學(xué)習(xí)收斂快、魯棒性強(qiáng)、通用性強(qiáng)、可應(yīng)對(duì)非線性復(fù)雜系統(tǒng)(可部分線性化)、可應(yīng)對(duì)多變量復(fù)雜系統(tǒng),參數(shù)少、整定簡(jiǎn)便。同時(shí)SPNNC也存在一些不足,例如控制精度略低、無(wú)法控制長(zhǎng)時(shí)滯不可預(yù)測(cè)系統(tǒng)。對(duì)于SPNNC的低控制精度,究其原因,對(duì)未來(lái)的預(yù)測(cè)是單點(diǎn)預(yù)測(cè),優(yōu)化也是單點(diǎn)優(yōu)化,下一步的研究方向?qū)⑹嵌帱c(diǎn)預(yù)測(cè)和多點(diǎn)優(yōu)化對(duì)SPNNC控制精度的影響。除此之外還需增加反饋校正環(huán)節(jié),提高控制精度。
3) 對(duì)于SPNNC的穩(wěn)定性,涉及神經(jīng)網(wǎng)絡(luò)、非線性系統(tǒng)、預(yù)測(cè)、多變量,是一個(gè)非常復(fù)雜的系統(tǒng)[20-22],還無(wú)法給出嚴(yán)密的數(shù)學(xué)證明,同時(shí)也無(wú)法給出預(yù)測(cè)步長(zhǎng)關(guān)于被控對(duì)象的數(shù)學(xué)關(guān)系,這也是下一步的研究方向。但其控制效果已經(jīng)在RLV-T3的飛行試驗(yàn)中得到充分展示。