曹志松 ,劉紹然,裴一飛
(1. 可靠性與環(huán)境工程技術(shù)重點實驗室;2. 北京衛(wèi)星環(huán)境工程研究所:北京 100094)
衛(wèi)星虛擬熱試驗技術(shù)是指在虛擬熱試驗平臺所構(gòu)建的虛擬熱試驗環(huán)境中,利用建立的衛(wèi)星熱物理數(shù)字模型開展試驗研究,獲得衛(wèi)星隨時間和外熱流而變化的溫度場分布[1],以驗證衛(wèi)星的熱設(shè)計;另外通過試驗得到的能夠反映衛(wèi)星溫度場的特性參數(shù),對衛(wèi)星的熱物理數(shù)字模型進行修正。為了達到這個目的,國內(nèi)外都在開展衛(wèi)星虛擬熱試驗技術(shù)研究。
目前國外已有一些和虛擬熱試驗平臺相似的軟件,但都不具備完整獨立的建模模塊。例如NEVADA[2]軟件在建立模型時要通過用戶輸入一些固定格式的文本來實現(xiàn),使用起來很不方便;而Thermal Desktop軟件建模時則要通過與AutoCAD耦合來實現(xiàn),同樣會受到很多制約。
北京衛(wèi)星環(huán)境工程研究所也開展了衛(wèi)星虛擬熱試驗技術(shù)研究,自主研發(fā)了衛(wèi)星虛擬熱試驗平臺。它由多個相對獨立的功能模塊構(gòu)成,各個模塊之間不能直接進行數(shù)據(jù)交換,數(shù)據(jù)傳輸需要借助數(shù)據(jù)庫進行,即各模塊從數(shù)據(jù)庫檢索并確認源數(shù)據(jù),然后讀取源數(shù)據(jù)并完成特定的任務(wù)計算,計算后只需要將計算結(jié)果寫入數(shù)據(jù)庫中相應(yīng)的位置。由于熱試驗系統(tǒng)的結(jié)構(gòu)都很復(fù)雜,包含熱沉、紅外加熱裝置、支架等,加熱條帶的數(shù)量多達數(shù)千根,同時會有各種位置的開孔。本文開發(fā)的建模工具具有很強的功能,可以根據(jù)紅外籠的框架形狀、條帶間距以及用戶輸入的其他參數(shù)自動的生成紅外籠模型;還可以用于基于紅外燈陣的加熱籠模型建立,具有模型結(jié)構(gòu)的調(diào)整功能。此外,本衛(wèi)星虛擬熱試驗平臺建模工具在三維建模時是一個完全的可視化過程。下面將重點介紹衛(wèi)星虛擬熱試驗平臺建模工具模塊。
虛擬熱試驗平臺的框架結(jié)構(gòu)如圖1所示。首先利用建模工具模塊創(chuàng)建或者從外部導(dǎo)入衛(wèi)星數(shù)字模型及試驗系統(tǒng)數(shù)字模型,并建立與測控系統(tǒng)以及衛(wèi)星的工作狀態(tài)的接口,然后利用平臺的核心求解器進行模型數(shù)值計算,最后對計算結(jié)果進行分析。
1)建模工具模塊
虛擬熱試驗平臺的建模工具模塊包含有立方體、球體和圓柱體3種基本幾何體,通過幾何體的選取可進行幾乎任意幾何形狀的建模;能進行幾何體間的布爾運算,比如聯(lián)合、交集、一減二運算以及二減一運算等等;還可以進行基于數(shù)學(xué)函數(shù)的曲線、多面體、管道等建模并劃分網(wǎng)格。

圖1 虛擬熱試驗平臺框架結(jié)構(gòu)圖Fig. 1 Frame structure of virtual thermal test platform
如圖 2(a)為建模工具模塊所建立的管道模型示意圖,圖2(b)為管道模型及網(wǎng)格劃分。

圖2 管道模型及其網(wǎng)格Fig. 2 Pipeline model and its grids
2)虛擬熱試驗平臺對模型的接口
虛擬熱試驗平臺對模型的接口描述采用“整體-局部”分層對象組合策略,為表現(xiàn)試驗系統(tǒng)的物理結(jié)構(gòu)提供了強大的功能。試驗系統(tǒng)一般由衛(wèi)星、熱沉、紅外加熱籠、紅外燈陣以及工裝支架等組成。可以利用分層對象組合策略來組建試驗系統(tǒng)模型,以紅外加熱籠為例:可以將紅外加熱籠的結(jié)構(gòu)分解成若干分區(qū),針對每個分區(qū)都可以在軟件模型中表示成一個對象,再將它們組合起來形成紅外加熱籠;針對分區(qū)對象,還可以進一步分解成子分區(qū)對象。圖3是試驗系統(tǒng)樹型結(jié)構(gòu)示意圖。

圖3 試驗系統(tǒng)樹型結(jié)構(gòu)Fig. 3 Tree structure of test system
從圖3看,虛擬熱試驗平臺的模型結(jié)構(gòu)是一個遞推的分層結(jié)構(gòu),即系統(tǒng)可以分解成各個子系統(tǒng),而子系統(tǒng)還可以再進行細分,因此系統(tǒng)結(jié)構(gòu)模型是一個樹型結(jié)構(gòu)。描述這種分層結(jié)構(gòu)的數(shù)據(jù)表有兩種方法:鄰接列表模式和預(yù)排序遍歷樹算法。下面比較兩種樹型數(shù)據(jù)結(jié)構(gòu)的實現(xiàn):
1)鄰接列表模式
所謂鄰接列表模式(adjacency list mode)是通過給每個節(jié)點增加一個屬性來表示這個節(jié)點的父節(jié)點(parent ),從而將整個樹狀結(jié)構(gòu)以表的形式描述出來[3],如表1所示。

表1 紅外加熱籠分區(qū)結(jié)構(gòu)鄰接數(shù)據(jù)列表Table 1 Adjacency list of infrared cage sub-areas
如此一來,可以從根節(jié)點知道到任意節(jié)點的路徑。比如“3級子部件 1-1-1”的路徑是“試驗系統(tǒng)>紅外加熱器>紅外加熱籠>主分區(qū) 1”。為了得到這樣的一個路徑,需要從最末級開始查詢得到它的父節(jié)點“紅外加熱籠”,并把它添加到路徑中;然后再查詢“紅外加熱籠”的父節(jié)點并把它也添加到路徑中;以此類推直到最高層的“試驗系統(tǒng)” 。這種方法比較簡單,容易理解。但是也有缺點,主要表現(xiàn)為運行速度很慢,由于尋找每個節(jié)點都需要進行數(shù)據(jù)庫查詢,在數(shù)據(jù)量大的時候,要進行很多查詢才能完成一個樹的遍歷;另外由于要進行遞歸運算,遞歸的每一級都需要占用一些內(nèi)存,所以其空間利用效率也比較低。
2)預(yù)排序遍歷樹算法
預(yù)排序遍歷樹算法(modified preorder tree traversal algorithm)不需要使用遞歸計算,可以實現(xiàn)更加快速的遍歷。針對圖3所示的樹,首先將每層的結(jié)構(gòu)編排一個序號,如在根節(jié)點“試驗系統(tǒng)“的左側(cè)標寫序號 1;再沿著這個樹向下層搜尋,在“衛(wèi)星“的左側(cè)寫上序號 2;然后繼續(xù)前進給每層結(jié)構(gòu)的每一個節(jié)點都標上序號。可以將這些節(jié)點的序號值lft、rgt存儲到數(shù)據(jù)庫中,如表2所示。

表2 紅外加熱籠分區(qū)結(jié)構(gòu)預(yù)排序遍歷樹算法數(shù)據(jù)表Table 2 Variables inmodified preordered tree traversal algorithm of infrared cage sub-areas
這種方法不使用遞歸查詢算法,具有更高的查詢效率。例如當(dāng)需要得到“某項下的所有節(jié)點,就可以這樣寫查詢語句:
SELECT * FROM engElement WHERE lft BETWEEN num1 AND num2 ORDER BY lft ASC;
要獲知一個節(jié)點的路徑比較簡單,如果想知道某節(jié)點的路徑,就利用它的序號左右值 num1和num2來做一個查詢,其語句為:
SELECT name FROM engElementWHERE lft
某個節(jié)點的子孫節(jié)點數(shù)目計算也很簡單:子孫總數(shù)=(右值-左值-1)/2。
本建模工具模塊除了可以根據(jù)用戶需求創(chuàng)建出任意形狀的幾何體外,也提供了與 Pro/E[4]、SolidWorks等商業(yè)軟件的接口,用戶可以將這些商業(yè)軟件中的模型導(dǎo)入虛擬熱試驗平臺中。此外,建模工具可以直接存取NEVADA軟件的文件格式,從而方便地進行熱分析計算。
本軟件的建模工具與一般商業(yè)建模造型軟件最大的區(qū)別在于它的服務(wù)對象,可以很方便地進行試驗設(shè)備模型的建立。下面將介紹利用建模工具模塊來創(chuàng)建紅外加熱籠模型。
紅外加熱籠可以劃分成許多條帶,因此其分區(qū)是由這些條帶組成。劃分的條帶數(shù)量非常多,如果由用戶來完成每根條帶的建模,則工作量非常繁重,因此系統(tǒng)為用戶提供了自動批量生成條帶模型的工具。在用戶接口界面中,用戶首先需要輸入該分區(qū)的形狀參數(shù)(紅外加熱籠的分區(qū)形狀類型不多,主要有四邊形、三角形、圓柱面、圓錐面等);然后再輸入條帶拉伸方向、條帶間隔等參數(shù),就可以自動生成條帶。同時,一個分區(qū)為了條帶布置方便以及電源的合理配置,往往還需要劃分很多子加熱分區(qū),它們一般是按照一定規(guī)律排列的,系統(tǒng)為其提供了自動劃分加熱分區(qū)的工具。
平臺為加熱籠的分區(qū)設(shè)計提供了參數(shù)設(shè)計界面,可以進行條帶寬度、死區(qū)高度、彈簧長度、擋板尺寸、最大電流等參數(shù)的設(shè)置。樹型菜單可以使用戶靈活的設(shè)置紅外加熱籠模型每一級分區(qū)的參數(shù)。
根據(jù)熱設(shè)計的結(jié)果,平臺自動進行紅外加熱籠條帶的生成,同時將結(jié)果保存在數(shù)據(jù)庫中,另外用戶還可以很方便地進行局部修改,這為下一步試驗系統(tǒng)的熱分析計算提供了有力的保證。圖4是使用本平臺的建模工具模塊對某型號的紅外加熱籠所建立的模型圖。

圖4 紅外加熱籠(含條帶)模型Fig. 4 Model of infrared cage with stripes
本文介紹了虛擬熱試驗平臺中的建模工具模塊,它既可建立幾乎任意幾何形狀的模型,又能作幾何體間的布爾運算并劃分網(wǎng)格;模型的接口描述采用“整體-局部”分層對象組合策略,所建立模型的數(shù)據(jù)保存在數(shù)據(jù)表中,采用預(yù)排序遍歷樹算法,而不是傳統(tǒng)的遞歸算法,具有更高的遍歷效率;建模工具模塊提供了與Pro/E、SolidWorks等商業(yè)軟件的接口,用戶可以方便地將商業(yè)軟件中的模型導(dǎo)入虛擬熱試驗平臺中。
(References)
[1]Luis R. The virtual test bed project, NASA/CR-2003-211527[R], 2003-12-15
[2]TAC Technologies Inc. Nevada user’s guide[G], 2004
[3]宛延凱. 工程數(shù)據(jù)庫系統(tǒng)[M]. 北京: 清華大學(xué)出版社,1999: 7
[4]吳立軍, 陳波. Pro/ENGINEER 二次開發(fā)技術(shù)基礎(chǔ)[M].北京: 電子工業(yè)出版社, 2006: 7