<listing id="vjp15"></listing><menuitem id="vjp15"></menuitem><var id="vjp15"></var><cite id="vjp15"></cite>
<var id="vjp15"></var><cite id="vjp15"><video id="vjp15"><menuitem id="vjp15"></menuitem></video></cite>
<cite id="vjp15"></cite>
<var id="vjp15"><strike id="vjp15"><listing id="vjp15"></listing></strike></var>
<var id="vjp15"><strike id="vjp15"><listing id="vjp15"></listing></strike></var>
<menuitem id="vjp15"><strike id="vjp15"></strike></menuitem>
<cite id="vjp15"></cite>
<var id="vjp15"><strike id="vjp15"></strike></var>
<var id="vjp15"></var>
<var id="vjp15"></var>
<var id="vjp15"><video id="vjp15"><thead id="vjp15"></thead></video></var>
<menuitem id="vjp15"></menuitem><cite id="vjp15"><video id="vjp15"></video></cite>
<var id="vjp15"></var><cite id="vjp15"><video id="vjp15"><thead id="vjp15"></thead></video></cite>
<var id="vjp15"></var>
<var id="vjp15"></var>
<menuitem id="vjp15"><span id="vjp15"><thead id="vjp15"></thead></span></menuitem>
<cite id="vjp15"><video id="vjp15"></video></cite>
<menuitem id="vjp15"></menuitem>

一種小規模衛星星座構型優化設計方法與流程

文檔序號:12271720閱讀:1674來源:國知局
一種小規模衛星星座構型優化設計方法與流程

本發明屬于航天器任務分析領域,具體涉及一種小規模衛星星座構型優化設計方法。



背景技術:

隨著衛星應用領域以及應用需求的拓展,越來越多的飛行任務僅靠單星已無法完成,由多顆衛星組成的衛星星座早已在實際任務中得到廣泛應用。如面向導航應用的GPS星座、北斗星座等;面向通信應用的銥星星座;面向軍事偵察的白云星座等等。大規模的衛星星座功能強大,但建設周期往往比較長;小規模衛星星座即兼顧了星座建設周期,又兼顧了星座的覆蓋效能,在軍民應用領域都有重要的應用前景。

星座是多顆衛星按照一定的規則構型組合在一起,共同完成某特定任務的衛星集合。星座的構型設計的好壞,對星座的覆蓋效能有著至關重要的影響。星座的構型的優化設計是衛星研制方進行星座任務分析的首要任務。

星座構型優化設計本質上是求解非線性參數規劃問題,其核心包括兩大部分,一是優化算法本身,二是滿足各種約束條件的星座覆蓋性能指標計算。針對優化算法本身,國內外學者已經開發了多種優化算法,如遺傳算法、粒子群優化算法、模擬退火優化算法等,這些算法都大同小異;針對星座覆蓋性能指標的計算,往往工作量很大,尤其是在工程應用中,需根據不同衛星載荷工作特點,考慮不同的約束條件,統計不同的性能指標。面對快速變化的衛星星座應用需求,提供一種快速、高效、穩定的星座構型優化設計方法具有重要價值。

MATLAB軟件在科學計算領域有著廣泛的應用。其優化算法工具包中已經集成了遺傳算法,該算法接口規范、運行穩定。對于星座構型優化,采用MATLAB提供的遺傳算法,將節省了大量的工作。

STK軟件在航天任務仿真中應用廣泛,在星座覆蓋分析方面,它具有強大的計算能力,能夠快速計算滿足多種約束情況下的衛星星座對點、線、區域、全球目標的覆蓋效能,并能統計多種性能指標。同時STK還提供豐富的MATLAB接口函數,方便用戶通過MATLAB調用STK,進行任務分析。

本發明針對小規模衛星星座的構型優化的應用需求,結合MATLAB軟件和STK軟件的優勢,提出一種快速小規模衛星星座的構型優化設計方法。



技術實現要素:

本發明所要解決的技術問題是:克服現有技術的不足,提供了一種利用商業軟件,簡單、快速進行衛星星座構型優化設計方法。

本發明的技術方案是:一種小規模衛星星座構型優化設計方法,所述的小規模衛星星座,衛星數量小于等于六顆,軌道平面數小于三個,星座內各衛星的軌道半長軸、軌道傾角、軌道偏心率均相同;星座構型優化在于設計星座內各衛星的相位關系,使得星座對某區域目標的覆蓋性能指標最優,其步驟如下:

(1)構建星座構型優化的數學模型;

星座構型優化描述為:通過設計描述星座構型的參數X,使得在滿足設計約束條件Constraint的前提下,該星座對用戶重點關注區域的覆蓋效能Obj=f(X)最優,數學模型為:

min Obj=f(X)

st.Constraint

所述星座構型的參數X包括各顆衛星的軌道六根數:軌道半長軸、軌道傾角、軌道偏心率、升交點赤經、近地點幅角和平近點角;星座中各衛星的軌道半長軸、軌道傾角、軌道偏心率均相同并已知,星座構型優化設計變量為星座內各衛星的升交點赤經、近地點幅角和平近點角三個參數;

(2)任意給定一組步驟(1)中的星座構型參數,升交點赤經,近地點幅角,平近點角,在STK中建立場景,完成星座對目標區域的覆蓋效能的定義;

(3)編寫基于MATLAB遺傳算法工具包的星座優化程序,結合STK求解星座構型優化設計問題,得到最優的星座構型參數,從而完成衛星星座構型優化設計。

在所述步驟(3)中,還需要在STK中,對構型優化結果進行仿真驗證。

所述步驟(2)實現如下:

(21)在STK中新建一個場景Scenario;

(22)在場景Scenario中添加一個區域對象AreaTarget,用來定義星座重點覆蓋的目標區域,打開區域對象的屬性設置,在Basic->Boundary中,通過添加區域的頂點來定義區域;

(23)在場景Scenario中添加若干衛星Satellite,分別用來定義星座中的各顆衛星,各衛星軌道參數采用默認值;

(24)在場景Scenario中分別給各衛星對象Satellite添加傳感器Sensor,用來定義衛星載荷視場能力范圍,分別打開傳感器Sensor對象的屬性設置,在Basic->Definition中,定義傳感器Sensor錐角范圍;

(25)在場景Scenario中添加一個星座對象Constellation,用來定義衛星載荷視場能力范圍的集合,打開星座對象的屬性設置,在Basic->Definition中,將描述衛星載荷能力范圍的各個傳感器都添加到星座的集合中AssignedObjects;

(26)在場景Scenario中添加一個覆蓋定義對象CoverageDefinition,用來定義星座對目標區域的覆蓋,打開覆蓋對象的屬性設置,在Basic->Grid中,選擇Grid Area of Interest的type為Custom Regions,并在Select Regions中,選擇目標區域對象;設置目標區域內網格劃分的顆粒度Grid Definition->Point Granularity;在Basic->Assets中,將星座對象選中,并點擊Assign,完成星座對區域內按設定顆粒度劃分的所有點目標的覆蓋定義;

(27)在場景Scenario中給覆蓋定義對象CoverageDefinition添加一個效能統計對象FigureOfMerit,用來統計星座對目標區域的覆蓋效能,打開效能統計對象的屬性設置,在Basic->Definition中,選擇統計相應的覆蓋效能。

所述步驟(3)實現如下:

(31)初始化MATLAB與STK的連接,即關鍵MATLAB函數:stkInit,stkOpen;

(31)以星座中每顆衛星的升交點赤經、近地點幅角和平近點角三個參數為設計變量,分別設置設計變量的上邊界UB和下邊界LB;

(32)利用遺傳算法的機制,不斷迭代更新每顆衛星的三個設計變量的取值,并計算不同取值情況下星座的覆蓋性能指標,直到遺傳算法程序收斂退出,得到優化后的每顆衛星的三個設計變量的最終參數。

所述步驟(32)中計算不同取值情況下星座的覆蓋性能指標過程為:

在給定星座內每顆衛星三個設計變量的取值的情況下,星座內相關幾顆衛星的軌道參數全部已知,通過STK提供的MATLAB接口函數,更新STK場景中相關幾顆衛星對象的軌道;

更新星座對用戶重點關注區域的覆蓋計算,通過重新計算星座覆蓋定義對象CoverageDefinition來實現;

重新計算星座對用戶重點關注區域的覆蓋性能指標,通過獲取效能統計對象FigureOfMerit按緯度分布的覆蓋效能報告來實現。

本發明與現有技術相比的優點在于:本發明的方法簡單,主要利用商業軟件MATLAB和STK作為工具進行仿真分析。其核心創新點在于提出了一種新的計算星座構型優化設計的方法,通過結合MATLAB在數值優化方面和STK軟件在星座覆蓋分析方面的優勢,利用MATLAB完成遺傳算法計算,利用STK完成星座覆蓋效能計算,通過STK和MATLAB的接口函數實現二者的數據交互,從而大大提高了星座構型優化的效率。該方法編碼簡潔,具有較好的普適性,并已在型號任務的研制過程中得到了應用。

附圖說明

圖1為本發明利用MATLAB遺傳算法工具包求解星座構型優化設計的流程框圖;

圖2定義AreaT區域對象;

圖3定義CovD覆蓋定義對象。

具體實施方式

下面結合實施例對本發明進行詳細說明。

(一)構建星座構型優化的數學模型

星座對用戶重點關注區域的覆蓋特性是星座構型設計需要考慮的重要指標之一。重點關注區域范圍由用戶提供,是星座構型設計的輸入條件。星座對區域的覆蓋性能指標,根據星座任務特點而定。如偵察、通信衛星,更關注星座對區域的時間分辨率(最大覆蓋間隙),而遙感衛星,更關注單位時間內星座對區域的覆蓋次數。

星座中各顆衛星的載荷視場大小、工作模式、由衛星總體和載荷單位聯合提供,也是星座構型優化設計的重要輸入條件。

星座中,單顆衛星的軌道類型、軌道高度、半長軸、偏心率在任務分析階段確定。需要設計的是星座中衛星與衛星之間的相位關系,即星座的構型。星座構型的設計變量即為各顆衛星的升交點赤經、近地點幅角和平近點角三個參數。

星座構型優化描述為:通過設計描述星座構型的參數X,使得在滿足設計約束條件Constraint的前提下,該星座對用戶重點關注區域的覆蓋效能Obj=f(X)最優。數學模型為:

min Obj=f(X)

st.Constraint

(二)在STK中建立場景,完成星座對目標區域的覆蓋的定義

在STK中初步建立場景,計算星座對目標區域的覆蓋。具體操作步驟為:

●打開STK軟件,新建一個場景(Scenario)。

●在場景中添加一個區域對象(AreaTarget),用來定義星座重點覆蓋的目標區域。雙擊打開區域對象的屬性設置,在Basic->Boundary中,通過添加區域的頂點來定義區域。

●在場景中添加若干衛星(Satellite),分別用來定義星座中的各顆衛星。各衛星軌道參數采用默認值。

●在場景中分別給各衛星對象(Satellite)添加傳感器(Sensor),用來定義衛星載荷視場能力范圍。分別雙擊打開傳感器對象的屬性設置,在Basic->Definition中,定義傳感器錐角范圍。

●在場景中添加一個星座對象(Constellation),用來定義衛星載荷視場能力范圍(Sensor)的集合。雙擊打開星座對象的屬性設置,在Basic->Definition中,將描述衛星載荷能力范圍的各個傳感器都添加到星座的集合中(Assigned Objects)。

●在場景中添加一個覆蓋定義對象(CoverageDefinition),用來定義星座對目標區域的覆蓋。雙擊打開覆蓋對象的屬性設置,在Basic->Grid中,選擇Grid Area of Interest的type為Custom Regions,并在Select Regions中,選擇目標區域對象;設置目標區域內網格劃分的顆粒度(Grid Definition->Point Granularity);在Basic->Assets中,將星座對象選中,并點擊Assign。完成星座對區域內按設定顆粒度劃分的所有點目標的覆蓋定義。

●在場景中給覆蓋定義對象(CoverageDefinition)添加一個效能統計對象(FigureOfMerit),用來統計星座對目標區域的覆蓋效能(如時間分辨率)。雙擊打開效能統計對象的屬性設置,在Basic->Definition中,選擇統計相應的覆蓋效能。

(三)編寫基于MATLAB遺傳算法工具包的星座優化程序,結合STK求解星座優化設計問題

在MATLAB中,提供多種遺傳算法接口調用方式。本發明中用到的MATLAB遺傳算法接口函數為

x=ga(Objfcn,N,[],[],[],[],LB,UB)

其中Objfcn表示目標函數、N為設計變量的個數、LB和UB分別表示設計變量取值的下邊界和上邊界,x為遺傳算法求解的最優解。基于MATLAB遺傳算法工具包,求解星座構型優化的程序分為主程序和計算星座覆蓋性能指標的子程序(Objfcn)。如圖1所示,兩部分程序中的主要過程及用到的關鍵MATLAB函數如下:

●主程序:

A.初始化MATLAB與STK的連接(關鍵MATLAB函數:stkInit,stkOpen)

B.設置星座構型的參數X的上邊界UB和下邊界LB。

C.利用遺傳算法的機制,不斷迭代更新參數X的取值,并計算不同取值情況下星座的覆蓋性能指標,直到遺傳算法程序退出,得到優化后的設計變量。(關鍵MATLAB函數:ga)

●計算星座覆蓋性能指標的子程序(Objfcn):

A.在給定一組參數X的取值的情況下,星座中各顆衛星的軌道參數全部已知。通過STK提供的MATLAB接口函數stkSetPropClassical,更新STK場景中各顆衛星的軌道。(關鍵MATLAB函數:stkSetPropClassical)

B.利用STK提供的MATLAB接口函數stkExec,執行STK/Connect指令,在STK中計算更新后的星座對目標區域的覆蓋。。

C.利用STK提供的MATLAB接口函數stkReport,提取更新后的星座對目標區域的覆蓋性能指標按緯度分布的報告。

D.對按緯度分布的覆蓋性能指標取平均,得到更新后的星座對目標區域內所有點的平均覆蓋效能。

(四)在STK中,對構型優化結果進行仿真驗證

在完成步驟(三)后,得到最優的星座構型參數取值X。在STK場景中,更新星座中各顆衛星的軌道參數,計算星座對目標區域的覆蓋,進行仿真驗證。

實施案例:

假設仿真輸入條件如下:

●區域目標為(東經110度,北緯15度)到(東經120度,北緯25度)的矩形區域。

●星座由四顆橢圓軌道衛星組成,四顆衛星兩兩分布在兩個軌道平面上,同軌道面內兩顆衛星的升交點赤經完全相同。單星的半長軸為12000km,偏心率為0.4,軌道傾角為63.4度。

●衛星能夠對星下點60度范圍內區域覆蓋。

●星座優化目標為時間分辨率最小。

按照本發明方法,計算過程如下:

(一)構建星座構型優化的數學模型;

區域覆蓋星座由四顆衛星組成,星座中各星的軌道半長軸、偏心率、軌道傾角、近地點幅角都相同。所述星座構型是指衛星與衛星之間的相位關系,用升交點赤經、平近點角來表示,如表1所示,表中X(1)、X(2)、X(3)、X(4)、X(5)、X(6)分別表示6個星座構型相關的設計變量。

表1星座構型關系

定義星座的構型優化目標是通過合理設計四顆衛星的構型,使得星座對某區域的時間分辨率覆蓋特性最優。星座的時間分辨率又叫星座的最大覆蓋間隙,描述為衛星星座對地面上某點連續兩次觀測之間最長的間隔時長。

星座構型設計變量,即表中的X(1)、X(2)、X(3)、X(4)、X(5)、X(6),都有自己的約束范圍。這6個設計變量的取值范圍都是0~360度。

星座優化可以寫成標準形式如下:

min Obj=f(X)

st.0≤X≤360°

其中目標函數Obj=f(X)為星座對目標區域的平均時間分辨率,與星座構型相關參數X的取值有關,是一個非線性函數;星座構型相關參數X為6維的數組,取值范圍為0~360度。

(二)在STK中建立場景,完成星座對目標區域的覆蓋的定義

在STK中初步建立場景,計算星座對區域目標覆蓋。具體操作步驟為:

●打開STK軟件,新建一個場景(Scenario),命名為“MatlabStk”。

●在場景中添加一個區域目標對象(AreaTarget),命名為“AreaT”,用來定義星座重點覆蓋的區域。雙擊打開AreaT對象的屬性設置,在Basic->Boundary中,通過添加AreaT區域的頂點來定義區域。輸入AeraT區域對象的四個頂點為(15N,110E)、(15N,120E)、(25N,120E)、(25N、110E),則AeraT定義的區域如科2所示,圖2定義AreaT區域對象;

●在場景中添加四顆衛星(Satellite),分別命名為“S1”、“S2”、“S3”、“S4”,用來定義星座中的四顆衛星。衛星軌道參數采用默認值。

●在場景中分別給衛星對象S1、S2、S3、S4添加一個傳感器(Sensor),分別命名為“Sensor1”、“Sensor2”、“Sensor3”、“Sensor4”,用來定義衛星載荷的視場范圍。分別雙擊打開Sensor1、Sensor2、Sensor3、Sensor4對象的屬性設置,在Basic->Definition中,將Sensor的半錐角(Cone Half Angle)定義為60度,表示衛星的載荷視場范圍為星下點側擺60度的范圍。

●在場景中添加一個星座對象(Constellation),并命名為“Con”,用來定義衛星載荷的集合。雙擊打開Con對象的屬性設置,在Basic->Definition中,將Sensor1、Sensor2、Sensor3、Sensor4添加到Con的集合中(Assigned Objects)。

●在場景中添加一個覆蓋定義對象(CoverageDefinition),并命名為“CovD”,用來定義四顆衛星載荷的集合Con對目標區域AreaT的覆蓋。雙擊打開CovD對象的屬性設置,在Basic->Grid中,選擇Grid Area of Interest的type為Custom Regions,并在Select Regions中,選擇AreaT對象;設置Grid Definition中的Point Granularity為Lat/Lon 1度;在Basic->Assets中,將Con對象選中,并點擊Assign。完成該步驟后,可以在STK的二維窗口中看到,AreaT區域中,按經緯度1度的間隔,填充了許多點,如科3所示,圖3定義CovD覆蓋定義對象

●在場景中給CovD對象添加一個效能統計對象(FigureOfMerit),并命名為“FoM”,用來統計星座Con對區域AreaT的最大重訪間隔覆蓋效能(時間分辨率)。雙擊打開FoM對象的屬性設置,在Basic->Definition中,選擇Definition的Type為Revisit Time,選擇Compute為Maximum。

(三)在MATLAB中編寫星座優化的遺傳算法程序,結合STK求解星座優化設計問題;

基于MATLAB遺傳算法工具包,求解星座構型優化的步驟及用到的MATLAB函數如下:

●主程序:

初始化MATLAB與STK的連接(關鍵MATLAB函數:stkInit,stkOpen)

設置六個設計變量X(1)、X(2)、X(3)、X(4)、X(5)、X(6)的上邊界UB和下邊界LB。

利用遺傳算法的機制,不斷迭代更新六個設計變量的取值,并計算不同取值情況下星座的覆蓋性能指標,直到遺傳算法程序退出,得到優化后的六個設計變量。(關鍵MATLAB函數:ga)

●計算星座覆蓋性能指標的程序(Objfcn):

在給定一組X(1)、X(2)、X(3)、X(4)、X(5)、X(6)取值的情況下,四顆衛星的軌道參數全部已知。通過STK提供的MATLAB接口函數,更新MatlabStk場景中S1、S2、S3、S4衛星對象的軌道。(關鍵MATLAB函數:stkSetPropClassical)

重新計算覆蓋定義對象CovD。(關鍵MATLAB函數:stkExec;STK/Connect指令‘Cov MatlabStk/CoverageDefinition/CovD Access Compute’)。

獲取覆蓋性能指標CovD/FoM的報告。(關鍵MATLAB函數:stkReport;報告類型,Value by Latitude)。

對按緯度分布的覆蓋性能指標取平均,得到該星座構型情況下,對區域AreaT內所有點的平均最大覆蓋間隔(時間分辨率)。

(四)在STK中,對構型優化結果進行仿真驗證

在完成步驟(三)后,得到最優的星座構型參數取值X。在STK場景中,更新星座中各顆衛星的軌道參數,計算星座對目標區域的覆蓋,進行仿真驗證。

本發明說明書中未作詳細描述的內容,尤其是關于STK的操作方法,均屬本領域技術人員的公知技術。

當前第1頁1 2 3 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
韩国伦理电影