劉 博,喬 梁,毛 亮,姜 博
(1.北京空間飛行器總體設計部,北京 100094;2.錢學森空間技術實驗室,北京 100094)
航天器是一個復雜的大系統,由數百臺設備和部件組成。過高或過低的溫度都會影響各個設備部件的正常工作。目前,航天任務更加多樣化,航天器的軌道熱環境以及星上電子設備工作模式也愈加復雜。衛星在進入預定軌道后,惡劣的空間環境、高熱流密度部件散熱等均是影響星上熱控系統的不確定因素[1-5]。航天器在軌工作期間內部溫度變化、內外熱交換過程是熱控關注的重點,為確保航天器中各項儀器設備正常工作,需要在這些方面進行嚴格控制[6]。近年來,我國在載人航天、深空探測等領域相繼取得了舉世矚目的成就,我國的航天器熱控制技術在這些重大專項的牽引下也得到了長足的發展[7]。
空間任務需求的多樣化使得航天器的軌道機動范圍趨向復雜,為了更好地適應多變的空間熱環境,航天器自身必須具備良好的自主熱控能力[8-9]。當前航天器上廣泛采用的熱控措施大致分為被動式和主動式兩大類。將隔熱與散熱兩種方式結合起來,通過合理組織航天器內外熱交換,將航天器內部維持在一個相對穩定的適宜溫度范圍[10]。被動式熱控制是一種開環式控制,在設計中要確保布局合理、材料適合,以此來完成航天器內外的熱交換過程。被動式熱控實施起來簡便易行,但很難做到自動調節儀器設備的溫度[11-12]。傳統的熱控設計已經不能適應越來越復雜的空間熱環境,在被動控溫基礎上發展出來的智能化熱控系統,能夠滿足各領域復雜任務的熱控需求。其采用主動式熱控制,使得航天器具備極高的熱環境變化適應能力[13-16]。主動式熱控制是一種閉環控制,溫度敏感器、控制器和執行裝置這三部分組成了主動熱控系統[17]。控制器采集到溫度敏感器的溫度信息后,與預設的溫度范圍進行比較,然后根據比較后的結果發送命令,控制執行裝置完成動作,從而實現自主控溫[18]。主動式熱控最初完全依賴于地面遙控,經過幾十年的發展,到今天自主熱控管理已成為航天器主動式熱控的主要方式[19]。
溫度自主管理是主動式熱控制的主要表現形式,也是熱管理技術的重要發展方向。作為衛星主動式熱控的控制中樞,溫度自主管理系統要確保星上設備或部件的溫度始終保持在適合的范圍內,從而保證衛星系統在軌運行的高可靠性和安全性。
溫度自主管理系統在盡量不依賴于外界干預的前提下,能夠自主地完成各項儀器設備的溫度管理工作,確保航天器在生命周期內穩定運行[20]。在航天器中,傳統的溫度自主管理系統通常是由上位機和下位機1組成,它的基本原理是:在被控設備上安裝加熱器和熱敏電阻。下位機1負責采集熱敏電阻阻值和加熱器開關狀態,熱敏電阻阻值的變化在下位機1中變成數字信號后和加熱器開關狀態一起通過1553B總線向上位機提供。上位機的溫度自主管理軟件根據接收到的溫度數據和固化在軟件中的控制溫度閾值比較,發出相應的加熱器通斷指令,經下位機1轉發給被控設備的加熱器回路,完成加熱器回路的接通或斷開,從而實現對儀器或部件的自動控溫。傳統的溫度自主管理系統結構如圖1所示。

圖1 傳統的溫度自主管理系統結構圖
在溫度自主管理系統中,每條指令控制一路加熱器的開關,加熱器開關狀態通常由一個bit的遙測表示(0表示斷,1表示開),熱敏電阻的實測溫度經過A/D 轉換后,用一個byte的遙測表示。
加熱器回路的控制周期以及溫度閾值在上位機的溫度自主管理軟件中固化。在每個控制周期里,下位機1分別獲取一個回路的實測溫度和加熱器開關狀態參數,并通過1553B總線轉發給上位機。在上位機的溫度自主管理軟件中,將采集到的回路溫度和軟件中固化的溫度閾值進行比較,如果回路的溫度數字采樣值連續3 次大于高溫閾值,并且回路開關狀態為接通,則上位機發送該回路加熱器斷開指令;如果回路的溫度數字采樣值連續3次小于低溫閾值,并且回路狀態為斷開,則上位機發送該回路加熱器接通指令。上位機溫度自主管理軟件的工作流程如圖2所示。

圖2 溫度自主管理軟件的工作流程
圖1所示的溫度自主管理系統,已經經過了多顆衛星的地面和在軌驗證,系統工作良好,在溫度管理過程中未發生過回路報警情況。
在一些衛星中,由于系統需求變化以及衛星布局調整,下位機1和部分被控設備之間增加了兩級設備:下位機2和3。其中,下位機2和下位機1之間采用422總線連接,下位機3和下位機2之間采用串口連接。使得溫度自主管理系統發生了一定變化。新的溫度自主管理系統結構如圖3所示。

圖3 新的溫度自主管理系統結構圖
從圖3中可以看出,下位機1和下位機2通過422總線連接。422總線采用點對多的拓撲結構,下位機1作為422總線的主機,對外連接8個從機,下位機2為其中一個從機。下位機1采用輪詢方式,每0.5秒向一個從機發送一次“要數信息”,4秒鐘輪詢一遍。下位機2每接收到一次 “要數信息”后,將“要數信息”轉發給下位機3,下位機3接收到“要數信息”后,將采集到的回路溫度和加熱器開關狀態等遙測數據發送給下位機2,并由下位機2轉發給下位機1。在422通信協議中,指令發送優先于遙測回傳,即當該0.5秒周期內有主機發送給任一從機的422指令時,則不會回傳從機的遙測數據。
系統結構更改后,由原有的一條指令控制一個加熱器回路變為一條指令控制8個回路。下位機2在收到下位機1發送的加熱器開關指令后,需要將這條指令譯碼成兩條指令(一條加熱器負端通斷,一條加熱器正端通斷)后再通過串口將兩條指令順序發送給被控設備,一條通斷指令8個bit,能同時控制4路加熱器正端的通斷以及另外4路加熱器負端的通斷,即發送一條加熱器開關指令可以同時控制8路加熱器的通斷。指令發送順序要求必須為先接通或斷開加熱器負端后接通或斷開加熱器正端,連續發令。下位機2每次發令前,要根據最近一次采集到的8個回路通斷狀態作參考,確保指令發送后不會更改其他回路的通斷狀態。
采用圖3所示的溫度自主管理系統后,多個回路在地面測試中發生了報警。
上位機自主發送加熱器回路通斷指令后,如果回路開關狀態與指令預期不一致,則上位機軟件會啟動回路報警機制。
回路報警的機理為:上位機軟件發送加熱器回路通斷指令后,會對相應加熱器回路的開關狀態進行3 次判斷,若3次判斷的開關狀態與期望得到的結果一致,則不再繼續發通斷指令。若3次判斷全錯或不一致,則最多再發送兩次指令,在每次指令后均做3次判斷。發指令后,3次判斷全部正確,則不再繼續發指令。發第三次指令后狀態仍全錯或不一致,則置該回路的報警狀態并通過遙測下傳到地面。發出報警信號后不再繼續自主發送該回路的指令,并將該回路自控狀態設置為禁止。加熱器回路報警的工作流程如圖4所示。

圖4 加熱器回路報警的工作流程
上位機每0.5秒控制一路加熱器。根據下位機2和3之間的串口協議,下位機3最快8秒才能將采集的被控設備的溫度參數和開關狀態參數發送給下位機2。由于下位機2發送的一條加熱器開關指令可同時控制8路加熱器的通斷,并且下位機1和2之間的接口是指令優先,因此如果8秒內有同一指令中的多路加熱器都需要發指令進行通斷控制,則下位機1和2之間的422通信鏈路會一直被加熱器指令所占據,導致下位機3 收不到下位機2 轉發的“要數信息”,無法采集被控設備加熱器最新的通斷狀態,將導致發送某一路通斷指令前參考的其他路的通斷狀態遙測未更新,從而使得這一路加熱器指令將會改變其他路的開關狀態,最終導致其他路加熱器的開關狀態遙測與指令的預期不符。
下面舉例進行說明:根據下位機2和下位機3之間的接口協議,下位機2發送給下位機3的指令格式如表1所示。

表1 下位機2和3之間的指令格式
如表1所示,一條指令可以同時控制加熱器1-4的正端和5-8的負端。假設加熱器1-4對應的被控設備的溫度均低于低溫閾值,且加熱器1正端、加熱器2正端、加熱器3正端、加熱器4正端都是“0”(斷狀態),4個加熱器都需要接通。按照溫度自主管理的原理,上位機將順序發送4個回路的接通指令。上位機首先發送加熱器1 接通指令,經過下位機1轉發到下位機2,下位機2發送指令前先對接收到的加熱器2-4的開關遙測進行判斷,加熱器2、3、4的開關狀態都是0,因此依次發送負端接通指令****0001和正端接通指令****0001,將加熱器1接通;上位機接著發送加熱器2接通指令,由于發送指令優先于遙測回傳,且下位機3遙測回傳的周期最短是8秒,因此在下位機2發送指令前收到的遙測未更新,加熱器1、3、4的開關狀態都是0,因此依次發送負端和正端接通指令均為****0010,接通加熱器2,關斷加熱器1;上位機發送加熱器3接通指令時,下位機2判斷加熱器1、2、4都是0,依次發送負端和正端接通指令****0100,接通加熱器3,關斷加熱器1和2;上位機發送加熱器4接通指令時,判斷1、2、3都是0,依次發送負端和正端接通指令****1000,接通加熱器4,關斷加熱器1、2和3;因此發送4條通指令后的實際結果是只有4接通,其他均關斷,1,2,3開關狀態與預期不符。
上位機對加熱器1-4的開關狀態進行3次判斷,其中只有加熱器4的開關狀態與期望的結果一致,其他3路開關狀態均與預期不一致。因此上位機再發送兩次指令。發送第二次指令后,對加熱器1-3的開關狀態進行3次判斷,加熱器3開關狀態與指令預期相符,1和2的開關狀態與指令不符。發送第三次指令后,對加熱器1-2的開關狀態進行3次判斷,加熱器2開關狀態與指令預期相符,1的開關狀態與指令不符。按照回路報警機理,加熱器1回路自控禁止并向地面報警。加熱器1-4指令發送與開關狀態判斷時序表如表2所示。

表2 加熱器1-4指令發送與開關狀態判斷時序表
經過分析,產生加熱器回路報警有兩個條件:
1)每8秒內有4個及以上加熱器回路通斷指令要發送(由于溫度自主管理指令發送3次,則3個回路及以下可成功執行);
2)這4個及以上回路通斷定義在同一條指令里。
針對系統變化帶來的加熱器回路報警問題,提出了兩種優化設計方案:
1)下位機2在每次發送加熱器通斷指令前,增加一次從下位機3取遙測的操作,確保取到最新的加熱器開關狀態。這樣可以保證當同一指令里多個加熱器同時需要通斷操作時,不會出現由于遙測更新不及時而將其他加熱器回路誤開或誤關的問題。
2)將回路報警機制中發送同一加熱器通斷指令的重試次數增加。由于下位機2發送一條指令最多可以控制8個加熱器回路,因此最多重復發送8次指令即可確保8個回路開關狀態與指令預期一致。考慮一定的余量,將指令重試次數由2次增加到9次,即指令發送10次以后,加熱器狀態仍全錯或不一致,則置回路的報警狀態并將回路自控禁止。
方案1)需要下位機2在發送指令前,增加從下位機3取遙測的操作,下位機2 運行的嵌入式軟件要進行更改。方案2)只將上位機軟件中兩處指令發送次數判斷的語句進行更改,把3次改為10次,不增加額外的語句,不影響原邏輯,下位機1-3的嵌入式軟件不需要進行更動。通過比較兩個方案的更動量和更改難度,選擇方案2)作為優化設計方案。
方案2)的更改內容如下:
將函數void Check_Chan_Onoff_Status(chan_ctrl*chan)兩處語句進行修改。

采用桌面聯試的方法對優化設計后的溫度自主管理功能進行驗證。按照圖3完成溫度自主管理系統的搭建,其中采用負載箱代替被控設備。
聯試過程如下:
1)回路1-8均設為低于低溫閾值:
(1)通過上位機→下位機1→下位機2對下位機3發送配置指令,工作狀態查詢指令,通過遙測確認溫度自主管理系統的遙測遙控通路正常,并對下位機3完成配置;
(2)通過上位機發送加熱器1-8回路斷指令(加熱器1-8回路在同一個字節中),對應的負載箱回路顯示燈滅;
(3)設置加熱器1-8回路對應的溫度量0x66(對應溫度0度),使得這8路溫度均低于低溫閾值0x4B(對應溫度20度);
(4)通過上位機依次發送溫度自主管理系統所有回路自控禁止指令、加熱器1-8回路自控使能指令、熱控軟件使能指令并開始計時;
(5)觀察負載箱,加熱器1-8回路從第8路到第1路每隔75秒依次接通,對應負載箱的回路燈亮;
(6)800秒后,依次單回路下傳加熱器1-8回路的回路狀態,8個回路均無報警。
2)回路1-8均設為高于高溫閾值:
(1)通過上位機發送溫度自主管理系統所有回路自控禁止指令;
(2)通過上位機發送加熱器1-8回路通指令,對應的負載箱回路顯示燈亮;
(3)設置加熱器1-8回路對應的溫度量0x30(對應溫度45度),使得這8路溫度均高于高溫閾值0x35(對應溫度40度);
(4)通過上位機依次發送加熱器1-8回路自控使能指令并開始計時;
(5)觀察負載箱,加熱器1-8回路從第8路到第1路每隔75秒依次斷開,對應負載箱的回路燈滅;
(6)800秒后,依次單回路下傳加熱器1-8回路的回路狀態,8個回路均無報警。
3)回路1-8溫度任意設置:
(1)通過上位機發送溫度自主管理系統所有回路自控禁止指令;
(2)發送加熱器2、4通指令,負載箱回路2、4燈亮;發送加熱器1、3、5-8 斷指令,負載箱回路1、3、5-8燈滅;
(3)設置加熱器2、4回路對應的溫度量0x30為高于高溫閾值0x35,加熱器1、3、5-8回路對應的溫度量0x66為低于低溫閾值0x4B;
(4)發送加熱器1-8回路自控使能指令并開始計時;
(5)觀察負載箱,加熱器1-8回路從第8路到第1路每隔75秒依次動作,其中1、3、5-8回路對應的負載箱燈亮,2、4回路燈滅;
800秒后,依次單回路下傳加熱器1-8回路的回路狀態,8個回路均無報警。
(6)通過對測試結果的分析,優化設計后的溫度自主管理功能正確。相比優化設計前的系統,增加同一加熱器通斷指令的重試次數,可以避免由于系統鏈路長、級與級接口之間時序不同步導致的熱控回路報警問題。優化后報警周期由225秒延長至750秒,但由于溫度是緩慢變化的,因此報警周期的延長對溫度自主管理的正確性沒有影響。在后續研究中,應進一步簡化溫度管理系統的結構,避免由于鏈路過長、接口過多帶來的接口匹配性問題,提升衛星整體自主管理能力。
電加熱器熱控是目前衛星最常用的熱控自主管理實現方式,經過多年的發展,熱控管理的自主性逐步加強,在大部分衛星上都已采用。
本文從提高溫度自主管理系統接口兼容性的角度出發,提出了增加同一加熱器回路通斷指令的自主重試次數的優化設計方法。該方法在不改變傳統自主控溫邏輯的前提下,能夠很好地兼容新的溫度管理系統,并已在多個衛星中在軌應用,取得了良好的效果。