国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      多處理器實時仿真平臺的制作方法

      文檔序號:2536362閱讀:391來源:國知局
      專利名稱:多處理器實時仿真平臺的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明一種用于衛(wèi)星動態(tài)的仿真平臺,特別是一種多處理器實時仿真平臺。

      背景技術(shù)
      衛(wèi)星動態(tài)仿真技術(shù)就是用做試驗來進行科學(xué)研究的方法。衛(wèi)星仿真分為數(shù)學(xué)仿真、半物理仿真、全物理仿真三種,其中衛(wèi)星控制系統(tǒng)的仿真尤為重要。數(shù)學(xué)仿真就是在計算機上對系統(tǒng)的數(shù)學(xué)模型進行試驗,衛(wèi)星控制系統(tǒng)數(shù)學(xué)仿真通常與控制系統(tǒng)計算機輔助分析相結(jié)合,完成衛(wèi)星軌道動力學(xué)和衛(wèi)星姿態(tài)動力學(xué)的時域仿真及控制系統(tǒng)頻域分析。
      衛(wèi)星數(shù)學(xué)仿真主要包括下列內(nèi)容(1)空間環(huán)境模型仿真包括地球引力場、磁場、空氣動力、太陽輻射壓力、日-月-地攝動等仿真;(2)衛(wèi)星的軌道動力學(xué)及制導(dǎo)與導(dǎo)航系統(tǒng)仿真;(3)衛(wèi)星的姿態(tài)動力學(xué)與控制系統(tǒng)仿真,包括三軸穩(wěn)定衛(wèi)星姿態(tài)確定與控制系統(tǒng)仿真;自旋衛(wèi)星姿態(tài)確定與控制系統(tǒng)仿真;多剛體系統(tǒng)動力學(xué)分析及控制仿真;帶晃動液體貯箱及大型撓性附件衛(wèi)星的姿態(tài)確定與控制系統(tǒng)仿真。
      數(shù)學(xué)仿真最關(guān)鍵的問題是建立能精確地反映系統(tǒng)性能的數(shù)學(xué)模型。建立系統(tǒng)數(shù)學(xué)模型有兩種途徑,即理論建模和試驗建模。一個復(fù)雜的動力學(xué)系統(tǒng)建模常常需要兩種方法并用。采用理論建立的數(shù)學(xué)模型不僅需要通過試驗來取得有關(guān)參數(shù),也有待于通過試驗來驗證和修正。復(fù)雜衛(wèi)星的結(jié)構(gòu)一般由一個主剛體、撓性附件(大型天線和太陽帆板)和帶有晃動液體的燃料貯箱組成,系統(tǒng)高度復(fù)雜,很難得到精確的理論模型并求解,總是在一定的假設(shè)條件下簡化,這就使得驗證模型工作顯得十分重要。通過測量衛(wèi)星在軌運行參數(shù)來驗證和修改衛(wèi)星的數(shù)學(xué)模型是最為有效的方法,但難度頗大。
      目前,對于衛(wèi)星數(shù)字仿真通常采用的是PC機作核心處理機,同時采用windows操作系統(tǒng)。由于系統(tǒng)本身存在某些不確定因素及實時性不夠,因此會造成整個仿真不確定.如果采用VxWorks實時操作系統(tǒng),同樣仿真成本會增加。有時為了仿真相應(yīng)的空間環(huán)境,都要動用幾十臺電腦同時工作十幾天,這樣一個方面造成資源浪費,另一方面花費時間太多;同時采用PC機實現(xiàn)衛(wèi)星系統(tǒng)仿真,大多數(shù)是基于PCI總線卡,這樣在數(shù)據(jù)傳輸上PCI總線的帶寬及傳輸速率是整個控制系統(tǒng)的瓶頸,因此在這個基礎(chǔ)上,提出多處理器實時仿真平臺,對于衛(wèi)星動態(tài)仿真,是一個非常必要的,而且是今后衛(wèi)星發(fā)展的一個趨勢,是必須的,同時集成ARM技術(shù)、DSP技術(shù)及FPGA技術(shù)的各種優(yōu)勢的嵌入式系統(tǒng),是衛(wèi)星動態(tài)仿真中唯一能夠突破PC機仿真瓶頸的技術(shù)途徑,不僅可以大大提高衛(wèi)星仿真精度,同時也為今后衛(wèi)星在處理器選型上提供可靠的依據(jù)和支持。


      發(fā)明內(nèi)容
      本發(fā)明的技術(shù)解決問題克服現(xiàn)有技術(shù)的不足,提供一種基于嵌入式高速共享存儲器的多處理器實時仿真平臺,它避免了在衛(wèi)星設(shè)計前期的數(shù)字化仿真利用眾多的計算機進行仿真,解決了模型庫小型化,簡化了系統(tǒng)的復(fù)雜性,降低了仿真難度,提高了仿真的實時性。
      本發(fā)明的技術(shù)解決方案多處理器衛(wèi)星實時仿真平臺,由三個或更多的ARM處理器和兩個或更多的DSP處理器通過FPGA作為中間存儲器組成,其中ARM1作為仿真衛(wèi)星控制中心計算機,運行姿態(tài)軌道控制算法;ARM2用于仿真衛(wèi)星所處的空間環(huán)境;ARM3用于衛(wèi)星的動力學(xué)計算,完成對衛(wèi)星姿態(tài)軌道參數(shù)計算;DSP1主要是完成敏感器模型的計算;DSP2主要是完成執(zhí)行機構(gòu)模型的計算;首先ARM1向DSP1發(fā)出數(shù)據(jù)獲取指令,即ARM1要讀取當(dāng)前衛(wèi)星敏感器數(shù)據(jù),然后DSP1向ARM2、ARM3發(fā)出獲取數(shù)據(jù)指令,即敏感器要知道當(dāng)前衛(wèi)星所處的空間環(huán)境和動力學(xué)狀態(tài),從FPGA中讀取到相關(guān)數(shù)據(jù)后即向ARM1傳送數(shù)據(jù),ARM1根據(jù)所讀取的數(shù)據(jù)進行計算獲得相應(yīng)的姿態(tài)軌道參數(shù),如果參數(shù)滿足要求,衛(wèi)星即進入正常模式,如果不滿足要求,ARM1向DSP2發(fā)送控制指令,完成對執(zhí)行機構(gòu)的控制,同時DSP2完成計算后通過FPGA向ARM2、ARM3輸出相應(yīng)數(shù)據(jù),直到姿態(tài)軌道滿足相應(yīng)要求。
      所述仿真平臺還包括擴展接口,主要是便于所述的各處理器作功能擴展用,實現(xiàn)相應(yīng)功能后通過擴展接口實現(xiàn)數(shù)據(jù)對外通信。
      本發(fā)明與現(xiàn)有技術(shù)相比的優(yōu)點在于 (1)本發(fā)明采用ARM芯片主要是來替換當(dāng)今衛(wèi)星仿真所使用的計算機,由于ARM芯片主要完成姿態(tài)/軌道控制、動力學(xué)計算、空間環(huán)境計算,這個計算會使用相應(yīng)的操作系統(tǒng),因此采用ARM芯片可以更好地移植相應(yīng)的程序,而不需要對已有的程序有太大的變動,同時目前ARM內(nèi)核其主頻已超過1GHZ,對于星上的程序計算已經(jīng)足夠;采用DSP作為模型計算主要考慮其精度,在進行各個模型仿真時,建立的模型盡可能與真實衛(wèi)星相應(yīng)的部件一致,包括建立各部件的基本模型、誤差模型、其他干擾模型以及故障模型等,因此主要著重于算法及計算,DSP芯片其最主要的優(yōu)點就是具有強大的計算能力,因此可以勝任對各模型的計算仿真;FPGA技術(shù)主要是完成對各種邏輯的處理,整個衛(wèi)星要實現(xiàn)數(shù)據(jù)共享,都要通過FPGA內(nèi)部存儲空間實現(xiàn),通過在FPGA內(nèi)部采用FIFO模塊,可以方便地實現(xiàn)各個處理器之間的數(shù)據(jù)共享。
      (2)整個處理模塊之間采用中斷機制進行相互協(xié)調(diào),可方便地實現(xiàn)仿真的數(shù)據(jù)通信,避免了在采用計算機仿真時出現(xiàn)的非常難解決同步機制問題。
      (3)整個處理模塊,各處理器之間采用三總線,即數(shù)據(jù)/地址/控制總線連接方式實現(xiàn)數(shù)據(jù)傳輸,避免了采用計算機仿真時通過PCI總線卡實現(xiàn)對下端設(shè)備的控制,采用計算機會出現(xiàn)PCI總線速率及帶寬的限制,同時通過PCI總線傳輸其總線傳輸時延非常大,是提高系統(tǒng)響應(yīng)時間的一個瓶頸,并且PCI總線不具備實時傳輸機制,本發(fā)明處理模塊采用三總線直連方式提高數(shù)據(jù)傳輸效率及通信時間,同時還極大地提高了系統(tǒng)響應(yīng)時間及實時性,提高了衛(wèi)星的控制精度。
      (4)整個處理模塊,主要邏輯控制由FPGA來實現(xiàn),因此解決了采用計算機繁雜的握手信號的處理,同時還會消耗大量計算機資源的問題,采用FPGA完成邏輯處理方便地實現(xiàn)了各處理器之間的協(xié)調(diào)。
      (5)整個處理模塊,所有數(shù)據(jù)都通過FPGA實現(xiàn)數(shù)據(jù)共享,采用FIFO技術(shù)實現(xiàn)數(shù)據(jù)融合,提高了數(shù)據(jù)的互訪效率,避免了采用計算機仿真時使用昂貴的反射內(nèi)存網(wǎng)實現(xiàn)數(shù)據(jù)共享。
      (6)整個處理模塊采用通用化、小型化及模塊化設(shè)計,不僅適用于單顆衛(wèi)星控制系統(tǒng)仿真,還可通過擴展接口實現(xiàn)多星仿真。避免了采用計算機進行多星仿真時要使用大量的計算機和浪費大量的空間資源,同時整個處理模塊的擴充極大地提高了組建衛(wèi)星星座仿真的效率。
      (7)整個處理模塊不僅可以作為一個仿真平臺來實現(xiàn)單顆衛(wèi)星控制系統(tǒng)的仿真,同時也可以將其作為其中一個部件,如將其中的ARM處理器作為空間環(huán)境單個模型的處理,同時通過FPGA實現(xiàn)數(shù)據(jù)共享,可以方便地實現(xiàn)更為復(fù)雜模型的計算,可以通過計算對其他工作提供數(shù)據(jù)支持,如重新配置整個處理模塊的部分程序可以用來進行空間碎片建模計算。
      (8)整個處理模塊可以進一步擴展,如增加更多的ARM處理器,其內(nèi)部運行實時操作系統(tǒng)用于替換當(dāng)前仿真中所使用的計算機,如增加更多的DSP處理器可以實現(xiàn)更為復(fù)雜的模型計算,提高整個衛(wèi)星控制精度;增加更多的處理器只要按照與之前的處理器連線方式相同即可,同時再按相應(yīng)的程序配置FPGA的管腳就可實現(xiàn)處理器模塊的增加。
      (9)整個處理模塊實現(xiàn)過程容易,對于之前已有的程序不需要作太大的改變,如采用操作系統(tǒng),只需適當(dāng)移植相應(yīng)的程序即可實現(xiàn)與原來采用計算機仿真同樣的功能,同時根據(jù)不同衛(wèi)星配置不同程序,極大地提高了衛(wèi)星前期仿真的效率及降低了前期仿真的運行成本。



      圖1為本發(fā)明的動態(tài)仿真的原理示意圖; 圖2為本發(fā)明的多處理器實時仿真平臺組成框圖; 圖3為本發(fā)明的仿真平臺的實現(xiàn)流程圖; 圖4為圖2中的FPGA內(nèi)部功能圖; 圖5為圖2中的ARM1的實現(xiàn)流程圖; 圖6為圖5中姿軌控軟件的耦合性分析; 圖7為圖2中的ARM2的實現(xiàn)流程圖; 圖8為圖2中的ARM3的實現(xiàn)流程圖; 圖9為圖7中由中心剛體和多個撓性附件構(gòu)成的衛(wèi)星坐標(biāo)系; 圖10為圖2中的DSP1的實現(xiàn)流程圖; 圖11為圖2中的DSP2的實現(xiàn)流程圖; 圖12為圖11中磁力矩器控制模型程序流程圖; 圖13為圖2中的擴展接口的實現(xiàn)框圖; 圖14為圖2中擴展系統(tǒng)的分布式解決方案; 圖15為本發(fā)明的具體實現(xiàn)框圖; 圖16為本發(fā)明的通過網(wǎng)絡(luò)UDP方式向地面計算機模擬器發(fā)送的歸檔數(shù)據(jù)圖,其中圖16a為衛(wèi)星姿態(tài)控制示意圖,16b為敏感器數(shù)據(jù)顯示圖,16c為三維STK顯示示意圖。

      具體實施例方式 如圖1所示,本發(fā)明整個衛(wèi)星動態(tài)仿真原理。衛(wèi)星處在不同工作模式下進行不同的姿態(tài)/軌道控制,在進行姿態(tài)控制時,衛(wèi)星控制中心處理器首先從敏感器讀取相應(yīng)敏感器的數(shù)據(jù),獲得當(dāng)前衛(wèi)星所處狀態(tài)即當(dāng)前衛(wèi)星星歷、太陽位置、月球位置、地球位置等一系列參數(shù),獲得參數(shù)后,中心控制器計算當(dāng)前衛(wèi)星所需姿態(tài)角,同時發(fā)出相應(yīng)控制命令控制執(zhí)行機構(gòu)動作;此時衛(wèi)星本體在衛(wèi)星自身的執(zhí)行機構(gòu)動作后,加上空間攝動的影響,衛(wèi)星姿態(tài)會發(fā)生相應(yīng)的改變,同時敏感器會獲得相關(guān)參數(shù)提供給控制中心處理器進行下一步姿態(tài)控制,直至敏感器獲得的參數(shù)符合衛(wèi)星所需的數(shù)據(jù)時為止。
      如圖2所示,本發(fā)明由三個或者更多的ARM處理器和兩個或更多的DSP處理器通過FPGA作為中間存儲器組成,整個處理模塊架構(gòu)簡單,全部由單芯片組成,不涉及復(fù)雜的外擴芯片及接口或者復(fù)雜的總線技術(shù);其中ARM1用于仿真衛(wèi)星控制中心計算機,運行姿態(tài)軌道控制算法,按衛(wèi)星從星箭分離開始進行模式分解,具體模式可根據(jù)不同衛(wèi)星會有不同的區(qū)別,但基本上包含速率阻尼模式、太陽捕獲模式、地球搜索模式、正常模式、應(yīng)急模式等。對于不同的模式采用不同的控制方法,一般典型的算法都是基于PID控制律設(shè)計;ARM2用于仿真衛(wèi)星所處的空間環(huán)境,主要是各種攝動力對衛(wèi)星本身的影響,比較典型的如低軌道衛(wèi)星考慮較多的為地球非球形攝動、地球引力攝動、大氣阻力影響等,對于中高軌道衛(wèi)星來說,較多考慮太陽光壓攝動、月球引力攝動等;根據(jù)不同軌道衛(wèi)星運行軌道不同考慮空間環(huán)境仿真會不一樣;ARM3用于衛(wèi)星的動力學(xué)計算,完成對衛(wèi)星姿態(tài)軌道計算,其主要根據(jù)當(dāng)前獲得的衛(wèi)星測量部件信息和控制部件信息,同時根據(jù)衛(wèi)星本身的一些信息如衛(wèi)星重量、慣量等計算出衛(wèi)星當(dāng)前的姿態(tài)和軌道數(shù)據(jù)給控制中心計算機和敏感器及執(zhí)行機構(gòu);兩個DSP主要用來計算各種不同的模型,可以根據(jù)不同的衛(wèi)星配置不同敏感器和執(zhí)行機構(gòu)來配置不同的部件模型,由于地面仿真要盡可能做到與真實部件一致,因此需要芯片支持浮點運算能力和強大的計算能力,DSP正好可以勝任這一要求。DSP1主要是敏感器模型的計算,主要計算敏感器相關(guān)信息,目前敏感器基本包括太陽敏感器、地球敏感器、星敏感器、陀螺和磁強計等。根據(jù)不同軌道衛(wèi)星可選擇不同的敏感部件,如低軌道小衛(wèi)星一般選擇太陽敏感器、陀螺、磁強計等,因此仿真時只需添加相應(yīng)的模型即可。整個模型在進行計算時,需要從外部獲得相應(yīng)的信息,因此DSP1首先得從外部讀取當(dāng)前衛(wèi)星姿態(tài)軌道信息,這些數(shù)據(jù)需要從動力學(xué)計算機獲取,動力學(xué)計算機給出信息后,敏感器根據(jù)衛(wèi)星目前的狀態(tài),以及敏感器安裝的位置,同時根據(jù)敏感器本身的工作原理計算出敏感器當(dāng)前應(yīng)該輸出的數(shù)據(jù),DSP2主要是執(zhí)行機構(gòu)模型的計算,目前執(zhí)行機構(gòu)主要包括磁力矩器、推力器、動量輪和控制力矩陀螺。與DSP1一樣,不同軌道的衛(wèi)星會選擇不同的執(zhí)行機構(gòu)部件。其具體情況與DSP1相同。
      如圖3所示,本發(fā)明的實現(xiàn)過程如下首先上電啟動后,各芯片首先自己運行初始化程序,初始化各種變量、堆??臻g等,完成初始化后,芯片開始等待程序運行指令,星載計算機運行姿態(tài)/軌道控制算法,啟動程序運行指令,即各處理器接收到一個信號變化后,程序啟動運行;ARM1首先向DSP1發(fā)出數(shù)據(jù)獲取指令,即控制中心處理器AMR1讀取當(dāng)前衛(wèi)星敏感器數(shù)據(jù),DSP1向ARM2、ARM3發(fā)出獲取數(shù)據(jù)指令,即敏感器要知道當(dāng)前衛(wèi)星所處的空間狀態(tài),從FPGA中讀取到相關(guān)數(shù)據(jù)后即向ARM1傳送數(shù)據(jù);ARM1根據(jù)所讀取的數(shù)據(jù)進行計算獲得相應(yīng)的姿態(tài)軌道參數(shù),如果參數(shù)滿足要求,衛(wèi)星即進入正常模式,如果不滿足要求,ARM1向DSP2發(fā)送控制指令,完成對執(zhí)行機構(gòu)的控制,同時DSP2完成計算后通過FPGA向ARM2、ARM3輸出相應(yīng)數(shù)據(jù),直到姿態(tài)軌道滿足相應(yīng)要求。
      如圖4所示,本發(fā)明中的FPGA作為整個系統(tǒng)仿真中間存儲器,主要采用FIFO技術(shù)實現(xiàn)數(shù)據(jù)共享,其中一個ARM處理器將計算完成的數(shù)據(jù)通過地址/數(shù)據(jù)總線寫入FIFO,同時觸發(fā)其他幾個設(shè)備,如果此時其他幾個設(shè)備需要相關(guān)數(shù)據(jù)則發(fā)出相關(guān)指令讀取這些數(shù)據(jù),因為每一個設(shè)備都對應(yīng)一個FIFO,而每個FIFO又跟其他幾個處理器相連,由于采用的是地址/數(shù)據(jù)直接連接,整個讀寫過程的時間幾乎可以忽略不記,同時也避免了同一時刻向同一FIFO寫入很多數(shù)據(jù)。FPGA同時還完成對整個系統(tǒng)仿真的同步控制,避免仿真出現(xiàn)混亂,因為衛(wèi)星動態(tài)仿真過程對同步要求極高,本發(fā)明采用FPGA完成協(xié)調(diào)控制,及匹配各處理器的時序邏輯。
      如圖5所示,本發(fā)明的ARM1由單一芯片構(gòu)成,其是整個衛(wèi)星仿真平臺的控制核心,其首先通過FPGA讀取DSP1存放在FIFO中的數(shù)據(jù),進行姿態(tài)軌道控制算法計算后,向FPGA輸出相應(yīng)的控制命令,同時通知DSP2讀取相應(yīng)數(shù)據(jù),DSP2讀取相應(yīng)命令后完成對執(zhí)行機構(gòu)的控制模擬。由上可知ARM1對外直接與FPGA連接,所有數(shù)據(jù)采用FPGA內(nèi)部FIFO模塊共享。
      ARM1內(nèi)部涉及姿態(tài)軌道控制算法,其具體實現(xiàn)方法如下 (1)首先根據(jù)系統(tǒng)論原理,對姿態(tài)控制算法進行耦合性分析,主要從系統(tǒng)功能分解、硬件組成結(jié)構(gòu)分解、算法分解、參數(shù)分解幾個層面上進行。一般情況下,由于需實現(xiàn)的功能不同,完成任務(wù)所需要的敏感器和執(zhí)行機構(gòu)也不同;在硬件組成結(jié)構(gòu)相同的情況下,不同的工況,姿態(tài)估計和姿態(tài)控制算法也可能不同;在算法相同的情況下,不同的工況,控制參數(shù)也不同。所以越接近底層,可分解出來的不同模塊越多,呈金字塔形,如圖6所示。以下說明每個分解層次的具體含義。
      功能層分解是根據(jù)特定時間或特定工況姿軌控系統(tǒng)完成的任務(wù)不同進行分解,分解后得出的功能模式是描述姿軌控系統(tǒng)能力的規(guī)范用語。
      硬件組成結(jié)構(gòu)層分解是根據(jù)姿軌控系統(tǒng)采用的敏感器與執(zhí)行機構(gòu)不同進行分解,分解后得出的組成結(jié)構(gòu)模式是描述姿軌控系統(tǒng)工作狀況的規(guī)范用語。星上電子系統(tǒng)的一些設(shè)計工況與此相關(guān)。
      算法層分解是根據(jù)姿軌控系統(tǒng)姿態(tài)確定與姿態(tài)控制算法的不同進行分解。算法分解不僅是區(qū)分不同處,也可以歸納出相同處。分解出的規(guī)范算法可以在不同的衛(wèi)星間共享,增強星載軟件系統(tǒng)的可靠性,降低研制風(fēng)險。
      參數(shù)層分解是根據(jù)設(shè)定的修正、反饋和其它工作參數(shù)不同進一步對算法進行分解。分解出的核心參數(shù)是遙測遙控信號設(shè)計的依據(jù)之一。
      (2)按以上分解完成后,根據(jù)不同的模式要求,確定不同的姿態(tài)確定算法和控制算法。大體上姿態(tài)確定算法有星光與太陽光雙矢量定姿、太陽與地磁雙矢量定姿、日地雙矢量定姿、姿態(tài)與陀螺漂移修正等等,控制算法大體上八分區(qū)相平面噴氣脈寬計算、繼電器型角速度噴氣控制、推力器分配算法等等,可根據(jù)具體實現(xiàn)方式采用不同算法,同時也確定好各算法的輸入輸出參數(shù)。
      (3)軌道計算只有兩種方法,一種是利用地面站注入的數(shù)據(jù)進行推算,另一種是采用GPS數(shù)據(jù),并對注入數(shù)據(jù)進行修正。
      (4)軌道控制主要采用軌控發(fā)動機進行軌道修正及變軌。
      完成上述步驟后,即可編程統(tǒng)一各種算法,實現(xiàn)不同模式下的調(diào)度需求,也就是整個姿態(tài)軌道控制算法。
      如圖7所示,ARM2由單一芯片構(gòu)成,其主要完成空間環(huán)境計算,在接收到ARM1發(fā)出的運行指令后,ARM2開始運行,同時將空間環(huán)境計算完成的數(shù)據(jù)存儲在FPGA中相應(yīng)的FIFO空間處;DSP1在接到ARM1獲取數(shù)據(jù)指令后,立即向ARM2發(fā)出數(shù)據(jù)獲取指令,同時讀取ARM2在FPGA內(nèi)部存儲好的數(shù)據(jù);DSP1同時也在FPGA中存儲相關(guān)數(shù)據(jù)供ARM3讀取。
      以天體位置計算為例說明ARM2空間環(huán)境計算方法 太陽位置確定實現(xiàn)原理已知數(shù)據(jù)注入時確定的歷元時刻τ及一組太陽軌道根數(shù),可以根據(jù)這組根數(shù)推算出任意時刻太陽的直角坐標(biāo)。根據(jù)地球自轉(zhuǎn)速率求格林維治赤經(jīng),具體實現(xiàn)步驟如下 (1)確定輸入?yún)?shù)即計算歷元時刻t (2)確定輸出參數(shù)即太陽在慣性坐標(biāo)系中的空間位置矢量r,格林維治赤經(jīng)λG (3)注入存貯數(shù)據(jù)(太陽軌道根數(shù))e,i,t0,ω0,M0,ωm,n,λG0 常數(shù)地球自轉(zhuǎn)角速度ωE=7.292115×10-5rad/s 這幾個數(shù)據(jù)有具體計算方法如下 根據(jù)天文年歷,可以查得相對于當(dāng)天平春分點的太陽平軌道根數(shù),不考慮當(dāng)天平春分點與J2000.0平春分點的偏差,則太陽在地心慣性坐標(biāo)系內(nèi)的平軌道根數(shù)描述為 e=0.01670862-0.00004204T-0.00000124T2 i=23°26′21″.448-46″.815T-0″.00059T2+0″.00181T3 ω0=282°56′14″.45+6190″.32T+1″.655t2+0″.012T3 M0=357°31′44.76″+129596581″T-0″.562T2-0″.012T3 n=1.990968752798×10-7 ωm=-9.510076261979×10-12 t0時的格林威治角
      其中T為J2000.0起算的時間間隔儒略世紀(jì)數(shù),其計算公式為 其中JD(t)是計算時刻t對應(yīng)的儒略日,JD(J2000.0)是歷元J2000.0對應(yīng)的儒略日。
      (4)星上具體計算太陽位置在慣性坐標(biāo)系中的位置方法如下 t時刻軌道根數(shù) M=M0+n(t-t0) ω=ω0+ωm(t-t0) f=M+2esinM+1.25e2sin(2M)+ω 太陽在慣性坐標(biāo)系中的位置為 格林維治赤經(jīng) λG=λG0+ωE(t-t0) 根據(jù)以上4步,就可以得出當(dāng)前時刻t,太陽在慣性坐標(biāo)系下的具體位置。
      如圖8所示,本發(fā)明的動力學(xué)計算處理器AMR3主要完成衛(wèi)星當(dāng)前姿態(tài)軌道計算,動力學(xué)處理器等待DSP1通知其讀取數(shù)據(jù),即ARM3得到DSP1發(fā)出的讀取指令后,從FPGA中所對應(yīng)的FIFO處讀取當(dāng)前衛(wèi)星敏感器的狀態(tài)數(shù)據(jù),同時進行衛(wèi)星當(dāng)前姿態(tài)及軌道參數(shù)計算,并將數(shù)據(jù)存儲至FPGA中;DSP2得到ARM1發(fā)出控制指令后,也進行模型計算,將結(jié)果存儲至FPGA相應(yīng)的FIFO中,同時通知ARM3讀取當(dāng)前數(shù)據(jù),ARM3接收到最新數(shù)據(jù)后計算,同時將結(jié)果存儲至FPGA的FIFO中。
      衛(wèi)星當(dāng)前姿態(tài)及軌道參數(shù)計算中涉及的控制參數(shù)包括軌道、姿態(tài)及質(zhì)量、慣量等參數(shù),各種敏感器參數(shù),執(zhí)行機構(gòu)參數(shù),氣動外形參數(shù),太陽帆板參數(shù),傳輸參數(shù)以及動力學(xué)模型。
      軌道和姿態(tài)參數(shù)包括目標(biāo)姿態(tài)參數(shù);敏感器參數(shù)包括星敏感器、太陽敏感器、地球敏感器、陀螺和磁強計的安裝角和視場角等參數(shù);執(zhí)行機構(gòu)參數(shù)包括動量輪的慣量、最大角速度、噪聲初始轉(zhuǎn)速,推力器的平均推力、力矩矢量、安裝點、噪聲,磁力矩器的最大力矩、時延噪聲等;外形參數(shù)包括氣動系數(shù),本體面積,幾何中心等;太陽帆板參數(shù)包括幾何中心,模態(tài)參數(shù)等。
      衛(wèi)星當(dāng)前姿態(tài)及軌道參數(shù)計算方法如下 (1)完成對衛(wèi)星本體建模,得出衛(wèi)星運動的線動量方程。建立帶撓性附件的三軸穩(wěn)定衛(wèi)星動力學(xué)模型。假設(shè)衛(wèi)星由一個中心剛體B和m個一端與其相連的撓性附件Bi(i=1,2,…,m)構(gòu)成,如圖9(由中心剛體和多個撓性附件構(gòu)成的衛(wèi)星坐標(biāo)系)所示,并建立慣性坐標(biāo)系Si、本體坐標(biāo)系Sb與撓性附件坐標(biāo)系。
      假設(shè)用有限元法求得第i個撓性附件Bi相對撓性附件坐標(biāo)系的懸臂振型和頻率為
      其中rik為第i個撓性附件的第k個節(jié)點相對撓性附件坐標(biāo)系的原點Oi的矢徑,ni為第i個撓性附件節(jié)點總數(shù)。設(shè)N為振型截斷數(shù),且假定每一附件的N均相等,

      為3×N矩陣。其中帶有雙劃線的變量均表示矢矩陣。
      而在第i個撓性附件坐標(biāo)系中第k個節(jié)點rik的位移uik可表示為
      其中,qi(t)=[qi1(t),qi2(t),…qiN(t)]T為第i個撓性附件的模態(tài)坐標(biāo)。
      則衛(wèi)星運動的線動量方程可寫為 其中
      式中

      為3×N矩陣,是第i個撓性附件相對于本體坐標(biāo)系Sb的平動耦合系數(shù);

      是第i個撓性附件在撓性坐標(biāo)系中相對于Oi的平動耦合系數(shù)mT。
      (2)確立衛(wèi)星的角動量方程設(shè)H和TSAT為系統(tǒng)相對于O點的絕對角動量和力矩,偏置動量輪的角動量為h,ω并假設(shè)變形后質(zhì)心運動速度很小,根據(jù)角動量定律和有限元分析結(jié)果可得衛(wèi)星的角動量方程為 其中
      式中

      是第i個撓性附件相對于本體坐標(biāo)系Sb的轉(zhuǎn)動耦合系數(shù);

      是第i個撓性附件在撓性坐標(biāo)系中相對于Oi的轉(zhuǎn)動耦合系數(shù)。
      (3)確定衛(wèi)星運動方程,對于撓性附件的運動方程,應(yīng)用變分原理進行推導(dǎo)。考慮撓性附件的結(jié)構(gòu)阻尼ζ,最后可得其運動方程為 其中 (4)將上述三個方程歸納在一起,即得到經(jīng)過線性化處理的衛(wèi)星動力學(xué)方程。
      如圖10所示,本發(fā)明的DSP1是仿真敏感器模型,DSP1首先得到ARM1發(fā)出讀取指令,其從FPGA中讀取由ARM3計算出的結(jié)果,DSP1獲得數(shù)據(jù)后進行相關(guān)計算,然后將計算結(jié)果存儲到FPGA供ARM1讀取。
      如圖11所示,本發(fā)明的DSP2是仿真執(zhí)行機構(gòu)模型,DSP2首先得到ARM1發(fā)出讀取指令,其從FPGA中讀取由ARM3計算出的結(jié)果,DSP2獲得數(shù)據(jù)后進行相關(guān)計算,然后將計算結(jié)果存儲到FPGA供ARM1、ARM3讀取。
      以下以磁力矩器模型為例說明DSP1和DSP2內(nèi)部模型軟件構(gòu)成。
      (1)假設(shè)條件設(shè)定磁矩噪聲Mnoise,其中常值噪聲為Mn.cons tan t,隨機噪聲為Mn.random。
      (2)定義磁力矩器不同時間段的含義磁力矩從開始響應(yīng)到規(guī)定結(jié)束響應(yīng)時刻的時段稱為Tduration,其中磁力矩器從產(chǎn)生磁矩到達到期望磁矩值的時段成為Tprepare;結(jié)束響應(yīng)時刻到磁力矩器的磁矩撤銷為零的時段稱為Tlag,其中磁力矩器迅速衰減的時段稱為Textent,Textent末時刻磁矩占MT的百分比為p。計算磁矩值的某一時刻為tcommand,當(dāng)前時刻為tnow。
      (3)確定磁力矩器控制模型中需要設(shè)置的參數(shù),即某一時刻的磁矩M;期望產(chǎn)生的磁矩MT;磁力矩器能產(chǎn)生的最大磁矩Mmax,最終剩磁Mremain。磁力矩器的位置矢量r=[x y z]T。
      (4)具體計算過程 ΔT=tcommand-tnow 若ΔT≥Tduration,ΔT1=ΔT-Tduration,則 當(dāng)ΔT1≤Textent且Textent>0.0時,M=(1-ΔT1/Textent)·MT·(1-p)+Mnoise 當(dāng)Textent<ΔT1<Tlag時,M=((ΔT1-textent)/(Tlag-Textent))·MT·p+Mnoise 當(dāng)ΔT1≥Tlag時,M=Mremain; 若ΔT<Tprepare且Tprepare>0.0,M=(1-ΔT/Tprepare)·MT+Mnoise; 若Tprepare≤ΔT<Tduration,M=MT+Mnoise。
      將上述的磁力矩器控制模型算法用程序流程圖的形式表示如圖12所示。
      如圖13所示,本發(fā)明的擴展接口主要是從ARM1擴出,因為ARM1主要是作控制計算機,在整個衛(wèi)星大系統(tǒng)仿真時,主要由控制中心計算機與其他系統(tǒng)相連,因此整個處理模塊在外擴接口時也主要選擇作控制中心處理器的ARM芯片,同時ARM芯片自帶相應(yīng)的接口控制器,只需加載相應(yīng)的接口處理芯片即可。圖14所表示的是整個平臺的整體擴展解決方案,其中在進行單星仿真時,可采用上述所示采用一個處理平臺對不同部件功能分配從而實現(xiàn)仿真,如果要進行多星仿真,要求采用的部件眾多,而且各星參數(shù)不一樣,因此需要采用圖14所示采用多個平臺組合成所需要的敏感器平及執(zhí)行機構(gòu)平臺,星載計算機平臺。其中動力學(xué)計算和空間環(huán)境采用采用一個平臺即可,通過CAN總線組成分布式實時仿真系統(tǒng)。這樣大大縮短了衛(wèi)星仿真平臺組建的時間,提高了仿真效率。同時整個平臺硬件完全統(tǒng)一,只是軟件參數(shù)不一樣,這樣的模塊化平臺可以節(jié)約成本,降低風(fēng)險。整個分布系統(tǒng)進行多星仿真可為今后衛(wèi)星編隊飛行及星座分布提供數(shù)據(jù)支持。
      如圖15所示,圖15是整個模塊具體實現(xiàn)圖,ARM1發(fā)出仿真開始指令,各處理器完成初化后報告ARM1初始化完成;ARM1向DSP1發(fā)出讀取當(dāng)前敏感器數(shù)據(jù)指令,DSP1采用外中斷響應(yīng),DSP1進入中斷服務(wù)程序,同時通知ARM3,ARM3響應(yīng)中斷,并向ARM2發(fā)出更新數(shù)據(jù)指令,ARM2將當(dāng)前空間信息存儲在FPGA中,ARM3讀取當(dāng)前空間信息按相應(yīng)控制算法計算當(dāng)前敏感器數(shù)據(jù),并將計算結(jié)果存儲在FPGA中,DSP2發(fā)現(xiàn)FPGA中數(shù)據(jù)更新后讀取最新數(shù)據(jù),并通過模型計算出相應(yīng)參數(shù),并將參數(shù)存儲至FPGA,ARM1立即將最新數(shù)據(jù)讀取,通過相應(yīng)控制算法完成對當(dāng)前衛(wèi)星姿態(tài)解算,如果符合要求,則進入正常模式,如果衛(wèi)星當(dāng)前姿態(tài)不符合目前需求,則計算出相應(yīng)執(zhí)行機構(gòu)該如何控制,將計算結(jié)果存儲至FPGA,同時向DSP2發(fā)出控制指令,DSP2中斷響應(yīng)后,立即從FPGA讀取相應(yīng)控制命令,DSP2對命令進行解析后,按模型進行計算,將計算結(jié)果存儲至FPGA,同時通知ARM1和ARM3讀取最新數(shù)據(jù),ARM1和ARM3獲得指令后,讀取DSP2存儲的最新數(shù)據(jù),并進行計算,ARM3根據(jù)姿態(tài)/軌道算法,進行當(dāng)前衛(wèi)星姿態(tài)/軌道解算,同時將結(jié)果存儲至FPGA,ARM1獲得相關(guān)數(shù)據(jù)后進行相應(yīng)簡單計算,將計算結(jié)果存儲至FPGA,同時ARM1再次讀取DSP1存儲在FPGA中的數(shù)據(jù),整個過程周而復(fù)始,直到衛(wèi)星當(dāng)前姿態(tài)/軌道符合要求為止。由于每一個處理器在FPGA中都有對應(yīng)的FIFO,只要其向相應(yīng)的FIFO寫入當(dāng)前最新信息即可,F(xiàn)PGA根據(jù)相應(yīng)的控制邏輯來判定由誰讀取當(dāng)前哪一個FIFO的數(shù)據(jù),同時在FIFO 數(shù)據(jù)更新時通知相應(yīng)的處理器做好數(shù)據(jù)接收的準(zhǔn)備。
      如圖16所示,本發(fā)明通過網(wǎng)絡(luò)UDP方式向地面計算機模擬器發(fā)送的歸檔數(shù)據(jù)。從圖16可以監(jiān)測當(dāng)前衛(wèi)星各個敏感器及執(zhí)行機構(gòu)的各種狀態(tài),從圖16a上可以監(jiān)測其各種姿態(tài)數(shù)據(jù)。圖16b是用來監(jiān)視整個系統(tǒng)敏感器的各種參數(shù),同時接入三維顯示可從STK顯示衛(wèi)星當(dāng)前軌道和姿態(tài)信息,如圖16c。
      圖16整個屬于地面監(jiān)測系統(tǒng),本發(fā)明在完成數(shù)據(jù)處理時,將相應(yīng)的歸檔數(shù)據(jù)經(jīng)以太網(wǎng)UDP方式發(fā)送至地面監(jiān)測系統(tǒng),圖上顯示是具體實現(xiàn)過程中地面監(jiān)測系統(tǒng)所顯示的界面。原本衛(wèi)星系統(tǒng)仿真是采用計算機完成,由控制系統(tǒng)和地面監(jiān)測系統(tǒng)組成,本發(fā)明主要是為了替代當(dāng)前由計算機組成的衛(wèi)星控制仿真系統(tǒng),由于其與地面監(jiān)測系統(tǒng)采用以太網(wǎng)連接,因此本發(fā)明在對個擴展接口時也有以太網(wǎng)接口,同時為了更好地實現(xiàn)程序移植,在計算機仿真時,動力學(xué)計算機、環(huán)境計算機、星載計算機模擬器均采用VxWorks操作系統(tǒng),因此在移植到ARM處理器還同樣采用實時操作系統(tǒng)實現(xiàn),對于模型庫也采用之前的編寫的模型程序,因此大大加快了整個開發(fā)進度,提高了仿真效率,達到了應(yīng)有的效果。將發(fā)明接入相應(yīng)的地面監(jiān)測系統(tǒng),就可以非常直觀地觀測整個仿真系統(tǒng)的運行過程。
      權(quán)利要求
      1、多處理器衛(wèi)星實時仿真平臺,其特征在于由三個或更多的ARM處理器和兩個或更多的DSP處理器通過FPGA作為中間存儲器組成,其中ARM1作為仿真衛(wèi)星控制中心計算機,運行姿態(tài)軌道控制算法;ARM2用于仿真衛(wèi)星所處的空間環(huán)境;ARM3用于衛(wèi)星的動力學(xué)計算,完成對衛(wèi)星姿態(tài)軌道參數(shù)計算;DSP1主要是完成敏感器模型的計算;DSP2主要是完成執(zhí)行機構(gòu)模型的計算;首先ARM1向DSP1發(fā)出數(shù)據(jù)獲取指令,即ARM1要讀取當(dāng)前衛(wèi)星敏感器數(shù)據(jù),然后DSP1向ARM2、ARM3發(fā)出獲取數(shù)據(jù)指令,即敏感器要知道當(dāng)前衛(wèi)星所處的空間環(huán)境和動力學(xué)狀態(tài),從FPGA中讀取到相關(guān)數(shù)據(jù)后即向ARM1傳送數(shù)據(jù),ARM1根據(jù)所讀取的數(shù)據(jù)進行計算獲得相應(yīng)的姿態(tài)軌道參數(shù),如果參數(shù)滿足要求,衛(wèi)星即進入正常模式,如果不滿足要求,ARM1向DSP2發(fā)送控制指令,完成對執(zhí)行機構(gòu)的控制,同時DSP2完成計算后通過FPGA向ARM2、ARM3輸出相應(yīng)數(shù)據(jù),直到姿態(tài)軌道滿足相應(yīng)要求。
      2、根據(jù)權(quán)利要求1所述的多處理器實時仿真平臺,其特征在于所述仿真平臺還包括擴展接口,主要是便于所述的各處理器作功能擴展用,實現(xiàn)相應(yīng)功能后通過擴展接口實現(xiàn)數(shù)據(jù)對外通信。
      3、根據(jù)權(quán)利要求1或2所述的多處理器實時仿真平臺,其特征在于所述所有ARM處理器和所有的DSP處理器與FPGA的連接方式均采用硬件設(shè)計最簡單的直連方式,即數(shù)據(jù)/地址/控制三總線形式。
      4、根據(jù)權(quán)利要求1或2所述的多處理器實時仿真平臺,其特征在于所述的FPGA主要采用FIFO技術(shù)實現(xiàn)數(shù)據(jù)共享,其中一個ARM處理器將計算完成的數(shù)據(jù)通過地址/數(shù)據(jù)總線寫入FIFO,同時觸發(fā)其他幾個處理器,如果此時其他幾個處理器需要相關(guān)數(shù)據(jù)則發(fā)出相關(guān)指令讀取這些數(shù)據(jù),每一個處理器均對應(yīng)一個FIFO,而每個FIFO又與其他幾個處理器相連。
      5、根據(jù)權(quán)利要求1或2所述的多處理器衛(wèi)星實時仿真平臺,其特征在于所述的ARM1由單一芯片構(gòu)成,其是整個衛(wèi)星仿真平臺的控制核心,其首先通過FPGA讀取DSP1存放在FIFO中的數(shù)據(jù),進行計算后,向FPGA輸出相應(yīng)的控制命令,同時通知DSP2讀取相應(yīng)數(shù)據(jù),DSP2讀取相應(yīng)命令后完成對執(zhí)行機構(gòu)的控制模擬。
      6、根據(jù)權(quán)利要求1或2所述的多處理器衛(wèi)星實時仿真平臺,其特征在于所述的ARM2由單一芯片構(gòu)成,其主要完成空間環(huán)境計算,在接收到ARM1發(fā)出的運行指令后,ARM2程序開始運行,同時將計算完成的數(shù)據(jù)存儲在FPGA中相應(yīng)的FIFO空間處;DSP1在接到ARM1獲取數(shù)據(jù)指令后,立即向ARM2發(fā)出數(shù)據(jù)獲取指令,同時讀取ARM2在FPGA內(nèi)部存儲好的數(shù)據(jù);DSP1同時也在FPGA中存儲相關(guān)數(shù)據(jù)供ARM3讀取。
      7、根據(jù)權(quán)利要求1或2所述的多處理器衛(wèi)星實時仿真平臺,其特征在于所述的AMR3主要完成衛(wèi)星當(dāng)前姿態(tài)軌道計算,動力學(xué)處理器等待DSP1通知其讀取數(shù)據(jù),即ARM3得到DSP1發(fā)出的讀取指令后,從FPGA中所對應(yīng)的FIFO處讀取當(dāng)前衛(wèi)星敏感器的狀態(tài)數(shù)據(jù),同時進行計算衛(wèi)星當(dāng)前姿態(tài)及軌道,并將數(shù)據(jù)存儲至FPGA中;DSP2得到ARM1發(fā)出控制指令后,也進行模型計算,將結(jié)果存儲至FPGA相應(yīng)的FIFO中,同時通知ARM3讀取當(dāng)前數(shù)據(jù),ARM3接收到最新數(shù)據(jù)后計算,同時將結(jié)果存儲至FPGA的FIFO中。
      8、根據(jù)權(quán)利要求1或2所述的多處理器衛(wèi)星實時仿真平臺,其特征在于所述的DSP1是仿真敏感器模型,DSP1首先得到ARM1發(fā)出讀取指令,其從FPGA中讀取由ARM3計算出的結(jié)果,DSP1獲得數(shù)據(jù)后進行相關(guān)計算,然后將計算結(jié)果存儲到FPGA供ARM1讀取。
      9、根據(jù)權(quán)利要求1或2所述的多處理器衛(wèi)星實時仿真平臺,其特征在于所述的DSP2是仿真執(zhí)行機構(gòu)模型,DSP2首先得到ARM1發(fā)出讀取指令,其從FPGA中讀取由ARM3計算出的結(jié)果,DSP2獲得數(shù)據(jù)后進行相關(guān)計算,然后將計算結(jié)果存儲到FPGA供ARM1、ARM3讀取。
      全文摘要
      多處理器衛(wèi)星實時仿真平臺由三個或更多的ARM處理器和兩個或更多的DSP處理器通過FPGA作為中間存儲器組成,其中ARM1作為仿真衛(wèi)星控制中心計算機;ARM2用于仿真衛(wèi)星所處的空間環(huán)境;ARM3用于衛(wèi)星的動力學(xué)計算;DSP1完成敏感器模型的計算;DSP2完成執(zhí)行機構(gòu)模型的計算;ARM1向DSP1發(fā)出數(shù)據(jù)獲取指令,DSP1向ARM2、ARM3發(fā)出獲取數(shù)據(jù)指令,從FPGA中讀取到相關(guān)數(shù)據(jù)后即向ARM1傳送數(shù)據(jù),ARM1根據(jù)所讀取的數(shù)據(jù)進行計算獲得相應(yīng)的姿態(tài)軌道參數(shù),如果參數(shù)滿足要求,衛(wèi)星即進入正常模式,如果不滿足要求,ARM1向DSP2發(fā)送控制指令,完成對執(zhí)行機構(gòu)的控制,DSP2完成計算后通過FPGA向ARM2、ARM3輸出相應(yīng)數(shù)據(jù),直到姿態(tài)軌道滿足相應(yīng)要求。本發(fā)明簡化了系統(tǒng)的復(fù)雜性,降低了仿真難度,提高了仿真的實時性。
      文檔編號G09B9/08GK101320524SQ20081010468
      公開日2008年12月10日 申請日期2008年4月22日 優(yōu)先權(quán)日2008年4月22日
      發(fā)明者迪 胡, 董云峰, 高小波, 巍 郭, 皓 王, 劉小林 申請人:北京航空航天大學(xué)
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1