版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
STK基礎(chǔ)教程Byappe1943西安交通大學(xué)目錄目錄1STK軟件簡介 附錄6NORAD雙行軌道根數(shù)Astrogator模塊使用方法本節(jié)將利用STK/Analyzer和Astrogator模塊,完成以下任務(wù):優(yōu)化機(jī)動時間,最小化燃料消耗計算最優(yōu)推力方向當(dāng)發(fā)射錯誤時計算可能的軌道首先,計算達(dá)到近地點的最小推力;接下來,當(dāng)有小的發(fā)射失誤時計算可能的軌道;最后,在飛向月球任務(wù)中最小化燃料消耗。最優(yōu)真近點角在本節(jié)中,依靠單次開機(jī),將衛(wèi)星的近地點(rp)升至10000km。對于大多數(shù)衛(wèi)星,最小化用于機(jī)動的燃料是個非常重要的問題。本節(jié)希望最小化速度增量(ΔV),最小化ΔV也就意味著最少的燃料消耗。首先利用STK/Analyzer的ParametricStudy,在推力方向固定且與速度同向的情況下,確定當(dāng)真近點角(ν)為何值時開始機(jī)動,從而最小化ΔV。接下來借助STK/Analyzer的OptimizationTool,考察改變推力方向(azimuth和elevation)時,能否進(jìn)一步最小化ΔV。最后使用STK/Analyzer曲面圖,考察少許偏離最優(yōu)值時對ΔV的影響。1、打開名為OptimumTrueAnomaly.sc場景(C:\ProgramFiles\AGI\STK8\Data\LaunchPad\Scenarios\TrueAnomalyOptimization\OptimumTrueAnomaly.sc)。2、場景載入后,雙擊衛(wèi)星,打開屬性頁面。查看任務(wù)控制流程(MissionControlSequence,MCS)。利用astrogator模塊,衛(wèi)星將會從初始狀態(tài)轉(zhuǎn)移到ν=180°的軌道,之后會點火,直至到達(dá)rp=10000km的軌道,在軌道上運行至近地點。3、在STK/AnalyzerBasics頁面打開STK/Analyzer,選擇ParametricStudy。由于需要比較不同的ν值對ΔV的影響,因此ν為獨立變量,ΔV為響應(yīng)變量。展開Analyzer窗口左邊的樹狀圖(見下圖所示),將ν(Model.STK.Scenario.Satellite.Propagator.TargetMnvr1.SegmentList.PropToMnvrStart.StoppingConditions.true_Anomaly)拖至independentvariable欄(注意,軌道滑行結(jié)束后會開始機(jī)動,滑行的結(jié)束意味著機(jī)動的開始)。將FinalΔV(Model.STK.Scenario.Satellite.Propagator.TargetMnvr1.SegmentList.Mnvr1.FinalDeltaV)選擇為響應(yīng)變量。此處ν值的變化范圍為160°~180°,步長為1度,步長為21。設(shè)置完后,點擊按鈕進(jìn)行分析。4、計算結(jié)果見下圖所示,顯示了21種情況各自所需的ΔV。從中看到,ΔV最小處的ν值在173°左右。為了得到更精確的結(jié)論,我們能將ν的變化范圍設(shè)為172°~174°,再次分析。ParametricStudy工具可以考察改變某個變量時,對另一個變量的影響。此處將考察更改推力方向,從而進(jìn)一步最小化ΔV。5、打開STK/Analyzer的GradientTool。由于需要最小化ΔV,將變量FinalDeltaV拖至目標(biāo)定義欄(Model.STK.Scenario.Spagator.TargetMnvr1.SegmentList.Mnvr1.FinalDeltaV)。同時需要比較不同的方位角、升降角及真近點角因此將這三個變量拖至designvariables項(Model.STK.Scenario.Satellite.propagator.TargetMnvr1.SegmentList.Mnvr1.ThrustVector.azimuth,elevation,Model.STK.Scenario.Satellite.propagator.TargetMnvr1.SegmentList.PropToMnvrStart.StoppingConditions.true_Anomaly)。如下圖所示,方位角和升降角范圍為-25°~25°,初始值為-25°。真近點角范圍為160°~180°,初始值為180°。6、點擊按鈕,結(jié)果類似于下圖。注意優(yōu)化器會用最優(yōu)值自動更新MCS中的相應(yīng)值。打開衛(wèi)星屬性頁面,會發(fā)現(xiàn)PropToMnvrStart下的真近點角以及Mnvr1下的方位角和升降角自動更新了。當(dāng)優(yōu)化結(jié)束后,可以看到方位角(azimuth)、升降角(elevation)及真近點角(trueanomaly)的最優(yōu)值。此時MCS中的相應(yīng)值也自動更新為最優(yōu)值。前面我們已經(jīng)得到真近點角、方位角和升降角的最優(yōu)組合,現(xiàn)在分析ΔV值的輕微變化帶來的影響。7、在STK/Analyzerbasics頁面,打開carpetplot工具。設(shè)置設(shè)計變量為Mnvr1項的方位角和升降角(Model.STK.Scenario.Spagator.TargetMnvr1.SegmentList.Mnvr1.ThrustVector.azimuthandModel.STK.Scenario.Spagator.TargetMnvr1.SegmentList.Mnvr1.ThrustVector.elevation)。兩者的范圍均為-25度~25度,11步完成。響應(yīng)變量仍然為ΔV(Model.STK.Scenario.Spagator.TargetMnvr1.SegmentList.Mnvr1.FinalDeltaV)。8、下圖為carpetplot結(jié)果。從中看到,在最優(yōu)點周圍大致為對稱分布,該最優(yōu)點對應(yīng)的方位角約為0度,升降角約為-7度。發(fā)射錯誤本節(jié)利用STK/Analyzer分析任務(wù)中可能存在的小的發(fā)射錯誤帶來的影響。我們將比較耗盡關(guān)機(jī)點處不同的經(jīng)度、緯度和速度對Keplerian元素的影響。1、打開名為LaunchErrors.sc的場景。場景載入后,雙擊衛(wèi)星對象打開其屬性頁面,查看Sat1的MCS頁面。2、熟悉MCS組成之后,在STK/Analyzerbasics頁面打開MonteCarloProbabilisticAnalysisTool。該工具允許輸入變量存在不確定性,輸入變量且服從某個分布函數(shù),考察輸出變量的可信度。3、分析關(guān)機(jī)點對軌道參數(shù)的影響。將關(guān)機(jī)點處的經(jīng)度、緯度、高度和速度(Model.STK.Scenario.Spagator.WallopsLaunch.Burnout.latitude…)拖到設(shè)計變量欄里,會出現(xiàn)針對每個設(shè)計變量的提示:誤差的分布、均值和標(biāo)準(zhǔn)差。Analyzer允許用戶設(shè)置多種誤差分布:Normal—A"bell-shaped"distributionwhichdescribesmanysituationswhereobservationsaredistributedsymmetricallyaroundthemean.68%ofallvaluesunderthecurveliewithinonestandarddeviationofthemeanand95%liewithintwostandarddeviations.Uniform-A"flat"distributioninwhichallpossiblesolutionsbetweenthelowerboundandupperboundareequallylikely.Lognormal-Aprobabilitydistributioninwhichthelogoftherandomvariableisnormallydistributed,meaningitconformstoabellcurve.Thelognormaldistributioniscommonlyusedforgeneralreliabilityanalysis,cyclestofailureinfatigue,materialstrengthsandloadingvariables.Weibull-Adistributiondefinedbyshapeandscaleparameters.Twospecialcasesofthisdistributionarewhentheshapeparameterequals1thedistributionisanexponentialdistribution,andwhenshapeparameterequals2thedistributionisaRayleighdistribution.Thisdistributionisoftenusedformodelingdevicefailurerateandalsowindspeeds.Triangle-Atriangleshapeddistribution,wheresomecenterpointisthemean,andthepopulationdensityslantsofflinearlytothelowerboundandupperbound.Enumerated-Adistributionwithalistofdiscretevalues,allofwhichareequallyprobable.4、將四個參數(shù)設(shè)置為normal分布。均值使用默認(rèn)值,將緯度、經(jīng)度和高度的標(biāo)準(zhǔn)差設(shè)置為0.01%。將fixedVelocity的標(biāo)準(zhǔn)差設(shè)置為0.001%。5、將最終軌道(Prop10Mins)的Keplerian六元素設(shè)置為響應(yīng)變量。將這六個參數(shù)拖至Responses窗口,見下圖所示(Model.STK.Scenario.Spagator.Prop10Mins.FinalState.Keplerian.sma…)。將運行次數(shù)設(shè)為100。點擊按鈕。計算過程需要幾分鐘。6、結(jié)果可以用多種形式的圖表表示。采用蒙特卡羅仿真時,不同的輸入會使結(jié)果有些不同。(1)柱狀圖柱狀圖能夠顯示結(jié)果的分布。利用柱狀圖,能夠設(shè)置變量的上限值和下限值,多次運行之后可以統(tǒng)計結(jié)果落在所設(shè)范圍內(nèi)的概率。可以通過在圖的右側(cè)輸入數(shù)值,或者利用鼠標(biāo)拖動,來設(shè)置閾值。(2)散點圖散點圖矩陣由多個圖片組成,分析每個變量與其它變量間的關(guān)系,這種形式有利于快速感知多個變量間的關(guān)系。注意,在某個散點圖中選中一個點,會在其它散點圖中高亮顯示對應(yīng)點。飛向月球本節(jié)需要再次確定ΔV值,分析ΔV與從低地球軌道轉(zhuǎn)移到低月球軌道的時間的關(guān)系。最小化ΔV,同時使轉(zhuǎn)移時間在可接受的范圍之內(nèi)。1、打開名為LunarMission.sc的場景。場景載入后,雙擊LunarProbe對象,打開屬性頁面。2、雙擊衛(wèi)星打開其屬性頁面。先將衛(wèi)星發(fā)射到LEO轉(zhuǎn)移軌道上,在軌道上滑行,然后點火進(jìn)入飛月軌道。點火后,在軌道上滑行至近月點,然后再次點火,進(jìn)入環(huán)月軌道。有兩條飛月軌道。第一個,靠近月球,從TLI點火直至抵達(dá)月球軌道的期間,Δ先增大后減?。═hefirstonegetsusclosetotheMoonandtargetsonΔrightascension,Δdeclination,aswellasthedurationfromTLIburnuntilwereachtheMoon);第二個軌道是通過B-plane進(jìn)入期望的月球軌道。3、在STK/AnalyzerBasics頁面中打開STK/Analyzer,選擇ParametricStudy。本例需要比較不同飛行時間所需要的TLIΔV,將desiredDuration拖至IndependentVariable項,F(xiàn)inalDeltaV拖至DependantVariable項。飛行時間從200000秒(2.3天)至500000秒(大約5.8天),步長為7(每步50000)。計算過程需要幾分鐘。4、結(jié)果見下圖所示,從中看到使用最小推力到達(dá)月球的時間大約為400000秒(4.6天),推力的少許增加會將飛行時間降至345600秒(4天)。5、不同日期需要的推力會有少許不同。使用STK/Analyzer的ParametricStudyTool,分析30天(一個數(shù)據(jù)點/天)中,不同日期發(fā)射到達(dá)月球需要的ΔV。Connect模塊使用方法Connect模塊介紹Connect模塊早期名稱是交互處理通訊模塊(IPC),它包括一系列的功能來打開UNIX或TCP/IP到STK的接口,以便給STK發(fā)送連接命令和接收從STK返回的數(shù)據(jù),并在通訊完成后關(guān)閉接口。Connect具有提供信息的功能,可按用戶規(guī)定的各種方式輸出錯誤信息和診斷信息。使用Connect時僅需提供連接名和端口,以便STK駐留和打開接口。IPC指令可以用單一函數(shù)發(fā)送然后返回希望的數(shù)據(jù)。Connect編程接口包括標(biāo)準(zhǔn)C和Matlab兩類,其中Matlab還對常用的STK操作進(jìn)行了封裝。用戶程序與STK連接后,只需要向STK發(fā)送相關(guān)指令,就可以控制STK進(jìn)行仿真,并能夠得到STK執(zhí)行情況。Connect命令可以分為應(yīng)用程序、想定、對象、顯示、工具、接口六類,借助這些命令可對STK軟件進(jìn)行全面控制。通過STK/Connect模塊,用戶可以把對STK的操作封裝到自己的程序中,從而實現(xiàn)對STK的控制。Connect模塊的主要特性有:(1)在客戶機(jī)/服務(wù)器環(huán)境下,通過TCP/IP的Socket或UNIXDomainSocket很方便地建立用戶應(yīng)用程序和STK的接口。這種網(wǎng)絡(luò)能力能夠允許來自任何虛擬環(huán)境的實時數(shù)據(jù)傳送。(2)Connect提供的連接庫能夠方便地建立和使用TCP/IP或DomainSocket。利用連接庫提供的函數(shù)、常值和其它消息能力可以建立第三方應(yīng)用程序與STK的連接。(3)Connect可以有選擇地生成信息,用戶也可以取消標(biāo)準(zhǔn)的信息,使用自定義的格式編輯以適應(yīng)第三方的應(yīng)用程序。該功能可以使開發(fā)人員更好地控制信息環(huán)境。(4)Connet連接著STK和STK/VO,開發(fā)人員可以實時觀察事件。例如,可以通過Connect獲得從運載火箭或衛(wèi)星上得到的遙測數(shù)據(jù),然后在二維或三維地圖窗口中模擬飛行任務(wù),幫助了解和解決可能出現(xiàn)的問題。使用STK/Connect模塊的優(yōu)點是直接利用了STK軟件的強(qiáng)大功能,實現(xiàn)了對STK軟件和用戶程序的開發(fā)集成,而且該方法簡單易行、開發(fā)速度快,因此,該方法已成為目前使用最廣泛的集成方式之一。但Connect庫只提供了STK模塊功能的命令方式調(diào)用,代碼效率較低、靈活性不夠并且執(zhí)行速度受到了限制。STK/Connect模塊連接步驟模塊初始化在啟動模塊前,首先要初始化,初始化函數(shù)是char*initFileName=NULL;AgConInit(initFileName);//初始化參數(shù)initFileName指向初始化配置文件,若initFileName為空表示STK/Connect將啟用缺省配置文件,對于UNIX系統(tǒng),該文件為…\.connect,對于Windows系統(tǒng),該文件為…\Connect\PCData\Connect.dat。若初始化成功,STK返回AgNoError消息,否則返回AgCError消息。初始化配置文件中列出了用以接收返回數(shù)據(jù)的STK/Connect命令,這些命令是第三方應(yīng)用程序獲得STK數(shù)據(jù)的有效途徑。此外,初始化文件中還包含一些必要的配置信息,以便在建立連接時設(shè)置STK/Connect模塊的參數(shù)。建立與STK的連接初始化完畢后,需要調(diào)用AgConOpenSTK()函數(shù)建立與STK的連接,該函數(shù)形式為intAgConOpenSTK(char*context,char*connectType,char*connectName);參數(shù)connectType用于指定連接的類型,其值為以下兩個常量中的一個:(1)“TCPSOCKET”(2)“UNIXSOCKET”參數(shù)connectName說明了連接的細(xì)節(jié):對于TCP/IP連接,要指定主機(jī)名稱和端口號,例如:localhost,5001;對于UNIX連接,則需要指定數(shù)據(jù)包的路徑,例如:…/soc/Socket。參數(shù)context用來區(qū)分同時打開多個STK連接時的不同連接,對于只建立單個連接的情況可使用缺省值NULL。發(fā)送命令建立連接以后,就可以用AgConProcessSTKCmd函數(shù)向STK發(fā)送命令,格式如下:intAgConProcessSTKCmd(char*context,char*cmdString,AgTConReturnInfo*returnInfo);其中,參數(shù)context用以區(qū)分不同連接,參數(shù)cmdString表示發(fā)送的具體命令,參數(shù)returnInfo用來存儲從STK返回的信息。調(diào)用函數(shù)AgConProcessSTKCmd()發(fā)送命令時,如果數(shù)據(jù)發(fā)送成功,將返回AgCNoError信息,如果出現(xiàn)錯誤將返回AgCError信息,如果命令發(fā)送成功但是STK拒絕接收的話,將返回AgCNackReturned信息。接收數(shù)據(jù)命令發(fā)送完畢后,STK/Connect接收STK返回的信息并將其存儲在AgTConReturnInfo結(jié)構(gòu)體中,該結(jié)構(gòu)體具體定義如下:typedefstructAgTConReturnInfo{ charhdrType[AgCRMHAHDRTypeLen+1]; chartransId[AGCRMHAHdrIdLen+1]; intnumEntries; char*returnList;}AgTConReturnInfo;其中,hdrType和transId只用于異步模式的STK/Connect連接。hdrType存儲異步數(shù)據(jù)包的類型,transId存儲標(biāo)志符,numEntries存儲返回數(shù)據(jù)的數(shù)目,returnList存儲返回的數(shù)據(jù)。每次成功接收數(shù)據(jù)之后,需要調(diào)用AgConCleanupReturnInfo函數(shù)釋放存儲空間,其函數(shù)結(jié)構(gòu)為:voidAgConCleanupReturnInfo(AgConCleanupReturnInfo*pReturnInfo);其中,pReturnInfo為指向存儲空間的指針。關(guān)閉連接函數(shù)AgConClose()用以關(guān)閉與STK服務(wù)器的連接,函數(shù)原型為intAgConCloseSTK(char*context);其中,參數(shù)context是在與STK建立連接時初始化的,由于它指定了一個特定的連接,因此在調(diào)用AgConCloseSTK()函數(shù)時,其它連接不會受到影響。STK/Connect模塊命令格式Connect模塊為用戶程序提供了一系列命令來控制STK內(nèi)部復(fù)雜的操作,命令的一般格式如下:<CommandName><ObjectPath><CommandData>其中,CommandName表示特定的命令名稱,ObjectPath指定了STK中的一個對象,CommandData設(shè)置此命令所需的參數(shù)。例如,GetReport*/Satellite/Satellite1“AER”Facility/Facility1UseAccessTimes,表示獲取衛(wèi)星Satellite1對地面站Facility1的AER報告。利用VC開發(fā)STK連接應(yīng)用程序,首先需要對提供STK連接支持的頭文件和庫文件進(jìn)行配置。頭文件有三個,均在“STK安裝目錄\Connect\Includes”文件夾中,文件名分別為AgConnect.h、AgConSendData.h和AgCoUtMsgCommon.h。庫文件分別為調(diào)試庫文件和運行庫文件,分別在“STK安裝目錄\Connect\lib\Debug”和“STK安裝目錄\Connect\lib\Release”目錄下,文件名都為AgConnect.lib。VC中頭文件和庫文件的配置方法如下:單擊Tool/Options命令,打開VC的option對話框,將STK連接頭文件所在的目錄加入到VC的“ProjectSettings”(工程設(shè)置)對話框,在“Link”(鏈接)對話框選項卡中,分別對“Win32Debug”和“Win32Release”配置相應(yīng)的“Object/librarymodules”(對象/鏈接模塊)。要調(diào)用STK的命令函數(shù),首先要加入兩個頭文件“AgConnect.h”和“AgUtMsgCommon.h”。在啟動Connect模塊之前首先要進(jìn)行初始化,方法是調(diào)用AgConInit(),初始化完成后再利用AgConOpenSTK()建立與STK的連接,代碼如下:char*initFileName=NULL;char*connection1=NULL;staticcharconnectName[256]=”Localhost:5001”AgConInit(initFileName);//初始化AgConOpenSTK(&connection1,0,connectName);//建立連接對于函數(shù)AgConInit(initFileName),參數(shù)initFileName指向初始化配置文件,若initFileName為空表示STK/Connect將啟用缺省配置文件,對于UNIX系統(tǒng),該文件為…\.connect,對于Windows系統(tǒng),該文件為…\Connect\PCData\Connect.dat。若初始化成功,STK返回AgNoError消息,否則返回AgCError消息。初始化配置文件中列出了用以接收返回數(shù)據(jù)的STK/Connect命令,這些命令是第三方應(yīng)用程序獲得STK數(shù)據(jù)的有效途徑。此外,初始化文件中還包含一些必要的配置信息,以便在建立連接時設(shè)置STK/Connect模塊的參數(shù)。函數(shù)AgConOpenSTK(&connection1,0,connectName)語句的功能是建立客戶端程序與STK的連接關(guān)系,它包含三個參數(shù):參數(shù)1為初始連接變量,其值必須為NULL。一旦客戶端程序與STK之間建立了連接關(guān)系,這種關(guān)系就會記錄在該參數(shù)中;參數(shù)2表示連接類型,0表示利用TCP/IP形式進(jìn)行連接;參數(shù)3為連接對象的名稱,“Localhost:5001”代表通過本地計算機(jī)的5001端口與STK進(jìn)行連接。建立連接以后,就可以用AgConProcessSTKCmd函數(shù)向STK發(fā)送命令,格式如下:AgConProcessSTKCmd(connection1,CommandName,&returnInfo);其中,CommandName為命令的內(nèi)容,返回值儲存在returnInfo中。在完成初始化和建立連接后,可根據(jù)需要將不同的命令賦給該函數(shù)的第2個參數(shù),然后調(diào)用該函數(shù)來驅(qū)動STK運行。最優(yōu)真近點角附錄1Matlab與STK互連一、Matlab與STK接口STK提供了兩種方式,能夠在Matlab里使用STK強(qiáng)大的功能:(1)aeroToolbox提供了Matlab庫,能夠在Matlab里獨立使用一些STK函數(shù)。用戶能夠使用Matlab語法進(jìn)行坐標(biāo)轉(zhuǎn)換、地形分析等。(2)其次,mexConnect提供了Matlab的具體函數(shù)。STK通用程序接口(Connect、ObjectModel)也可以用于與Matlab的交互中,mexConnect含有專門為Matlab設(shè)計的函數(shù),方便STK與Matlab之間共享數(shù)據(jù)。1、aeroToolbox特征操作過程獨立于STK歷元與日期函數(shù)—管理參考時間,歷元日期轉(zhuǎn)換坐標(biāo)變換—STK坐標(biāo)系間的變換旋轉(zhuǎn)和四元數(shù)—四元數(shù)、旋轉(zhuǎn)矩陣、歐拉角間的轉(zhuǎn)換中心體(CentralBody)操作和例程—確定中心體參數(shù),包括慣性坐標(biāo)、速度、表面法向量、弧長、重力參數(shù),以及確定矢量是否在給定的中心體內(nèi)相交航點、星歷和姿態(tài)文件—讀寫STK數(shù)據(jù)文件位置和速度函數(shù)—動態(tài)反映運載工具的狀態(tài),計算視幾何(apparentgeometry)(考慮光時間延遲(lighttimedelay))軌道元素設(shè)置變換—常用軌道元素表達(dá)式間的變換軌道元素參數(shù)變換—常用軌道元素參數(shù)間的變換DTED操作—讀取多種格式的地形文件,計算高程,確定地形蒙版軌道預(yù)報—支持Keplerian,J2,J4,MSGP4多種軌道預(yù)報方法,彈道導(dǎo)彈攻擊目標(biāo),多種軌道目標(biāo)函數(shù)導(dǎo)航精度—計算任意星座導(dǎo)航發(fā)射機(jī)的定位精度地圖數(shù)據(jù)—提供世界范圍矢量地圖數(shù)據(jù)覆蓋網(wǎng)格—提供系列函數(shù)確定點是否位于任意的多邊形之內(nèi)2、mexConnect特征利用STK/Connect包裝器(Wrapper)遠(yuǎn)程控制STKSTK服務(wù)器指令—利用ConnectSocket打開、關(guān)閉、獲得信息應(yīng)用指令—STK應(yīng)用函數(shù)通用目標(biāo)指令—創(chuàng)建、刪除、保存、加載對象的函數(shù)場景命令—控制歷元、動畫時間、日期轉(zhuǎn)換函數(shù)軌道預(yù)報—控制運載工具軌道預(yù)報器參數(shù)運載工具的位置和速度—獲得/設(shè)置運載工具的位置,速度和姿態(tài)數(shù)據(jù),以及產(chǎn)生動態(tài)狀態(tài)數(shù)據(jù)結(jié)構(gòu)(利用aeroToolbox視幾何(apparentgeometry)函數(shù))地面設(shè)施和目標(biāo)—獲得/設(shè)置地面設(shè)施和目標(biāo)的位置面(area)目標(biāo)—獲得面目標(biāo)的邊界STK工具—確定訪問的時間間隔,以Matlab數(shù)據(jù)格式獲得任意對象的Access報告或者STK報告Connect指令—能夠處理Connect指令3、應(yīng)用舉例(1)姿態(tài)機(jī)動。aeroToolbox提供了多個函數(shù)用來實現(xiàn)姿態(tài)機(jī)動。能夠利用歐拉角到四元數(shù)的變換工具,計算旋轉(zhuǎn)和變換姿態(tài)類型。例如,給定飛船的當(dāng)前狀態(tài)以及期望狀態(tài),aeroToolbox能夠給出所需旋轉(zhuǎn)最小角度的四元數(shù)(2)參數(shù)分析。mexConnect指令能夠創(chuàng)建和操作STK對象。能夠在Matlab里優(yōu)化單獨或者整合的參數(shù)。(3)計算相對位置。給定兩個對象的動態(tài)狀態(tài),aeroToolbox能夠確定這兩者的相對位置和速度(4)創(chuàng)建GUI。利用Matlab為圖形用戶創(chuàng)建包含aeroToolblx和mexConnect函數(shù)的界面,包括STK的2D/3D圖形界面,將STK世界一流的視覺效果導(dǎo)入到Matlab中。二、使用mexConnect互連Matlab與STK互連的前提條件:(1)Matlab6.1以上版本;(2)安裝有帶許可證的STK軟件。先安裝Matlab后安裝STK:STK安裝時會復(fù)制部分文件到<MATLABROOT>\toolbox\local文件夾下。先安裝STK后安裝MATLAB:為了使STK和MATLAB之間能夠通信,首先需要運行<STKinstallfolder>\Bin下的StkMatlabInstall.exe文件。該程序會將部分STK文件拷貝至先前安裝的每一個Matlab版本目錄<MATLABROOT>\toolbox\local下。Matlab與STK互連的設(shè)置過程如下:(1)打開Matlab,在命令行里輸入agiInit(’setup’),會出現(xiàn)下面的對話框:點擊Continue;(2)接下來會自動彈出一個窗口,要求指定.m文件的存放目錄,見下圖所示。進(jìn)入<STKinstallfolder>\Matlab,點擊OK;(3)接下來會自動彈出一個窗口,要求指定AGIMEX文件的存放目錄,見下圖所示。進(jìn)入目錄<STKinstallfolder>\bin,點擊OK;(4)接下來會出現(xiàn)一個對話框,詢問是對默認(rèn)的MexConnect主機(jī)進(jìn)行配置,見下圖所示。如果STK和Matlab不在同一臺電腦上運行,或者都在同一臺電腦上但想對通信端口進(jìn)行配置(默認(rèn)端口為5001),那么需要將Matlab指向STK主機(jī),這時需要選擇Yes;(5)接著會自動彈出一個對話框,要求對端口進(jìn)行配置,見下圖所示。此處不做變動,直接點擊OK;上述配置MexConnect主機(jī)步驟為可選操作。(6)如果想修改默認(rèn)設(shè)置,例如指令等待時間(commandtimeout),在接下來出現(xiàn)的對話框里選擇Yes。(7)接下來會自動彈出一個對話框,要求指定連接初始化配置文件:(8)此時進(jìn)入目錄<STKinstallfolder>\Connect\PCData,選中名為connect.dat的文件,見下圖所示。上述配置連接初始化文件的操作為可選步驟。至此安裝完畢。下面對是否正確安裝進(jìn)行檢驗。(1)打開Matlab,打開Stk(未創(chuàng)建場景)。在Matlab命令提示符里輸入stkInit,如果正確安裝,會出現(xiàn)以下提示:>>stkInitInitializingMATLABInterfacewithAGIDefaultpreferencesWarning:mexConnect:Connectingtolocalhost:5001(2)打開指向STK的一個socket:>>conid=stkOpen(3)通過socket句柄在STK里面創(chuàng)建一個新場景>>stkExec(conid,’New/ScenarioScenario1’)此時STK里面會自動新建一個場景。注意:New和/均有空格。利用Matlabhelp了解更多的相關(guān)功能:>>helpstk>>helpmexConnect>>helpaerotoolbox附錄2STK圖像轉(zhuǎn)換器工作流程附錄3STK地形轉(zhuǎn)換器工作流程附錄4視線的計算視線約束主要是考慮信號傳播路徑中地面障礙物的影響。大地通常看作是一個橢圓體,在中心體坐標(biāo)系(centralbodyfixedframe)中認(rèn)為該橢圓體的形狀是固定的。在橢圓體模型中,地面認(rèn)為是局部平坦的(不考慮高山、丘陵、山谷等),地面模型非常簡單。對地面進(jìn)行更精確地建模需要AzEI蒙版或者地形蒙版工具,采用不同的訪問約束(AccessConstraints)來建模。針對STK各類對象有不同的方法描述障礙面,見表1。表1訪問計算涉及到的STK對象相應(yīng)的橢圓體模型STK對象橢圓體描述地面設(shè)施,目標(biāo)橢圓體經(jīng)過指定高度的點,與考慮約束對象的中心橢圓體具有相同的正交面和外形衛(wèi)星,運載火箭,導(dǎo)彈,飛機(jī)考慮約束對象的中心橢圓體地面車輛,船只考慮約束對象的中心橢圓體行星別的對象的中心橢圓體星體別的對象的中心橢圓體面目標(biāo),線目標(biāo)考慮約束對象的中心橢圓體雷達(dá),接收機(jī),傳感器,發(fā)射機(jī)與所繼承對象的模型相同通常情況下,STK中的車輛對象將其中心橢圓體(centralbodyellipsoid)外形作為障礙面。地面設(shè)施和目標(biāo)通過指定自身的高度(高度以中心橢圓體或者海平面為參考平面)來建立障礙面。橢圓體的平面通過指定的高度,其正交平面與中心橢圓體相同,外形也與中心橢圓體相同(球面,扁球面,三軸橢圓面)。這樣,用戶能夠針對Denver,Colorado的地面設(shè)施選擇合適的地面模型,這兩個地方的地面高于橢圓體面大概一英里左右。盡管能夠從Denver看到Rocky山,但不用視線約束來建模,而是利用AzEI蒙版或者地形蒙版來描述當(dāng)?shù)氐牡匦翁卣鳌Ξ?dāng)?shù)氐孛娼V行臋E圓體模型通常情況下是可以的,但有些地方用該模型來描述就不合適,特別是當(dāng)海平面顯著低于橢圓體平面的時候。因此,視線約束建模時,存在對象低于橢圓體平面的原因在于橢圓體模型不能很好地描述當(dāng)?shù)氐孛?。我們認(rèn)為不會故意將任何一個對象放在當(dāng)?shù)氐孛娴南路剑ǚ駝t會無法訪問,從而是一個無用的模型)。當(dāng)觀察到一個對象低于給定的橢圓體平面時,需要重新規(guī)劃橢圓體平面,使該對象位于橢圓體平面上方,重新規(guī)劃后的橢圓體平面作為障礙面。當(dāng)對兩個對象進(jìn)行訪問計算時需要考慮視線約束。在某些情況下,只需要考慮其中一個的視線約束?!裥求w.對于行星及其它星體不考慮視線約束。當(dāng)行星所處的坐標(biāo)系中心體為太陽,另外一個對象的視線良好的情況下,不考慮該行星的視線約束。●飛機(jī),運載火箭,導(dǎo)彈,衛(wèi)星,以及它們附屬對象.當(dāng)兩個對象具有相同的中心體,其中一個對象視線良好的情況下,不考慮另外一個對象的視線約束。注意:星體將場景中的中心對象作為中心體,行星將太陽作為中心體。訪問具有相同中心體的地面設(shè)施和衛(wèi)星時,如果兩者都存在視線約束,會利用地面設(shè)施模型的視線約束,不考慮衛(wèi)星的障礙面模型。距離地面較近的對象通常選擇為視線約束對象。當(dāng)發(fā)射信號沿傳播路徑穿越橢圓體時有時會出現(xiàn)障礙現(xiàn)象。在慣性坐標(biāo)系F中計算傳播信道,F(xiàn)可以是一個中心體慣性坐標(biāo)系(centralbodyinertialframe),或者是太陽系質(zhì)心坐標(biāo)系(solarsystembarycenterframe)。障礙的外形在F中是運動的,但在中心體固定坐標(biāo)系(centralbodyfixedframe)中位置是固定的。運動包含轉(zhuǎn)動和平移。在信號傳播過程中,中心體固定坐標(biāo)系繞F的轉(zhuǎn)動,會導(dǎo)致外形繞F轉(zhuǎn)動。計算信道障礙的難點在于需要進(jìn)行坐標(biāo)轉(zhuǎn)換。橢圓體的形狀和位置在慣性坐標(biāo)系中為時變模型,在該坐標(biāo)系中信道是直線;轉(zhuǎn)換到固定坐標(biāo)系中信道是彎曲的,形狀則是固定的。我們通常選擇在固定坐標(biāo)系中計算障礙。1、固定坐標(biāo)系中的信號傳播路徑和分別表示在坐標(biāo)系F中的傳輸和接收點傳播路徑矢量,t為傳輸時間,t+?t為接收時間,?t為信號延遲時間,F(xiàn)中的信道可表示為定義表示在坐標(biāo)系F中表示的障礙物中心體坐標(biāo)矢量,M為坐標(biāo)系F相對于固定坐標(biāo)系E的旋轉(zhuǎn)矩陣。在E中信道w可表示為2、計算障礙:不考慮傳播路徑中信號的波動此處認(rèn)為?t非常小,和M可以看作常量,信道在坐標(biāo)系E中可看作直線。這種情況下建立障礙物模型時需要考慮信道是否穿過橢圓體。由于橢圓體是一個簡單的凸集,信道穿越問題很容易解決。設(shè)P為坐標(biāo)系E中的任意一點,存在一個因子μ,橢圓體的坐標(biāo)軸被該因子標(biāo)度,標(biāo)度后的橢圓體經(jīng)過P。當(dāng)μ>1時,P在橢圓體的外面;μ=1時,P在橢圓體上;μ<1時,P在橢圓體內(nèi)部。對于E中的任意一條線段,都存在因子μ,使得被標(biāo)度后的橢圓體與該線段相切。對于E中的任意一條線段,μ的最小值發(fā)生在線段的尾部或者切點處。針對三種位置,可以大體估計μ的最小值μmin,μmin<1時障礙存在。3、計算障礙:對傳播路徑中信號的波動建模此處認(rèn)為?t不能忽略,信號則需要花費一定的時間穿越信道。當(dāng)在0與?t之間,信號在橢圓體內(nèi)部,此時存在障礙現(xiàn)象。這種情況下比前一種情況計算更為復(fù)雜,因為在坐標(biāo)系E中信道并不是一條直線。沿坐標(biāo)系E中信道使μ值最小,并通過迭代方法決定。μmin<1時障礙存在。附錄5常用的STK指令(1)建立場景New/ScenarioFlightSceneFlightScene(2)設(shè)置場景時間和步長SetTimePeriodScenario/FlightScene“10Oct200010:10:10”“11Oct200010:10:10SetEpochScenario/FlightScene“10Oct200010:10:10AnimateScenario/F1ightSceneSetValues“10Oct200010:10:10”AnimateScenario/F1ightSceneSetAnimationModeXRealTimeAnimateScenario/F1ightSceneXRealTimeMultiplier1.0(3)添加對象、設(shè)置對象模型New/Scenario/FlightScene/FacilityJiuQuanSetPositionScenario/FlightScene/Facility/JiuQuanGeodetic40.9604000100.2980001072.0200000VO*/Facility/JiuQuanModel“D:/Launch/ariane-lp.mdl”New/Scenario/FlightScene/LaunchVehicleRocket1VO*/Satellite/JBModel“D:/Launch/CZ-2C.mdl”(4)建立坐標(biāo)系VectorTool*Facility/JiuQuanCreateAxesLaunchAxes“FixedinAxes”Euler10.29840.9604-281.896312“CentralBody/EarthFixed”VectorTool*Facility/JiuQuanCreateSystemLaunchSys“Assembled”“Facility/JiuQuan”“Facility/JiuQuanLaunchAxes”(5)設(shè)置對象的驅(qū)動文件SetStateScenario/FlightScene/LaunchVehicle/RocketlFile“D:/Launch/Ephl.e”SetAttitudeScenario/FlightScene/LaunchVehicle/RocketlFile“D:/Launch/Attl.e”(6)設(shè)置視點VO*ViewFromToFromRegName“STKObject”FromName“Satellite/JB”ToReg
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 創(chuàng)作之旅:藝術(shù)與實踐
- 農(nóng)村地區(qū)流動兒童、留守兒童和其他兒童教育機(jī)會比較研究
- 二零二五年度快遞行業(yè)服務(wù)質(zhì)量提升合作協(xié)議2篇
- “雙減”政策背景下教師工作負(fù)擔(dān)的風(fēng)險分析及其化解
- 二零二五年度房地產(chǎn)項目招投標(biāo)顧問合同3篇
- 全國川教版信息技術(shù)七年級上冊第13課《個性化的桌面設(shè)置》說課稿
- 北京市昌平區(qū)2024-2025學(xué)年高二上學(xué)期期末考試地理試卷(含答案)
- 湖北省鄂州市(2024年-2025年小學(xué)六年級語文)統(tǒng)編版摸底考試((上下)學(xué)期)試卷及答案
- 泵車知識培訓(xùn)課件視頻
- 貴州盛華職業(yè)學(xué)院《傳熱學(xué)B》2023-2024學(xué)年第一學(xué)期期末試卷
- 術(shù)中獲得性壓力性損傷預(yù)防
- 新形勢下物資采購面臨的機(jī)遇、挑戰(zhàn)及對策思考
- 電氣接線工藝培訓(xùn)
- 中央空調(diào)安全規(guī)范
- 胸腔積液-課件
- 2023年全國統(tǒng)一建筑工程預(yù)算工程量計算規(guī)則完整版
- cn.7a一種醬香型大曲酒固態(tài)發(fā)酵的生態(tài)控制方法
- TLFSA 003-2020 危害分析與關(guān)鍵控制點(HACCP)體系調(diào)味面制品生產(chǎn)企業(yè)要求
- GB/T 8491-2009高硅耐蝕鑄鐵件
- 供水安全與搶修
- DB31 595-2021 冷庫單位產(chǎn)品能源消耗指標(biāo)
評論
0/150
提交評論