武建亮,姜照昶,王文彥,金 璇
(1.中國電子科技集團公司第五十四研究所,河北 石家莊 050081;2.中國人民解放軍94106部隊,陜西 西安 710614;3.中國人民解放軍63636部隊,甘肅 蘭州 732750)
航天測控動態數傳數據模擬器的實現
武建亮1,姜照昶1,王文彥2,金 璇3
(1.中國電子科技集團公司第五十四研究所,河北 石家莊 050081;2.中國人民解放軍94106部隊,陜西 西安 710614;3.中國人民解放軍63636部隊,甘肅 蘭州 732750)
在載人航天測控任務準備階段,測控系統技術狀態確認是非常重要的準備工作。航天測控動態數傳模擬器利用現有系統配備的圖像模擬器和測控基帶終端設備,輔以話音輸入設備和數據模擬軟件,可以實現飛船圖像和話音數據實時模擬,設備采用中斷和DMA傳輸技術在提高數據傳輸速率的同時降低了系統開銷。該模擬器已經應用在多套載人航天地面測控系統中,為載人航天地面系統技術狀態確認節約了人力和時間成本。
USB統一測控系統;實時傳輸協議;中斷服務例程;延遲過程調用
Abstract At the mission preparation period of aerospace measurement and control,TT&C system’s technical status confirmation is very important.Dynamic data transfers simulation uses the existing system equipped with the image simulator and the measurement and control BBE terminal,with voice input device and data simulation software,realizes real-time simulation of the vehicle image and voice data.The device also uses interrupt and DMA transmission technology to improve the data transmission rate and reduce the cost of the system.The function and performance of the equipment are verified by engineering application.
Key words USB Unified TTC&C System;RTP;ISR;DPC
近年來,隨著數傳技術應用領域的不斷拓展,高速數傳技術已經應用于載人航天器中,在“神舟”載人飛船任務中,利用數傳技術實時回傳了圖像、話音和其他數據。在載人航天任務準備階段,地面測控系統設備技術狀態正確性驗證是保證任務順利執行的重要環節,目前主要依靠飛行器與測控系統的對接試驗來實現。隨著發射任務的逐年增加,對接試驗成本也大幅上升,所以迫切需要開發用于進行測控系統技術狀態確認的驗證設備[1]。
圖像話音動態模擬器將圖像話音數據按照任務狀態格式進行組幀,利用調制板卡調制輸出與實際任務完全一致的數傳信號,該模擬器利用數據配置文件進行任務格式描述,可以兼容多種飛行器,特別適合地面測控系統設備功能和性能檢查和驗證。
目前測控設備配備數傳模擬器只能模擬固定數據,無法進行實時圖像和話音數據模擬。
載人航天動態圖像話音模擬器可以實現載人航天器實時圖像和話音模擬,充分驗證數傳接收機、RTP數據傳輸[2-3]、圖像恢復設備的功能和性能。
測控系統數傳設備信號流程圖如圖 1所示。數傳模擬器實時接收圖像模擬設備輸入的圖像模擬數據和話音輸入設備輸入的音頻數據按照既定格式產生數傳數據模擬信號,該信號可由系統中頻矩陣環回送至數傳接收設備,數傳接收機解調并將數傳數據送至圖像監視設備和話音輸出設備。在該系統中數傳接收設備可以接收飛船下發的數傳任務信號,也可以接收模擬設備發出的數傳模擬信號,二者的工作狀態和參數完全一致。

圖1 測控系統數傳設備信號流程
模擬器設備組成如圖2所示。模擬器由圖像模擬器、話音輸入設備、數據模擬軟件、設備驅動程序、模擬器調制板卡和CPCI工控機組成。其中圖像模擬器、模擬器調制板卡和工控機均為測控系統標配設備,無需重新開發;話音輸入設備可利用計算機音頻輸入端口接入計算機;設備驅動程序需進行適應性改造,數據模擬軟件需重新開發。

圖2 模擬器設備組成
圖像模擬器接收攝像頭輸入的實時視頻數據經壓縮編碼后生成網絡格式圖像數據[4]送數據模擬軟件;話音輸入設備產生的音頻數據通過工控機音頻輸入口送給數據生成軟件;數據模擬軟件負責產生數傳模擬數據,將接收到的圖像數據和話音數據按照既定數傳格式填入模擬數據幀中,數據幀通過設備驅動程序送模擬器調制板卡進行數據調制并輸出中頻信號。模擬器設備接口如表1所示。

表1 模擬器設備接口
1.1 圖像模擬器
圖像模擬器采用測站標配的模擬設備,該設備可以接收攝像設備輸入的視頻信號經過編碼、壓縮后采用UDP+RTP協議送出圖像數據包。
1.2 話音輸入設備
利用模擬計算機的音頻輸入口將話筒的聲音信號轉為音頻數字信號[5],數據模擬軟件可以通過操作系統API接口函數獲取該聲音數據。
1.3 設備驅動程序
設備驅動程序是計算機操作系統內核層的重要組成部分,對于用戶自己開發的硬件設備,必須開發相應的設備驅動程序以保證硬件設備的正常運行。設備驅動程序是模擬調制板卡與數據模擬軟件之間通信的橋梁。由于數傳速率較高,采用DMA傳輸方式可以大大減少CPU對數據傳輸的干預次數。
1.4 數據模擬軟件
數據模擬軟件是動態模擬器的控制核心,按照既定數傳幀格式產生模擬數據,將圖像模擬器送來的圖像數據和話音輸入設備送來的話音數據按照格式要求填入數據幀內。組幀完畢后通過驅動程序API接口函數[6-7]將數據寫入模擬器調制板卡調制輸出。
1.5 模擬器調制板卡
模擬器調制板卡負責將數據模擬軟件送來的數據完成碼型變換、數據調制后輸出中頻模擬信號。
圖像模擬器、模擬器調制板卡、話音輸入設備和工控機均為已有或成熟產品,本節不再描述,重點介紹軟硬件數據交互方式、設備驅動程序[8-9]和數據模擬軟件的開發過程。
2.1 數據交互方式
軟硬件數據交互方式采用中斷+DMA傳輸的通信方式。數據交互過程如下:
① 調制器板卡設計一個FIFO,該FIFO用于接收數據模擬軟件發送的模擬數據;
② 調制器板卡定義一個FIFO容量寄存器,該寄存器用于表示當前FIFO的剩余空間;
③ 硬件板卡實時判斷FIFO的空滿狀態,當FIFO內的數據為半空時,向PCI端產生一個中斷信號;
④ 數據模擬軟件收到該中斷信號后,讀取FIFO容量寄存器即可獲取可向FIFO寫入的數據長度,然后立即向FIFO內寫入數據;
⑤ 只要保持FIFO內的數據不空,即可保證調制板卡輸出的數據連續。
軟硬件數據交互方式示意圖如圖3所示。

圖3 軟硬件數據交互方式示意
2.2 設備驅動程序
2.2.1 ISR例程
為了完成中斷處理、DMA傳輸[10],設備驅動程序需要增加ISR例程和DPC例程[11]。其中ISR例程用于實現硬件中斷響應及處理[12],DPC例程實現DMA數據傳輸[13]。
ISR執行在提升的IRQL[14]上,凍結了其CPU上所有低于或等于該IRQL的其他活動。為了提高系統性能,ISR應該盡可能快地執行。基本上,只做服務硬件所需的最小量的工作[15](如清除中斷),然后立即返回。如果有額外工作(例如完成一個IRP),應該由DPC(延遲過程調用)例程來完成。
調制器板卡共可以產生2種類型的中斷:數據中斷和DMA結束中斷。因此首先讀取PCI的中斷控制/狀態寄存器,根據標志位判斷調制器板卡是否產生了中斷、產生了哪種類型的中斷。如果沒有產生中斷,則立即返回FALSE即可。如果產生了數據中斷,則申請一個DPC用于后續啟動DMA傳輸。如果產生了DMA結束中斷,也申請一個DPC用于后續完成該IRP。
∥中斷處理函數
BOOLEAN WDFBBE_EvtInterruptIsr(
INWDFINTERRUPT Interrupt,
IN ULONG MessageID)
{
<判斷該中斷是否為DMA傳輸結束中斷>
{
<確認中斷>
<清除中斷>
<申請調用DPC處理并結束中斷>
<返回TRUE表示是期望的中斷>
}
<判斷該中斷是否為數據讀中斷>
{
<確認中斷>
<清除中斷>
<申請調用DPC處理并結束中斷>
<返回TRUE表示是期望的中斷>
}
<返回FALSE,表示不是期望的中斷>
}
2.2.2 DPC例程
基帶板卡可以產生2種類型的中斷[16],所以在DPC例程中也有2種處理。如果是讀數據中斷申請的DPC,則計算本次可以讀取數據的長度,然后啟動DMA傳輸。如果是寫數據中斷申請的DPC,則計算本次可以寫入數據的長度,如果寫RAM空間滿足寫入要求則啟動DMA傳輸,否則繼續掛起該IRP。如果是為DMA結束中斷申請的DPC,則保存已讀取數據的最終地址后,即可完成該IRP。驅動程序完成IRP時,需要告知應用程序此IRP完成情況,如實際傳輸的長度及傳輸結果等,以便應用程序能正確對數據進行分類處理。
VOID
WDFBBE_EvtInterruptDpc(
IN WDFINTERRUPT Interrupt,
IN WDFOBJECT Device)
{
<判斷是否為DMA傳輸結束請求的DPC>
{
<允許中斷,準備處理下一個中斷>
<返回>
}
<判斷當前IRP是否為寫請求>
{
<完成本地寫請求,返回實際傳輸長度>
<允許中斷,準備處理下一個中斷>
<返回>
}
}
2.3 數據模擬軟件設計
數據模擬軟件實現圖像、話音模擬數據接收、組幀和控制模擬終端調制發送。為了適應多種飛行器圖像和音頻格式,數據模擬軟件采用配置方式進行數據組幀。
數據模擬軟件的工作過程如下:① 建立網絡數據接收線程,接收圖像模擬器發送的RTP格式圖像數據包[17-18];② 建立話音數據接收線程,接收話音輸入設備輸入到音頻數據;③ 讀取數據幀格式配置文件,按照配置文件格式要求將圖像數據和音頻數據填入指定的數據位置,除圖像和音頻外的其他數據幀位置,可以按照需要填入固定數或隨機數等;④ 建立中斷信號讀取線程[19],實時等待中斷信號,當中斷信號到來時,先獲取FIFO剩余容量大小,然后從已產生的數傳數據中讀取對應長度的模擬數據經由驅動程序API接口函數向調制器板卡發送[20]。

圖4 數據模擬軟件工作流程
3 模擬器的工程應用
數傳模擬器工程應用方式如圖5所示。地面測控站利用數傳動態模擬設備輔以測控系統標校設備可以按照任務場景模擬飛船/空間站任務狀態,進行設備功能及性能檢查。

圖5 模擬器工程應用示意
目前該設備已經在多套載人航天地面測控系統中得到應用。在測控任務準備階段,利用該設備模擬飛船/空間站任務場景,對地面系統中的信道設備、數字基帶設備和測控鏈路狀態等進行綜合檢測,為載人航天測控任務提供了重要保障。
介紹了數傳數據動態模擬器的實現方案,闡述了話音和圖像數據模擬的實現途徑,采用數據中斷配合DMA傳輸的方案解決了計算機性能瓶頸問題,使用配置文件實現圖像及音頻數據幀動態配置,可以適應多種飛行器數據模擬。在實際工程應用中,數傳數據模擬器能夠滿足載人航天測控地面測控系統功能及性能檢查的需求,為載人航天任務準備節約了人力和時間成本。未來載人航天器會搭載高清圖像和高質量話音設備,在模擬高碼率圖像和話音方面還需要做進一步工作。
[1] 周智敏,李企舜.現代航天測控原理[M].長沙:國防科技大學出版社,1998.
[2] 靳海力.一種增強型可靠UDP的設計及應用[D].合肥:中國科學技術大學,2009.
[3] 羅明宇,陶孜謹,盧錫城.RTP在網絡視頻傳輸中的實現研究[J].計算機工程,ISTICPKU,2000,26(9):65-66.[4] 李燕靈,馬瑞芳,左力.基于RTP/PTCP的實時視頻數據傳輸模型及實現[J].微電子學與計算機,ISTIC PKU,2005,22(8):138-140.
[5] 馬厚勇,韓寧.視頻、音頻信號處理器-多媒體DSP[J].無線電通信技術,2005,31(1):27-28.
[6] 求是科技.Windows API程序設計參考大全[M].北京:人民郵電出版社,2006.
[7] 胡剛,石亞偉.PCI總線的中斷處理技術[J].計算機自動測量與控制,2001,9(6):55-56.
[8] CANT C.Windows WDM設備驅動程序開發指南[M].北京:機械工業出版社,2000.
[9] 何帥,王文基,狄衛國.基于WDF的航天測控數字基帶板驅動程序設計[J].無線電工程,2016,46(4):5-8.
[10] ONEY W.Programming the Microsoft Windows Driver Model[M].Microsoft Press,2003.
[11] 祁佳,羅琦,于勇.Windows平臺DDK開發WDM設備驅動研究及應用[J].微電子學與計算機,2008,25(12):154-156.
[12] 閆改,郭曉光.基于DSP的PCI總線高速DMA數據傳輸[J].無線電工程,2013,43(8):19-21.
[13] 武安河.Windows2000/XP WDM設備驅動程序開發[M].北京:電子工業出版社,2005.
[14] 馬玉英,馬義德.PCI中斷機制分析[J].青海師范大學學報,2005(2):51-53.
[15] 徐洪信,申景詩,王鳳陽.高速率數據接收存儲系統設計[J].航天器工程,2009,18(1):43-47.
[16] 滑偉.一種PCI總線接口的數據接收卡設計[J].無線電通信技術,2013,39(4):53-55.
[17] 孫守閣,徐勇.Windows設備驅動程序技術內幕[M].北京:清華大學出版社,2000.
[18] 冉林倉.Windows API編程[M].北京:清華大學出版社,2005.
[19] 倪麗娜,趙茂先,張秀娟.Visual C++6.0 全攻略寶典[M].北京:中國水利水電出版社,2001.
[20] 高京龍.PCI總線設備驅動程序開發[J].無線電通信技術,2001,27(6):43-44.
The Implement of Dynamic Data Transfers Simulation on Aerospace TT&C System
WU Jian-liang1,JIANG Zhao-chang1,WANG Wen-yan2,JIN Xuan3
(1.The54thResearchInstituteofCETC,ShijiazhuangHebei050081,China; 2.Unit94106,PLA,Xi’anShaanxi710614,China; 3.Unit63636,PLA,LanzhouGansu732750,China)
10.3969/j.issn.1003-3106.2017.08.05
武建亮,姜照昶,王文彥,等.航天測控動態數傳數據模擬器的實現[J].無線電工程,2017,47(8):18-21.[WU Jianliang,JIANG Zhaochang,WANG Wenyan,et al.The Implement of Dynamic Data Transfers Simulation on Aerospace TT&C System[J].Radio Engineering,2017,47(8):18-21.]
2017-03-14
國家高技術研究發展計劃(“863”計劃)基金資助項目(2013AA122904)。
TP311.1
A
1003-3106(2017)08-0018-04
武建亮 男,(1984—),工程師。主要研究方向:航天測控。
姜照昶 男,(1986—),工程師。主要研究方向:航天測控。