南京航空航天大學(xué) 航天學(xué)院 微小衛(wèi)星研究中心,南京 210016
近年來隨著深度學(xué)習(xí)理論體系日趨完善,人工智能技術(shù)應(yīng)用于越來越多的領(lǐng)域,但針對航天領(lǐng)域的深度學(xué)習(xí)應(yīng)用目前還處于探索階段。這是因為航天活動相比一般工業(yè)生產(chǎn),場景比較單一,且個體差異性較大,數(shù)據(jù)積累有限,機器學(xué)習(xí)深度有限。但隨著商業(yè)航天的蓬勃發(fā)展,人類進入空間越來越多,人工智能在航天的應(yīng)用有了一個契機。
通過對近年來各個國家航天任務(wù)的分析發(fā)現(xiàn),空間在軌操作活動日益增加,如德國的DEOS項目[1]、美國的FREND項目[2]和中國神舟9號與天宮一號對接,航天任務(wù)已從過去單一航天器向在軌組合航天器發(fā)展,場景日益復(fù)雜,數(shù)據(jù)大量產(chǎn)生。這為深度學(xué)習(xí)的應(yīng)用提供了基礎(chǔ)。在軌服務(wù)過程中的航天器組合體質(zhì)量、質(zhì)心位置、慣量矩陣在軌辨識是航天器姿軌操控的基礎(chǔ)。這些多參數(shù)的在軌辨識,本質(zhì)上是一個動態(tài)尋優(yōu)過程。借助深度學(xué)習(xí)在參數(shù)尋優(yōu)上的優(yōu)勢,可以通過特征提取來辨識組合體質(zhì)量、質(zhì)心位置和轉(zhuǎn)動慣量等參數(shù)。
目前國內(nèi)外有很多學(xué)者針對航天器慣性參數(shù)辨識進行相應(yīng)研究。文獻(xiàn)[3]提出了基于Adaline神經(jīng)網(wǎng)絡(luò)的航天器慣性參數(shù)辨識,通過改進LMS準(zhǔn)則來解決神經(jīng)網(wǎng)絡(luò)辨識過程中陷入局部最小的問題,其實質(zhì)上還是對傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)的一個改進。文獻(xiàn)[4]提出了一種兩步辨識航天器轉(zhuǎn)動慣量的方法,第一步針對航天器轉(zhuǎn)動慣量比進行辨識,第二步基于辨識得到的轉(zhuǎn)動慣量比,利用陀螺信息結(jié)合最小二乘法得到轉(zhuǎn)動慣量的值,但未能分析初始值對仿真結(jié)果精度的影響。文獻(xiàn)[5]提出了兩種慣量辨識的方法,第一種是基于角動量守恒和整星零動量原理,利用反作用飛輪和陀螺,用最小二乘法實現(xiàn)轉(zhuǎn)動慣量在軌辨識;第二種利用自適應(yīng)控制方法實現(xiàn)對組合體的慣量估計,雖然該方法能實現(xiàn)姿態(tài)穩(wěn)定狀態(tài)下對慣量結(jié)果的估計,但精度較差。文獻(xiàn)[6]基于機械臂運動實現(xiàn)對組合體航天器的全慣量辨識,但在數(shù)據(jù)仿真中未加入外界干擾因素。文獻(xiàn)[7]提出了一種基于QR分解的遞推最小二乘法,利用空間機器人基座姿態(tài)無擾控制過程中的數(shù)據(jù)實現(xiàn)對全部慣性參數(shù)的辨識。文獻(xiàn)[8]提出了開環(huán)辨識和閉環(huán)辨識兩種方法,閉環(huán)辨識是在開環(huán)辨識上再加閉環(huán)控制器實現(xiàn)在姿態(tài)穩(wěn)定下對轉(zhuǎn)動慣量的辨識。文獻(xiàn)[9]提出了一種無陀螺航天器質(zhì)量特性估計算法,利用CMOS-APS跟蹤器,設(shè)計了含姿態(tài)和無姿態(tài)估計算法。文獻(xiàn)[10]提出了一種基于PAST算法的時變慣量參數(shù)的辨識,利用姿態(tài)信息和振動信號解算系統(tǒng)狀態(tài)參數(shù)。文獻(xiàn)[11]針對實際地面氣浮臺系統(tǒng),提出了一種無需外界沖擊,依靠安裝于氣浮平臺的立方星振動辨識整個系統(tǒng)動力學(xué)參數(shù)的方法。文獻(xiàn)[12]提出了一種針對目標(biāo)動量未知的情況下的慣性參數(shù)分布辨識算法,算法能夠保證在辨識過程中基座姿態(tài)穩(wěn)定。
以上文獻(xiàn)所提到的辨識方法都有一個局限性,其辨識基本原理都基于動量守恒定理,即都假設(shè)航天器不受外力和外力矩影響,但實際上外力普遍存在,且需要預(yù)先對航天器進行動力學(xué)建模。目前神經(jīng)網(wǎng)絡(luò)在航天中的辨識應(yīng)用主要集中于傳感器和執(zhí)行器的精度和壽命預(yù)測[13-15]。深度學(xué)習(xí)常用的方法有卷積神經(jīng)網(wǎng)絡(luò)、受限玻爾茲曼機、自動編碼器、深度信念網(wǎng)絡(luò)和循環(huán)神經(jīng)網(wǎng)絡(luò),目前主流的深度學(xué)習(xí)框架有Caffe,TensorFlow,CNTK等[16-19]。CNN神經(jīng)網(wǎng)絡(luò)是一種深度學(xué)習(xí)下的神經(jīng)網(wǎng)絡(luò),目前大量應(yīng)用于圖像識別[20-22],偵測[23-24]和分割[23],其具有局部視野與權(quán)值共享的特點,適用于大數(shù)據(jù)與特定特征提取的場景?;诖颂匦?,本文提出一種基于CNN深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)的航天器在軌慣性參數(shù)辨識方法,該方法考慮組合航天器受外力和外力矩不為零的情況,通過對航天器基礎(chǔ)動力學(xué)的推導(dǎo),從狀態(tài)數(shù)據(jù)中就可辨識組合航天器的質(zhì)量、質(zhì)心和轉(zhuǎn)動慣量。
不失一般性,假設(shè)航天器組合體之間為剛性連接,組合航天器為剛體。大多數(shù)情況下,組合體航天器所受的合外力一般不為零,這里既有自身推力作用,又有環(huán)境干擾力的影響。整個航天器組合體的線動量表達(dá)式如下:
P=PS+PT=P0+Ft(1)
式中:P為組合航天器總線動量;PS為服務(wù)航天器的線動量;PT為目標(biāo)航天器的線動量;P0為組合體初始狀態(tài)線動量,假設(shè)在捕獲瞬間系統(tǒng)線動量守恒,由于目標(biāo)航天器自身具有線速度,所以系統(tǒng)初始線動量為未知量;F為組合航天器所受的外力的合力;t為組合航天器控制周期。
假設(shè)航天器測量的速度為相對于地心慣性坐標(biāo)系的速度,如圖1所示,pS,pT,pC分別為服務(wù)航天器質(zhì)心、組合航天器質(zhì)心和目標(biāo)航天器質(zhì)心在慣性系下的矢量;rS,rT分別為服務(wù)航天器質(zhì)心和目標(biāo)航天器質(zhì)心在慣性系下相對于組合航天器質(zhì)心矢量;vS,vC,vT分別為服務(wù)航天器質(zhì)心、組合體質(zhì)心和目標(biāo)航天器質(zhì)心相對慣性坐標(biāo)系的速度。由于組合體為剛體,根據(jù)速度之間的牽連關(guān)系可得出下列關(guān)系式。
(2)
(3)
服務(wù)航天器和目標(biāo)航天器的線動量可分別表示為:
(4)
將式(4)代入式(1)得到組合航天器線動量守恒表達(dá)式。
(5)
式中:P0為初始時刻系統(tǒng)線動量,可以寫為:
P0=mSvS0+mTvT0(6)
式中:vS0,vT0分別為初始時刻服務(wù)航天器與目標(biāo)航天器的線速度。
將式(3)代入式(6)可得:
(7)
將式(7)代入式(5):
Ft=mS(vS-vS0)+
(8)
將式(8)寫成與辨識時間相關(guān)量:
(9)
從圖1分析可知,在慣性系下pT-pS等于rT-rS,將式(9)通過移項可得:
式中:A矩陣中的量都可通過服務(wù)航天器傳感器測量獲得為已知量。整個方程中所需辨識的量為mT和rT-rS,從圖1可以看出,rT-rS為服務(wù)航天器質(zhì)心指向目標(biāo)航天器質(zhì)心的矢量。上述參數(shù)辨識的過程實際上是線性方程求解的過程。
辨識的誤差主要由兩部分構(gòu)成:1)外界環(huán)境擾動力;2)速度測量誤差。所以式(10)在考慮誤差后可寫成:
(11)
其中:
假設(shè)只存在外界干擾力,速度和角速度測量不存在誤差,則式(11)可寫成:
式中:t為組合航天器控制周期。將式(12)通過移項推導(dǎo)可得:
(13)
式(13)右邊第二項為外界環(huán)境擾動力對目標(biāo)質(zhì)量辨識產(chǎn)生的影響,即
ΔmT=f(ΔF)=
(14)
從式(14)可以看出,質(zhì)量辨識誤差和干擾力矩累積量成正比;并且在干擾力矩確定的情況下,衛(wèi)星速度越大,質(zhì)量辨識誤差越小。
假設(shè)只有速度誤差,式(11)可寫為:
vS(k)-vS0+ΔvS(k)+ΔvS0(k)+
(15)
將式(15)寫成式(13)的形式:
(16)
式(16)右邊第二項即為速度測量誤差所引入的辨識誤差。
ΔmT=f(ΔvS)=-
(17)
從式(17)可以看出,質(zhì)量估計誤差與速度測量誤差成正比,衛(wèi)星質(zhì)量越大引起的質(zhì)量估計誤差越大。
假設(shè)只有角速度測量存在誤差,式(11)可寫成:
(18)
將式(18)結(jié)合矩陣求逆公式
(A+B)-1=Α-1-(A+B)-1BA-1(19)
可得:
(20)
式(20)右邊第二項即為角速度測量誤差所引起的目標(biāo)相對服務(wù)航天器質(zhì)心位置辨識誤差。
(21)
式(21)即為質(zhì)心位置辨識誤差公式,可以看出,在場景確定的情況下,質(zhì)心測量偏差與角速度測量誤差相關(guān),但不是線性關(guān)系。
綜上公式推導(dǎo)過程,根據(jù)式(14)和式(17),可得出在質(zhì)量辨識過程中總誤差公式:
ΔmT=f(ΔF,ΔvS)=
(22)
從式(22)中不難發(fā)現(xiàn)質(zhì)量辨識的精度取決于外界干擾力和速度測量誤差,并且提高衛(wèi)星速度可以有效降低質(zhì)量辨識誤差。
從上述分析可以看出,質(zhì)量和質(zhì)心位置的辨識實際上是一個多元方程求解的問題,通過激勵獲得多組參數(shù)從而進行多參數(shù)求解優(yōu)化的過程。由此可以引入擅長數(shù)據(jù)學(xué)習(xí)的人工智能CNN神經(jīng)網(wǎng)絡(luò),進行訓(xùn)練求解。CNN神經(jīng)網(wǎng)絡(luò)相比傳統(tǒng)神經(jīng)網(wǎng)絡(luò)具有參數(shù)共享和局部感知的特點。如衛(wèi)星慣性參數(shù)在短時間內(nèi)是常量,因此可以作為共享參數(shù),利用CNN神經(jīng)網(wǎng)絡(luò)參數(shù)共享的特點,通過對航天器狀態(tài)信息學(xué)習(xí),就可求取該特征參數(shù)。
由于實際航天器組合系統(tǒng)通常是非線性系統(tǒng),因此需要在CNN神經(jīng)網(wǎng)絡(luò)輸出端引入激活函數(shù)用來加入非線性因素。常用激活函數(shù)主要有Sigmod,tanh,Relu等,其函數(shù)曲線如圖2、圖3和圖4所示。Sigmod激活函數(shù)只保留正向輸出特性,而航天器狀態(tài)信息存在負(fù)值,所以該激活函數(shù)不適用于參數(shù)辨識;tanh激活函數(shù)保留了正負(fù)輸出特性,但其在輸入絕對值大于2的情況下會達(dá)到飽和,丟失數(shù)據(jù)中的特征信息;Relu激活函數(shù)也只保留正輸出特性,當(dāng)輸入為負(fù)數(shù)時極易造成神經(jīng)元壞死。通過對上述函數(shù)的分析,選擇tanh函數(shù)作為輸出激活函數(shù)。
組合航天器線動量在慣性系下較大,這會導(dǎo)致在tanh激活函數(shù)下卷積神經(jīng)網(wǎng)絡(luò)輸出數(shù)據(jù)都為±1,卷積神經(jīng)網(wǎng)絡(luò)無法辨識出質(zhì)量和質(zhì)心位置信息。為了能夠準(zhǔn)確辨識出質(zhì)量和質(zhì)心位置信息,本文提出增量的形式對卷積神經(jīng)網(wǎng)絡(luò)進行設(shè)計。
圖2 Sigmod函數(shù)Fig.2 Sigmod function
圖3 tanh函數(shù)Fig.3 tanh function
圖4 Relu函數(shù)Fig.4 Relu function
對式(10)等式左邊的A和等式右邊的量在前后兩個時刻做差,得到線動量增量和線速度增量之間的關(guān)系,可用下式表達(dá):
(23)
式中:帶有Δ的量表示增量。
卷積神經(jīng)網(wǎng)絡(luò)卷積核具有權(quán)值共享的特點,辨識mT和rT-rS轉(zhuǎn)換為確定卷積神經(jīng)網(wǎng)絡(luò)權(quán)值的問題。根據(jù)式(11)設(shè)計如圖5所示的卷積神經(jīng)網(wǎng)絡(luò)。
該卷積神經(jīng)網(wǎng)絡(luò)分為4層:輸入層、卷積層、采樣層和輸出層。輸入層為6×4×N的一個三維矩陣,將傳感器獲取的數(shù)據(jù)按特定格式存儲在該三維矩陣中用于對卷積神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練。卷積層的卷積核為所需要辨識的量mT和rT-rS,該層卷積層的激活函數(shù)選用線性激活,最大程度地減少中間過程數(shù)據(jù)的損失。采樣層采用平均采樣方式,采樣核為2×1的矩陣。輸出層為速度在三軸方向上的分量,該層激活函數(shù)選用tanh函數(shù)保留輸出數(shù)據(jù)的正負(fù)特性。
圖5 質(zhì)量/質(zhì)心位置卷積神經(jīng)網(wǎng)絡(luò)Fig.5 Mass/centroid position convolution neural network
假設(shè)組合體所受外力矩不為零,其角動量公式如下:
(24)
式中:L0為初始角動量,由于目標(biāo)航天器自身具有角速度,所以初始角動量為未知量;T為組合體主動激勵所受外力矩;t為組合航天器控制周期;w為組合航天器相對其質(zhì)心的角速度,可由星載傳感器測量獲得;IC為組合體轉(zhuǎn)動慣量,是待辨識量;Δw為組合體在外部激勵T下作用時長t后所產(chǎn)生的角速度增量。
分析式(24)可知,角動量公式需要獲取前后兩個控制周期間的角速度,且組合體初始時刻的角速度可由服務(wù)航天器的角速度測量獲得。式(24)可寫為如下形式:
(25)
式中:L(k)為k時刻組合體角動量;T(i)為各時刻的主動激勵力矩;w(i)為i時刻的角速度,可由傳感器測量獲得;w0為組合體形成瞬間服務(wù)航天器測量的角速度;IC為組合體轉(zhuǎn)動慣量,為待辨識量。為了便于觀察,將式(25)寫成另一種形式:
(26)
式中:
矩陣元素與式(25)相同。
慣量辨識誤差來自兩部分:1)外界干擾力矩;2)角速度測量誤差。對式(26)加入誤差量可寫為:
(B+ΔB)·
(27)
式中:ΔB為角速度誤差矩陣;ΔT為外界干擾力矩。各干擾源之間不存在相互耦合的關(guān)系,所以可單獨進行分析。
對式(27)進行控制變量分析,設(shè)只有角速度測量有誤差,則式(27)可寫為:
(B+ΔB)·
(28)
對式(28)進一步移項可得:
(29)
式中:ΔI即為角速度測量誤差所帶來的轉(zhuǎn)動慣量辨識誤差。從式(29)可以看出,組合體慣量辨識誤差與角速度測量誤差有關(guān),但其關(guān)系較為復(fù)雜,不是線性關(guān)系。
當(dāng)只有外界干擾力矩時,式(27)可寫為:
(30)
與不存在干擾的辨識公式做差,可得到外界干擾力矩對轉(zhuǎn)動慣量辨識的影響公式:
(31)
從式(31)中可以看出,當(dāng)存在外界干擾力矩時,控制周期越長,慣量誤差越大,且是一個和力矩相關(guān)的累積量。
綜合式(29)和式(31)可得慣量辨識誤差公式:
ΔI=f(ΔB,ΔT(i))=
(32)
根據(jù)式(24)建立卷積神經(jīng)網(wǎng)絡(luò),如圖6所示。
圖6 轉(zhuǎn)動慣量辨識卷積神經(jīng)網(wǎng)絡(luò)Fig.6 Rotational inertia identification convolution neural network
根據(jù)所需辨識參數(shù)數(shù)量和方程的輸入輸出參數(shù),設(shè)計卷積神經(jīng)網(wǎng)絡(luò)輸入層為一6×6×N的三維矩陣,卷積完成后采用平均采樣方式,每個輸入矩陣對應(yīng)3個輸出,輸出激活函數(shù)與質(zhì)量/質(zhì)心位置辨識相同,采用tanh激活函數(shù)限制輸出在一定范圍內(nèi)且保留原始輸出數(shù)據(jù)正負(fù)特性。
為了對所提出的方法進行仿真分析驗證,利用Matlab構(gòu)建卷積神經(jīng)網(wǎng)絡(luò)和生成神經(jīng)網(wǎng)絡(luò)訓(xùn)練數(shù)據(jù),整個仿真運行環(huán)境如表1所示。
表1 仿真軟硬件環(huán)境參數(shù)
設(shè)計服務(wù)航天器慣性參數(shù)如表2所示,目標(biāo)航天器的慣性數(shù)據(jù)如表3所示,組合航天器慣性參數(shù)如表4所示。
表2 服務(wù)航天器慣性參數(shù)
表3 目標(biāo)航天器慣性參數(shù)
表4 組合航天器慣性參數(shù)
設(shè)組合航天器初始線動量為[-86 147.4 80 284.56 905 891.28] kg·m/s,在航天器三軸方向上施加10-4量級的隨機量改變組合體線速度,考慮J2攝動影響,將數(shù)據(jù)按式(23)分別存入輸入輸出三維數(shù)組中,輸入數(shù)組大小為6×4×12 500,輸出數(shù)組大小為3×1×12 500。選擇初始學(xué)習(xí)率為[0.000 5 1 200 1 200 1 200],每個batch的大小為5,對同一個樣本集訓(xùn)練20次。
根據(jù)上述條件設(shè)置,進行仿真驗證,獲得結(jié)果如圖7~圖10所示,可見各仿真結(jié)果都趨向收斂。經(jīng)統(tǒng)計如表5所示,從中可以看出最終辨識結(jié)果都接近真值。從表5可得質(zhì)量和X方向的相對辨識相對誤差在1%以下,Y和Z軸辨識結(jié)果誤差相對較大,在3%以下。仿真結(jié)果表明運用卷積神經(jīng)網(wǎng)絡(luò)可實現(xiàn)對組合航天器質(zhì)量、質(zhì)心位置的高精度辨識,且每次樣本用時僅1.2 s,整個訓(xùn)練時長僅24 s,實現(xiàn)了快速對質(zhì)量和質(zhì)心位置的辨識。
圖7 質(zhì)量辨識結(jié)果Fig.7 Result of mass identification
圖8 質(zhì)心位置辨識結(jié)果Fig.8 Result of centroid location identification
圖9 辨識結(jié)果相對誤差Fig.9 Relative error of identification result
圖10 卷積神經(jīng)網(wǎng)絡(luò)輸出均方誤差Fig.10 Mean square error of convolution neural network′s output
參量辨識結(jié)果誤差/%質(zhì)量70.028kg0.0622相對質(zhì)心位置X1.990m0.521相對質(zhì)心位置Y2.922m2.612相對質(zhì)心位置Z0.9704m2.962
設(shè)組合航天器初始角動量為[0.042 24 0.072 36 0.031 32] N·m·s,在航天器三軸方向上施加10-3量級的隨機力矩改變組合體角速度,在過程中加入10-6量級的隨機外界干擾力矩,按式(26)的格式存儲輸入輸出訓(xùn)練數(shù)據(jù),卷積神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)率設(shè)置為3,每個批處理的大小為5,對樣本集訓(xùn)練700次。
根據(jù)上述條件設(shè)置,進行仿真驗證,獲得結(jié)果如圖11~圖15所示,可見各仿真結(jié)果都趨向收斂,經(jīng)統(tǒng)計如表6所示。主轉(zhuǎn)動慣量的誤差用相對誤差表示,轉(zhuǎn)動慣量積由于是小量,用相對誤差不能準(zhǔn)確表示精度,采用絕對誤差表示。在加入噪聲下,主轉(zhuǎn)動慣量的辨識相對誤差都在2.6%以下,轉(zhuǎn)動慣量積的辨識絕對誤差的量級在10-4,整個訓(xùn)練過程用時1 190 s。仿真表明CNN卷積神經(jīng)網(wǎng)絡(luò)可實現(xiàn)對組合體轉(zhuǎn)動慣量的精確辨識。
圖11 主轉(zhuǎn)動慣量辨識結(jié)果Fig.11 Identification result of the principal moment of inertia
圖12 轉(zhuǎn)動慣量積辨識結(jié)果Fig.12 Identification result of inertial product
圖13 主轉(zhuǎn)動慣量辨識相對誤差Fig.13 Relative identification error of the principal moment of inertia
圖14 轉(zhuǎn)動慣量積辨識絕對誤差Fig.14 Absolute identification error of the inertial product
圖15 卷積神經(jīng)網(wǎng)絡(luò)輸出均方誤差Fig.15 Mean square error of convolution neural network′s output
參量單位辨識結(jié)果誤差I(lǐng)XXkg·m23.429-2.598%IYYkg·m25.875-2.568%IZZkg·m22.544-2.505%IXYkg·m2-4.945×10-4-4.945×10-4IXZkg·m2-9.9895×10-4-9.9895×10-4IYZkg·m2-9.393×10-5-9.393×10-5
本文針對航天器在軌組合參數(shù)需重辨識的問題,提出了一種具有普適性的基于CNN神經(jīng)網(wǎng)絡(luò)的組合航天器在軌參數(shù)辨識方案。仿真分析表明,該方案在24 s內(nèi)實現(xiàn)對目標(biāo)航天器質(zhì)量和質(zhì)心位置辨識,辨識總體誤差控制在3%以內(nèi);在1 190 s內(nèi)實現(xiàn)對目標(biāo)慣量辨識,誤差在2.6%以內(nèi)。傳統(tǒng)最小二乘法只能解決線性回歸問題,且計算過程涉及矩陣求逆,計算的時間復(fù)雜度大。CNN神經(jīng)網(wǎng)絡(luò)方法僅需對組合航天器的狀態(tài)數(shù)據(jù)按特定格式進行存儲形成訓(xùn)練數(shù)據(jù),而不強調(diào)數(shù)據(jù)的實時性,從數(shù)據(jù)中提取組合航天器質(zhì)量、質(zhì)心位置和轉(zhuǎn)動慣量特征值,并且隨著訓(xùn)練場景樣本的增多,能夠累積辨識先驗知識,通過先驗知識庫對CNN神經(jīng)網(wǎng)絡(luò)的初值進行選擇,能有效降低對樣本訓(xùn)練次數(shù)以及訓(xùn)練時間要求,達(dá)到快速辨識的目的。方法辨識精度高,參數(shù)選取自由度大,但對于計算硬件要求相對較高,可以應(yīng)用于未來組合航天器在軌參數(shù)辨識。
未來可通過在地面設(shè)置各種航天器組合場景,訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò),訓(xùn)練結(jié)果可為在軌實時辨識提供最優(yōu)初值,加快參數(shù)辨識速度。