黃邑燊
(1.中國科學院國家空間科學中心微波遙感技術(shù)重點實驗室,北京100190;2.中國科學院國家空間科學中心北京 100190;3.中國科學院大學北京100149)
微波遙感技術(shù)廣泛應(yīng)用于水文、氣象和環(huán)境監(jiān)測等領(lǐng)域。微波輻射計是被動式遙感儀器[1],根據(jù)天線接收到的目標輻射能量信息,通過定標方程得到輻射計輸出電壓與所觀測目標的亮溫的關(guān)系,進而研究被觀測目標的輻射特性[2]。全極化微波輻射計是一種新型的微波遙感器,它在雙極化微波輻射計只測量目標輻射信息幅度的基礎(chǔ)上,進一步測量其相位,實現(xiàn)了人們在微波遙感中對電磁波極化信息的全部利用[3]。在微波輻射計系統(tǒng)中,數(shù)據(jù)采集與系統(tǒng)控制模塊對輻射計接收到的目標的全極化信息進行采集和數(shù)字化處理[4],再進行存儲和管理,因此需要一個便捷和高效的的人機交互軟件來提高對數(shù)據(jù)的采集和處理速度。
文中設(shè)計了一款針對直接檢波和數(shù)字相關(guān)型通用的上位機軟件,完成數(shù)據(jù)的采集、處理以及顯示功能。
微波輻射計的接收機單元采用全功率的工作體制,結(jié)構(gòu)簡單,可靠性高[5]。直接檢波型輻射計接收機的功能是將天線單元接收到的目標輻射信號進行下變頻、放大、濾波、檢波并積分放大至可供數(shù)控單元采集量化的電平幅度[6],數(shù)控單元將采集到的電平數(shù)據(jù)通過網(wǎng)口傳送給上位機。直接檢波型輻射計接收機單元結(jié)構(gòu)圖如圖1所示。其中Tv和Th分別表示垂直和水平極化亮溫。
圖1 直接檢波型微波輻射計系統(tǒng)框圖
數(shù)字相關(guān)型全極化微波輻射計系統(tǒng)中,天線接收到的目標輻射通過極化分離器(OMT)分為水平極化和垂直極化兩個極化分量,然后通過放大(LNA)、濾波和正交解調(diào)過程產(chǎn)生正交的IQ信號,進入數(shù)字相關(guān)器進行相關(guān)運算,得到4個Stokes電壓信號,再通過串口傳送到上位機軟件。數(shù)字相關(guān)型輻射計的系統(tǒng)框圖如2所示[7]。
圖2 數(shù)字相關(guān)型微波輻射計系統(tǒng)框圖
其中Tv和Th分別表示垂直和水平極化亮溫,T3和T4表示其復(fù)相關(guān)量。在實際測量中,數(shù)字相關(guān)器輸出的是I1*I1、I2*I2、Q1*Q1、Q2*Q2、I1*Q1、I1*I2、Q1*I2、Q1*Q28個相關(guān)數(shù)的積分結(jié)果。4個Stokes參數(shù)可表示為
微波輻射計數(shù)據(jù)采集系統(tǒng)上位機軟件的功能是提供人機交互界面,軟件根據(jù)用戶定義的指令通過RS232串口和以太網(wǎng)口向下位機發(fā)送命令,上位機軟件把從串口和網(wǎng)口接收來的數(shù)據(jù)依次存入文件,將字節(jié)分析匹配解析數(shù)據(jù)包,再將提取出來的微波輻射信息通過可視化圖形顯示出來,并能實現(xiàn)圖像的存儲、縮放和灰度顯示等功能。上位機軟件的基本組成功能如圖3所示。
圖3 上位機軟件基本功能
上位機軟件的主要功能包括:
1)數(shù)據(jù)通信:
實現(xiàn)與輻射計數(shù)據(jù)管理單元的串口和網(wǎng)口通信,包括配置參數(shù),發(fā)送和接收數(shù)據(jù)包的任務(wù)。
2)數(shù)據(jù)處理:
根據(jù)工作模式的選擇,對接收到的數(shù)據(jù)包進行解析,提取4個Stokes測量參數(shù)并進行格式轉(zhuǎn)化。
3)數(shù)據(jù)顯示:
①顯示串口和網(wǎng)口接收到的數(shù)據(jù)和輔助工作參數(shù),包括日期、工作模式和積分時間;
②根據(jù)輻射計各通道信號測量值結(jié)合坐標信息繪制圖形。
4)文件管理:
將接收到的數(shù)據(jù)進行存儲和更改,并且能夠?qū)?shù)據(jù)導出進行繪圖處理。
輻射計數(shù)據(jù)采集系統(tǒng)上位機軟件基于Qt Creator軟件開發(fā)環(huán)境并在window10操作系統(tǒng)上運行的。Qt Creator是一個用Qt開發(fā)的輕量級跨平臺集成開發(fā)環(huán)境[8],因為其良好的封裝機制和豐富的API函數(shù)被廣泛使用?;赒t類庫本身,用戶可通過自定義或內(nèi)建對話框的方式構(gòu)建操作面板和顯示面板。上位機軟件的設(shè)計流程如圖4所示。
圖4 上位機軟件設(shè)計流程圖
3.1.1 串口通信模塊
串行通信接口,是采用串行通信方式的擴展接口[9]。串行接口(Serial Interface)是指數(shù)據(jù)一位一位地順序傳送,其特點是通信線路簡單,只要一對傳輸線就可以實現(xiàn)雙向通信,從而大大降低了成本,適用于遠距離通信,但傳送速度較慢[10]。在Qt中并沒有特定的串口控制類,通常使用的是第三方寫的qextserialport類。在Windows環(huán)境下,需使用qextserialbase.cpp、qextserialbase.h、qextserialport.cpp、qextserialport.h、win_qextserialport.cpp和 win_qextserialport.h這6個文件[11]。該類包含串口設(shè)置、串口發(fā)送、串口接收3個模塊。串口設(shè)置的各屬性如表1所示,包括串口號、波特率、數(shù)據(jù)位、校驗位和停止位,數(shù)據(jù)包頭可根據(jù)個人設(shè)定,供解析數(shù)據(jù)的時候使用。
表1 串口屬性設(shè)置
串口接收到的數(shù)據(jù)包是十六進制,包頭為12 34,數(shù)據(jù)中包含數(shù)據(jù)采集單元傳輸?shù)乃胶痛怪蓖ǖ赖碾娖叫盘柕南嚓P(guān)和累加結(jié)果,需要將其進行解包。將十六進制轉(zhuǎn)化為int格式再進行分類和顯示。串口通信界面如圖5所示。
圖5 串口通信界面
串口調(diào)試模塊的主要功能是通過配置串口參數(shù),能夠?qū)Υ趥鬏敂?shù)據(jù)進行實時顯示,當采集到的數(shù)據(jù)量達到需求,可以保存數(shù)據(jù)到自定義文件內(nèi)方便后續(xù)的處理。
3.1.2 串口通信模塊
UDP(User Datagram Protocol)是一種簡單的面向數(shù)據(jù)報、無連接、傳輸層協(xié)議[12]。UDP不提供錯誤校正,不保證有序,無法去重復(fù),沒有流量和擁塞控制,不能保證數(shù)據(jù)一定到達目的地,但是可以通過校驗和提供錯誤偵測[13]。由于UDP在傳輸數(shù)據(jù)報前不用在客戶和服務(wù)器之間建立一個連接,且沒有超時重發(fā)等機制,因此傳輸速度很快[14]。在Qt中UDP數(shù)據(jù)的發(fā)送和接收可以使用QUdpSocket類來實現(xiàn)。一般使用bind()去綁定地址和端口號,然后使用writeDatagram()和 readDatagram()去傳輸數(shù)據(jù)。UDP屬性一般設(shè)置本地的IP和端口號以及目標主機的IP和端口號,具體設(shè)置參數(shù)如表2所示。
網(wǎng)口接收到十六進制數(shù)據(jù)包,包頭為EB 91 55 AA,將數(shù)據(jù)包進行解包和處理。UDP通信和顯示界面如圖6所示。
表2 UDP屬性設(shè)置
圖6 網(wǎng)口通信界面
UDP調(diào)試模塊的主要功能是通過配置本地和目標主機的IP和端口號,能夠?qū)W(wǎng)口傳輸數(shù)據(jù)進行實時顯示和存儲。
3.1.3 數(shù)據(jù)包解析
上位機軟件接收到十六進制數(shù)據(jù)包,并保存為文本格式或二進制文件格式。因此在提取數(shù)據(jù)的時候采取調(diào)用外部文件的模式,識別數(shù)據(jù)流中的包頭并進行定位。根據(jù)包頭的位置,提取有效數(shù)據(jù)信息并進行分類,再轉(zhuǎn)化為十六進制數(shù)據(jù)進行運算。以解析網(wǎng)口傳輸數(shù)據(jù)為例具體實現(xiàn)過程如下:
QwtPlot類是一個二維繪圖部件,繼承自QFrame和QwtPlotDict。但實際上它只是一個視圖窗口,QwtPlotCanvas類才是真正的繪制設(shè)備。在QwtPlot的畫布上可以顯示不限數(shù)量的曲線和網(wǎng)格,或者其它任意從QwtPlotItem派生出來的子類[15]。
(1)曲線繪圖
QwtPlot繪制曲線需要用到QwtPlotCurve類:曲線類圖元,這個類表征一系列點數(shù)據(jù)。軟件中具體的實現(xiàn)過程如下:
(2)三維散點繪圖
在曲線繪圖工具的基礎(chǔ)上,繪制三維散點圖需要QwtPlotSpectroCurve類:三維散點圖,用顏色表示Z軸。三維散點繪圖實現(xiàn)過程如下:
(3)鼠標動作
在QwtPlot上繪制圖形,需要使用鼠標實現(xiàn)縮放等操作。設(shè)計通過鼠標滾輪實現(xiàn)畫布的縮放,點擊左鍵勾選動作能夠?qū)崿F(xiàn)局部放大,點擊右鍵恢復(fù)至上一次放大前的狀態(tài),實現(xiàn)代碼如下所示。
在全極化輻射計定標試驗中,需要觀測目標輻射極化信息隨著相位延遲版旋轉(zhuǎn)角度的變化[16]。曲線繪圖中橫軸表示延遲版旋轉(zhuǎn)的時間,縱軸表示通道間的數(shù)字自相關(guān)和互相關(guān)結(jié)果。
試驗過程中對線極化源的測量結(jié)果如圖7所示,其中左上和右上分別表示的是通道1和通道2中IQ兩路的自相關(guān)量,左下和右下表示通道1和通道2中IQ兩路的復(fù)相關(guān)量。
從圖中可以直觀觀測4個Stokes信號隨相位延遲版角度變化的趨勢以及動態(tài)范圍,可以檢驗接收機通道間的功率和相位是否一致。
圖7 極化信息顯示
本文針對微波輻射計數(shù)據(jù)采集系統(tǒng)設(shè)計了基于Qt的上位機軟件[17]。首先對直接檢波和數(shù)字相關(guān)型微波輻射計系統(tǒng)進行了介紹,根據(jù)微波輻射計數(shù)據(jù)接口的不同,實現(xiàn)了上位機軟件與空間中心設(shè)計的微波輻射計系統(tǒng)數(shù)控單元的串口與UDP通信。該上位機軟件提供了友好的用戶使用界面,能夠用便捷的操作實現(xiàn)對數(shù)據(jù)的傳輸、處理和圖形的展示,提高了測試接收機性能和觀測目標的輻射分布信息的速度和效率。