張昀申
(92941部隊 葫蘆島 125001)
?
基于姿態(tài)更新算法的仿真實體行為建模*
張昀申
(92941部隊葫蘆島125001)
摘要根據(jù)捷聯(lián)慣導(dǎo)姿態(tài)更新算法,利用組件思想及工廠機制對仿真實體的行為模型進行了工程實現(xiàn),實現(xiàn)了對仿真實體的行為模擬,為創(chuàng)建具有一定智能性的虛擬兵力實體提供了一種解決方案,滿足了虛擬戰(zhàn)場建設(shè)的需要。
關(guān)鍵詞捷聯(lián)慣導(dǎo); 姿態(tài)更新; 仿真實體; 行為建模
Class NumberTN967.2
1引言
姿態(tài)更新算法是捷聯(lián)慣導(dǎo)系統(tǒng)解算的核心,也是影響捷聯(lián)慣導(dǎo)系統(tǒng)精度的主要因素之一[1],主要有歐拉角法、方向余弦法、四元數(shù)法、等效旋轉(zhuǎn)矢量法等。
計算機生成兵力[2](Computer Generated Forces,CGF)技術(shù)是作戰(zhàn)仿真的重要環(huán)節(jié),它具有不受時空限制的優(yōu)點,為參與者提供可以交互的作戰(zhàn)對手或友軍支援,提升虛擬戰(zhàn)場環(huán)境的復(fù)雜性與對抗性。
本文根據(jù)組件思想及工廠機制,利用捷聯(lián)慣導(dǎo)姿態(tài)更新算法對仿真實體的行為模型進行了工程實現(xiàn),實現(xiàn)了對仿真實體的行為模擬,為創(chuàng)建具有一定智能性的虛擬兵力實體提供了一種解決方案,滿足了虛擬戰(zhàn)場建設(shè)的需要。
2姿態(tài)更新算法
Miller R B[3]提出了三子樣優(yōu)化算法,大大改進了錐運動環(huán)境中算法的性能。Lee J G等[4]提出四子樣算法,在高頻錐運動中的性能優(yōu)于三子樣算法。Yeon F J[5]提出了改進的捷聯(lián)慣導(dǎo)姿態(tài)更新算法,該方法的估計誤差至少減少兩個數(shù)量級,同時降低了計算量。Savage P G[6~7]給出了現(xiàn)今捷聯(lián)慣導(dǎo)系統(tǒng)中所使用的綜合設(shè)計方法。Limanovich Y A[8]提出了與Savage P G給出的速度和位置算法不同的兩種捷聯(lián)導(dǎo)航算法。
四元數(shù)法和等效旋轉(zhuǎn)矢量法為目前常用的姿態(tài)更新算法。但四元數(shù)算法對有限轉(zhuǎn)動引起的不可交換誤差的補償程度不夠,所以只適用于低動態(tài)運載體的姿態(tài)解算。對于高動態(tài)運載體,四元數(shù)姿態(tài)解算中的算法漂移十分嚴重。等效旋轉(zhuǎn)矢量算法可以采用多子樣算法來實現(xiàn)對不可交換誤差的有效補償,并且可通過對系數(shù)的優(yōu)化處理使算法漂移在相同子樣算法中達到最小,因而特別適用于用于飛機等高動態(tài)、大機動載體的姿態(tài)更新。
由文獻[1]推導(dǎo)的旋轉(zhuǎn)矢量與姿態(tài)四元數(shù)的關(guān)系,可得:
Q(tk+1)=Qtk?q(h)
(1)
式中,?表示四元數(shù)乘法運算。
(2)
Φ為等效旋轉(zhuǎn)矢量,|Φ|為Φ的模;q(h)稱為[tk,tk+1]時間段內(nèi)的姿態(tài)變化四元數(shù)。工程上常用的等效旋轉(zhuǎn)矢量Φ近似的微分方程為[1]
(3)

將運載體的角速度用拋物線進行擬合,得出旋轉(zhuǎn)矢量的三子樣算法[1]:
(4)


(5)

(6)
由式(5)、式(6)得
(7)
其中,θ∈(-90°,90°),γ=(-180°,180°),ψ∈(360°,360°)。
航向角和橫滾角的真值如表1、表2。

表1 航向角ψ的真值表
表2橫滾角γ的真值表

γ主T33γ++γ主-+-γ主-180°--γ主+180°
(8)
3仿真實體行為模型的實現(xiàn)
3.1基于參數(shù)數(shù)據(jù)庫的實體模型
實體模型的描述采用基于實體參數(shù)數(shù)據(jù)庫(Entity Parameters Database,EPD)的形式,如圖1所示[2]。EPD由實體參數(shù)表(Entity Parameters Table,EPT)構(gòu)成,EPT以結(jié)構(gòu)化的語言描述實體的實例化信息,對實體的組成構(gòu)件、內(nèi)部交互關(guān)系、外部接口等進行定制。靜態(tài)類庫(Class Library)提供創(chuàng)建實體及其構(gòu)件的模版。實體及其構(gòu)件的構(gòu)造基于抽象工廠模式(Abstract Factory),一種對象類型相當(dāng)于一種“產(chǎn)品”,對應(yīng)有一種“工廠”提供創(chuàng)建服務(wù)[10]。在實體的構(gòu)造過程中,劇情給出需求、靜態(tài)類庫提供資源、實體參數(shù)數(shù)據(jù)庫提出要求、工廠負責(zé)具體實施。

圖1 基于參數(shù)數(shù)據(jù)庫的實體構(gòu)造模型
3.2行為模型組件的類結(jié)構(gòu)
將仿真行為模型對應(yīng)的控制器組件命名為DecisionMaking,在態(tài)勢生成軟件中所有與固定翼飛機機動相關(guān)的控制器均由DtFixedWingPilotController派生,因此新創(chuàng)建DtDecisionMaking類也將該類作為父類。
決策行為控制器類的結(jié)構(gòu)定義為:
class DtDecisionMaking : public DtFixedWingPilotController
{public:
//構(gòu)造函數(shù)
DtDtDecisionMaking(constDtString&name,DtVrfObject*owner,DtSimManager*simManager,DtComponentDescriptor*desc=NULL,DtReaderWriterRegistry* const parentRegistry = 0);
//析構(gòu)函數(shù)
virtual ~ DtDtDecisionMaking ();
//仿真推進
virtual void tick();
//在creator()成員函數(shù)中返回派生組件的新的實例,并用組件工廠注冊
static DtSimComponent* creator(const DtString& name, DtVrfObject*
owner,DtSimManager*simManager,DtComponentDescriptor*desc,DtReaderWriterRegistry* parentRegistry);
protected:
//創(chuàng)建端口
virtual bool createPorts();
};
DtDecisionMaking類中的成員函數(shù)type()返回"decision-making-controller"作為標識。creator()成員函數(shù)返回派生組件的新實例,并用組件工廠注冊。成員函數(shù)setComponentDescriptor()重載基類成員函數(shù),檢查組件設(shè)置的描述符類型,并緩存指向新派生類型的指針。
創(chuàng)建組件描述符和"decision-making-descriptor",需要為組件描述符實現(xiàn)與組件類似的type()和creator()成員函數(shù),它指定了要創(chuàng)建的組件類型,并提供設(shè)置參數(shù)的方式,組件通過描述符中指定的端口和端口實現(xiàn)相互連接。
3.3行為組件的加載
創(chuàng)建行為組件完畢,后端驅(qū)動引擎將在初始化后對組件進行加載。由只含一個主線程VRSim的仿真引擎進行調(diào)度運行,運行流程如圖2所示。

圖2 VRSim運行流程
4結(jié)語
本文根據(jù)慣導(dǎo)姿態(tài)更新算法和組件復(fù)用思想,利用態(tài)勢生成軟件創(chuàng)建了仿真實體行為模型,以封裝的方式進行工程應(yīng)用,為創(chuàng)建具有一定智能性的虛擬兵力實體為建立虛擬戰(zhàn)場環(huán)境提供了一種解決方案。
參 考 文 獻
[1] 秦永元.慣性導(dǎo)航[M].北京:科學(xué)出版社,2006:287;298-299;306-311;311-315;331-333;334-336;340-341;346-350.
QIN Yongyuan. Inertial Navigation[M]. Beijing: Science Press,2006:287;298-299;306-311;311-315;331-333;334-336;340-341;346-350.
[2] 王勃,潘長鵬,張昀申,等.VR-Force開發(fā)[M].北京:國防工業(yè)出版社,2011:15-16.
WANG Bo, PAN Changpeng, ZHANG Junshen, et al. Development of VR-Force[M]. Beijing: National Defend Industry Press,2011:15-16.
[3] Miller R B. A new strapdown attitude algorithm[J]. AIAA Journal of Guidance, Control and Dynamics,1983,6(4):287-291.
[4] Lee J G,Yoon Y J, Mark J G, et al. Extension of strapdown attitude algorithm for high-frequency base motion[J]. Journal of Guidance,1990,13(4):738-743.
[5] Yeon F J, Yu P L. Improved strapdown coning algorithm[J]. IEEE Transactions on Aerospace and Electronic Systems,1992,28(2):484-490.
[6] Savage P G. strapdown inertial navigation integration algorithm design, Part 1: AIAA Journal of Guidance, Control and Dynamics,1998,21(1):19-28.
[7] Savage P G. strapdown inertial navigation integration algorithm design, Part 2: Velocity and Position algorithm[J]. AIAA Journal of Guidance, Control and Dynamics,1998,21(1):208-221.
[8] Litmanovich Y A, Lesyuchevsky V M, Gusinky V Z. Two new classes of strapdown navigation algorithms[J]. AIAA Journal of Guidance, Control and Dynamics,2000,23(1):34-44.
[9] 戴邵武,徐勝紅,史賢俊,等.慣性技術(shù)與組合導(dǎo)航[M].北京:兵器工業(yè)出版社,2009:204-213;120-125.
DAI Shaowu, XU Shenghong, SHI Xianjun, et al. Inertial Technology and Integrated Navigation[M]. Beijing: Publishing House of Ordnance Industry,2009:204-213;120-125.
[10] 溫瑋,何友,李牧.基于參數(shù)數(shù)據(jù)庫的CGF實體框架結(jié)構(gòu)研究[J].系統(tǒng)仿真學(xué)報,2007,19(6):1231-1237.
WEN Wei, HE You, LI Mu. Research on CGF Entity Framework Based on Parameter Database[J]. Journal of System Simulation,2007,19(6):1231-1237.
收稿日期:2016年1月17日,修回日期:2016年2月22日
作者簡介:張昀申,男,碩士,工程師,研究方向:組合導(dǎo)航。
中圖分類號TN967.2
DOI:10.3969/j.issn.1672-9722.2016.07.010
Simulation Behaviour Model Based on Strapdown Attitude Algorithm
ZHANG Yunshen
(No. 92941 Troops of PLA, Huludao125001)
AbstractBased on strapdown SINS attitude algorithm, simulation entity behavioral model was realized by using the component theory and the factory mechanism, and simulated entity behavioral. The model provided a new way for creating visual intelligence forces entity in some extent. The requirement of visual battlefield construction suffice was reached.
Key WordsSINS, strapdown, simulation entity, behavioral model