陳 昱,王 淼,任海燕,曾 立
(北京航空航天大學(xué)空間與環(huán)境學(xué)院,北京 102206)
感應(yīng)式磁力儀SCM(Search Coil Magnetometer)是某試驗(yàn)衛(wèi)星的主要有效載荷之一,用于獲取沿衛(wèi)星軌道10 Hz至20 kHz頻率范圍的低頻交流磁場(chǎng)波形和頻譜信息。在載荷的研制生產(chǎn)過(guò)程中,通常需要配套的地面檢測(cè)系統(tǒng),用于模擬與衛(wèi)星平臺(tái)的控制總線和數(shù)據(jù)總線接口,為載荷調(diào)試、測(cè)試和定標(biāo)提供支持。例如Demeter衛(wèi)星地面應(yīng)用系統(tǒng)[1]、歐空局Silex地面光學(xué)終端測(cè)試平臺(tái)[2]等。數(shù)據(jù)預(yù)處理的目的是將儀器輸出的二進(jìn)制原始數(shù)據(jù)通過(guò)轉(zhuǎn)換、校正和信號(hào)分析等過(guò)程,獲得可供研究人員和用戶直接使用的探測(cè)的物理量及導(dǎo)出量[3,4]。本文基于某試驗(yàn)衛(wèi)星感應(yīng)式磁力儀的外部接口特點(diǎn)設(shè)計(jì)了地面檢測(cè)系統(tǒng),并根據(jù)載荷的工作模式和探測(cè)數(shù)據(jù)特點(diǎn),采用Visual C++調(diào)用Matlab的方法設(shè)計(jì)了數(shù)據(jù)預(yù)處理軟件。地面檢測(cè)系統(tǒng)和預(yù)處理軟件用于模擬與衛(wèi)星的控制總線和數(shù)據(jù)總線接口,具有向儀器發(fā)送指令、接收/存儲(chǔ)科學(xué)數(shù)據(jù)、數(shù)據(jù)處理和可視化的功能[5]。
感應(yīng)式磁力儀系統(tǒng)由三軸(X軸、Y軸和Z軸)正交傳感器、電子學(xué)機(jī)箱以及連接電纜組成。為了避免衛(wèi)星平臺(tái)低頻電磁干擾,感應(yīng)式磁力儀傳感器安裝在衛(wèi)星平臺(tái)鉸鏈?zhǔn)缴鞐U的末端,距離衛(wèi)星本體4.5 m。
儀器設(shè)計(jì)基于法拉第電磁感應(yīng)原理,通過(guò)傳感器三軸正交的磁天線測(cè)量空間中變化的磁場(chǎng)矢量三分量,得到的感應(yīng)電壓為:
e=-μappNS(dB/dt)
(1)
其中,e為感應(yīng)電壓,μapp為磁導(dǎo)率,N為磁天線繞線匝數(shù),S為磁芯截面積,B為感應(yīng)磁場(chǎng)。
感應(yīng)電壓通過(guò)連接電纜傳輸?shù)诫娮訉W(xué)機(jī)箱進(jìn)行信號(hào)放大處理。第一級(jí)為固定倍數(shù)的前置放大,之后信號(hào)通過(guò)模擬濾波得到低頻(頻帶范圍10 Hz~200 Hz)、中頻(頻帶范圍200 Hz~2.2 kHz)和高頻(頻帶范圍1.8 kHz~20 kHz)三路波形信號(hào)。第二級(jí)為自動(dòng)增益控制AGC(Automatic Gain Control)放大,通過(guò)將一級(jí)放大后波形的幅度值與系統(tǒng)設(shè)定的上下限閾值進(jìn)行比較,并將結(jié)果反饋給前置放大器進(jìn)行放大倍數(shù)的自動(dòng)調(diào)整,使輸出的數(shù)據(jù)幅度保持在一定的測(cè)量范圍。
三軸傳感器探測(cè)的信號(hào)經(jīng)過(guò)兩級(jí)放大后得到九路波形信號(hào),不同頻段的信號(hào)被電子學(xué)機(jī)箱的AD(Analog-Digital)芯片以不同的采樣率連續(xù)采集(低頻采樣率1.024 kHz,中頻10.24 kHz,高頻51.2 kHz),并保存為16位的二進(jìn)制數(shù)據(jù)格式。當(dāng)高頻段采集4 096點(diǎn)時(shí),即根據(jù)當(dāng)前運(yùn)行模式進(jìn)行對(duì)應(yīng)的數(shù)據(jù)處理,然后打包由衛(wèi)星平臺(tái)接口傳輸至地面接收站。某衛(wèi)星選用RS422做為與載荷的數(shù)傳接口,數(shù)傳時(shí)鐘信號(hào)為6 MHz,以達(dá)到高速數(shù)率傳輸功能;星務(wù)平臺(tái)采用CAN(Controller Area Network)總線做為其與載荷的通信紐帶,用于實(shí)現(xiàn)向儀器發(fā)送廣播信號(hào)、控制指令以及遙測(cè)數(shù)據(jù)采集等功能。感應(yīng)式磁力儀設(shè)備系統(tǒng)組成框圖如圖1所示。
星載感應(yīng)式磁力儀具有三種工作模式:詳查、巡查和定標(biāo)。在不同模式下,儀器輸出不同內(nèi)容的數(shù)據(jù)產(chǎn)品。
當(dāng)衛(wèi)星經(jīng)過(guò)境內(nèi)上方空間時(shí),載荷工作進(jìn)入詳查模式工作,此模式下將其采集的低頻帶、中頻帶和高頻帶原始科學(xué)數(shù)據(jù)連同系統(tǒng)參數(shù)(數(shù)據(jù)包序列、儀器電壓及電流監(jiān)測(cè)信號(hào)、當(dāng)前工作模式代碼、三分量增益放大倍數(shù)及8位累加和校驗(yàn)碼等)發(fā)送至地面;當(dāng)衛(wèi)星處于境外地區(qū)時(shí),載荷進(jìn)入巡查模式,僅需發(fā)送低、中頻和精簡(jiǎn)的高頻頻譜與相位數(shù)據(jù)至地面;定標(biāo)模式則用于儀器自檢,于開機(jī)或由地面主控進(jìn)入,數(shù)據(jù)處理方式與巡查模式一致。儀器根據(jù)衛(wèi)星平臺(tái)指令在三種模式間切換。
巡查和定標(biāo)模式下,為了降低數(shù)據(jù)率需要對(duì)數(shù)據(jù)量最大的高頻段數(shù)據(jù)進(jìn)行精簡(jiǎn),系統(tǒng)設(shè)計(jì)每25包輸出一次幅度平均譜和相位譜。幅度平均譜通過(guò)將每包的高頻帶原始波形數(shù)據(jù)進(jìn)行4 096點(diǎn)快速傅里葉變換FFT(Fast Fourier Transformation),當(dāng)計(jì)數(shù)到第25包時(shí),對(duì)其幅度譜進(jìn)行平均后,得到分辨率12.5 Hz、包含2 048點(diǎn)譜線的幅度平均譜數(shù)據(jù)產(chǎn)品:
D25th=(D1+D2+…+D25)/25
(2)
其中,D25th為每25包輸出的幅度平均譜數(shù)據(jù),D1至D25表示1至25包高頻帶數(shù)據(jù)FFT變換后的幅度譜數(shù)據(jù)。由于后續(xù)科學(xué)研究需要用到相位數(shù)據(jù),而相位有不可平均性質(zhì),因此感應(yīng)式磁力儀相位譜數(shù)據(jù)取第25包信號(hào)的相位譜做為相位數(shù)據(jù)產(chǎn)品。
在載荷的研制過(guò)程中,需要針對(duì)儀器特點(diǎn),根據(jù)其數(shù)據(jù)端接口設(shè)計(jì)對(duì)應(yīng)的地面檢測(cè)設(shè)備,用于在沒(méi)有衛(wèi)星數(shù)傳與星務(wù)分系統(tǒng)的情況下完成設(shè)備的調(diào)試和檢測(cè)等過(guò)程。
感應(yīng)式磁力儀系統(tǒng)地面檢測(cè)設(shè)備選用Xilinx公司的FPGA為主控芯片,分別擴(kuò)展USB、RS422以及CAN為外圍接口,并配置SRAM做為數(shù)據(jù)緩存。CAN總線接口使用SAJ1000,RS422采用DS26F32作為接收芯片,實(shí)現(xiàn)模擬衛(wèi)星平臺(tái)與載荷接口匹配、總線轉(zhuǎn)換、數(shù)據(jù)收發(fā)等功能。地面檢測(cè)系統(tǒng)通過(guò)USB 2.0接口與上位機(jī)連接,進(jìn)行數(shù)據(jù)通信,選用的是Cypress公司的CY7C系列控制芯片。
感應(yīng)式磁力儀發(fā)送的數(shù)據(jù)包中含有不同類型的數(shù)據(jù)信息,且為16位二進(jìn)制編碼數(shù)據(jù)格式,因此數(shù)據(jù)預(yù)處理軟件需要對(duì)數(shù)據(jù)包進(jìn)行重建,以便從中提取各類參數(shù)信息。為了監(jiān)測(cè)儀器運(yùn)行狀態(tài),軟件需要實(shí)時(shí)顯示圖像和部分參數(shù)信息。此外,在數(shù)據(jù)接收和可視化的過(guò)程中,還具有對(duì)儀器啟動(dòng)、停止及工作模式進(jìn)行切換的能力,同時(shí)軟件還集成了信息統(tǒng)計(jì)和頻譜分析等多種功能。
(1)軟件平臺(tái)。
Matlab被稱為矩陣實(shí)驗(yàn)室,是一款具有強(qiáng)大的數(shù)值計(jì)算、處理以及可視化功能的軟件,其豐富的函數(shù)資源可以為地面檢測(cè)軟件系統(tǒng)的數(shù)據(jù)處理及顯示提供極大的便利。Visual C++能夠進(jìn)行可視化編程,是一款應(yīng)用廣泛、性能強(qiáng)大的綜合性軟件開發(fā)工具,但是其編寫圖形界面的過(guò)程比較復(fù)雜繁瑣,因此數(shù)據(jù)預(yù)處理軟件設(shè)計(jì)采用Visual C++調(diào)用Matlab的方法,取長(zhǎng)補(bǔ)短,融合兩者優(yōu)勢(shì)。
在混合編程方法中,較常用的有:MCC編譯器法、Matcom編譯法和Matlab計(jì)算引擎調(diào)用法[6]。其中,Matcom編譯法使用Mathtools公司推出的Matlab到C++平臺(tái)編譯軟件(Matcom),將需要調(diào)用的.m文件轉(zhuǎn)換生成對(duì)應(yīng)的C++源代碼,再將此代碼嵌入對(duì)應(yīng)的Visual C++程序中。該方法方便可行,生成的代碼可讀性好,因此本文設(shè)計(jì)選用Matcom編譯法實(shí)現(xiàn)軟件的搭建。嵌入程序的聲明代碼如下:
//在Visual C++中初始化Matlab環(huán)境
initM(MATCOM_VERSION);
//(插入.m文件轉(zhuǎn)換后的C++代碼)
//退出調(diào)用
exitM();
(2)數(shù)據(jù)預(yù)處理。
為了還原感應(yīng)式磁力儀探測(cè)的真實(shí)感應(yīng)電壓值,地面系統(tǒng)軟件需要對(duì)接收的載荷科學(xué)數(shù)據(jù)進(jìn)行預(yù)處理。感應(yīng)電壓經(jīng)過(guò)兩級(jí)放大后由載荷AD芯片采集,AD輸入信號(hào)的量程為±10 V,輸出編碼格式如表1所示[7]。
根據(jù)表1說(shuō)明,AD輸入端0 V電壓對(duì)應(yīng)的16進(jìn)制代碼為00H,正電壓最大值7FH對(duì)應(yīng)輸入電壓為+10 V,負(fù)電壓為補(bǔ)碼表示,即80H對(duì)應(yīng)-10 V輸入電壓。因此,AD前端輸入電壓,即探頭采集信號(hào)放大后電壓值的計(jì)算方法如下:
Dtmp=WH*256+WL;//數(shù)據(jù)轉(zhuǎn)換為10進(jìn)制
/*根據(jù)編碼格式判斷數(shù)據(jù)正負(fù)值并根據(jù)AD芯片量程計(jì)算出對(duì)應(yīng)的實(shí)際輸入電壓值*/
由實(shí)驗(yàn)結(jié)果可以看出,當(dāng)任務(wù)規(guī)模較小時(shí),三種算法在任務(wù)完成時(shí)間上的差距相對(duì)較小,改進(jìn)算法收斂速度更快且更穩(wěn)定.隨著任務(wù)規(guī)模的提升,可以看到改進(jìn)的粒子群算法表現(xiàn)出更為明顯的優(yōu)勢(shì).相比較而言,F(xiàn)IFO算法的迭代次數(shù)比其他算法更大,收斂速度較慢.算法初期,傳統(tǒng)粒子群算法相比FIFO算法具有更好的收斂速度,但后期收斂速度明顯變慢,且無(wú)法跳出局部極值過(guò)早的收斂.隨著任務(wù)數(shù)的提升,改進(jìn)的粒子群算法在總的任務(wù)完成時(shí)間上相比其他算法優(yōu)勢(shì)更為明顯,可以看到通過(guò)慣性權(quán)重優(yōu)化和調(diào)整算子的設(shè)置,能夠更有效地實(shí)現(xiàn)較好的目標(biāo)區(qū)域的搜索,降低了任務(wù)總時(shí)間,從而在優(yōu)化資源以及合理調(diào)度資源方面具有良好的效果.
ifDtmp>(215-1)
VOUT=(Dtmp-216)/((215-1)×10)
ifDtmp≤(215-1)
VOUT=Dtmp/((215-1)×10)
其中,WH為16進(jìn)制數(shù)據(jù)高8位,WL為16進(jìn)制數(shù)據(jù)低8位,VOUT為計(jì)算所得輸入端電壓值,單位為伏特。
由于探頭采集的感應(yīng)電壓還經(jīng)過(guò)了固定增益和動(dòng)態(tài)增益兩級(jí)放大,因此AD輸入端電壓數(shù)據(jù)還需除以兩級(jí)放大倍數(shù)才能得到原始的感應(yīng)電壓值,即:
Vsensor=VOUT/Afix/AGCn
(3)
其中,Afix為固定增益放大倍數(shù),AGCn(n=1,2,3)為當(dāng)前分量的動(dòng)態(tài)增益放大倍數(shù),Vsensor為傳感器探測(cè)的感應(yīng)電壓,即數(shù)據(jù)預(yù)處理軟件計(jì)算得到并顯示的最終電壓值。
為了觀察信號(hào)的頻域特征,數(shù)據(jù)預(yù)處理還對(duì)高頻帶科學(xué)數(shù)據(jù)進(jìn)行了FFT處理。高頻帶信號(hào)采樣率fs=51.2 kHz,一個(gè)數(shù)據(jù)包中采樣點(diǎn)數(shù)N=4096,由此得到頻率分辨率為fs/N=12.5 Hz,幅度為AOUT=abs(fft(Vsensor[1:4096],4096))/(4096*2)的頻譜圖形。
(3)多線程設(shè)計(jì)。
由于地面檢測(cè)系統(tǒng)連續(xù)不間斷地向上位機(jī)發(fā)送數(shù)據(jù),軟件必須在保證數(shù)據(jù)完整接收的同時(shí)實(shí)現(xiàn)數(shù)據(jù)整理及可視化等功能,因此設(shè)計(jì)了數(shù)據(jù)接收和圖形實(shí)時(shí)顯示兩個(gè)并行運(yùn)行的線程。
以高頻段為例,感應(yīng)式磁力儀設(shè)備的采樣率為51.2 kHz,每4 096個(gè)數(shù)作為一個(gè)數(shù)據(jù)包輸出,如果對(duì)接收的每包數(shù)據(jù)進(jìn)行處理并顯示,則需每80 ms刷新一次圖形。然而,這種高頻率的刷新占用了較多的CPU資源,經(jīng)測(cè)試發(fā)現(xiàn)會(huì)嚴(yán)重影響數(shù)據(jù)接收線程的執(zhí)行,導(dǎo)致數(shù)據(jù)丟失,而數(shù)據(jù)接收的完整性必不可少,因此根據(jù)計(jì)算機(jī)的處理能力,設(shè)計(jì)圖形顯示進(jìn)程每間隔一定數(shù)據(jù)包顯示一次。計(jì)算機(jī)的性能越好,則間隔的數(shù)據(jù)包越少,圖形刷新頻率越高,圖形顯示越流暢。
感應(yīng)式磁力儀地面數(shù)據(jù)預(yù)處理軟件運(yùn)行流程如圖2所示。
Figure 2 Flow chart of data preprocessing圖2 數(shù)據(jù)預(yù)處理軟件流程圖
上位機(jī)與地面檢測(cè)系統(tǒng)連接后,加電啟動(dòng)時(shí)首先檢測(cè)連接狀態(tài),并彈出對(duì)應(yīng)連接結(jié)果的提示框。如連接成功,說(shuō)明地面檢測(cè)系統(tǒng)已經(jīng)準(zhǔn)備完畢,數(shù)據(jù)傳輸通道連接正常,則彈出數(shù)據(jù)預(yù)處理軟件界面進(jìn)行后續(xù)操作,軟件主界面如圖3所示。
Figure 3 Interface of data preprocessing software圖3 數(shù)據(jù)預(yù)處理軟件操作界面
軟件界面中,路徑區(qū)選擇接收的數(shù)據(jù)文件保存地址,模式選擇區(qū)用于控制切換載荷的工作模式,通道選擇區(qū)可以選擇需要在實(shí)時(shí)顯示界面觀測(cè)的分量,操作區(qū)和數(shù)據(jù)轉(zhuǎn)換十進(jìn)制區(qū)用于在非數(shù)據(jù)傳輸時(shí),對(duì)已接收的數(shù)據(jù)包文件進(jìn)行統(tǒng)計(jì)、繪圖和進(jìn)制轉(zhuǎn)換,控制區(qū)則包含開啟或暫停傳輸、顯示切換和FFT處理顯示等功能。
當(dāng)傳輸啟動(dòng)時(shí)會(huì)彈出實(shí)時(shí)圖形可視化界面,界面含有9幅子框圖,分別顯示數(shù)據(jù)預(yù)處理后X、Y、Z軸的低頻、中頻和高頻帶(L、M、H)數(shù)據(jù)圖像,即傳感器探測(cè)的感應(yīng)電壓Vsensor。圖像X軸單位為毫秒(ms),Y軸單位為毫伏(mV)。通過(guò)切換至FFT譜分析顯示,會(huì)彈出高頻帶數(shù)據(jù)經(jīng)過(guò)FFT處理后的頻譜圖形。其中X軸單位為千赫茲(kHz),Y軸單位為毫伏(mV)。圖形顯示界面如圖4所示。
Figure 4 Real-time graphy interface圖4 實(shí)時(shí)圖形可視化界面
本文針對(duì)星載感應(yīng)式磁力儀設(shè)備的工作特點(diǎn)和數(shù)據(jù)產(chǎn)品格式,設(shè)計(jì)了地面檢測(cè)系統(tǒng)及基于Visual C++調(diào)用Matlab編寫的數(shù)據(jù)預(yù)處理軟件。地面檢測(cè)系統(tǒng)實(shí)現(xiàn)了連接感應(yīng)式磁力儀載荷及上位機(jī)軟件的功能,預(yù)處理軟件具有在保持接收數(shù)據(jù)完整性的同時(shí),并行實(shí)時(shí)顯示傳感器三分量多頻帶的數(shù)據(jù)圖形的功能,且能夠切換顯示FFT處理后頻譜圖形,以便對(duì)載探測(cè)的信號(hào)質(zhì)量進(jìn)行直觀判斷。
軟件設(shè)計(jì)通用方便,操作簡(jiǎn)單易用,經(jīng)測(cè)試可用于Windows XP和Windows 7操作系統(tǒng)。目前已經(jīng)過(guò)了衛(wèi)星多個(gè)階段的實(shí)際應(yīng)用,滿足了感應(yīng)式磁力儀設(shè)備地面測(cè)試的需求,為后續(xù)拓展及載荷研制提供了測(cè)試條件。