新聞中心

EEPW首頁 > 電源與新能源 > 設(shè)計應(yīng)用 > 基于多線程技術(shù)的天線實時測量系統(tǒng)研究

基于多線程技術(shù)的天線實時測量系統(tǒng)研究

作者: 時間:2013-10-03 來源:網(wǎng)絡(luò) 收藏

系統(tǒng)軟件用戶界面可以完成所有測量參數(shù)的輸入和設(shè)置并及時響應(yīng)用戶操作,除此線程外建立額外的工作者線程實現(xiàn)其他功能的并行工作,提高系統(tǒng)實時性,在用戶界面實時更新顯示儀器的運行狀態(tài)和系統(tǒng)的測量進度以供用戶了解系統(tǒng)狀態(tài),同時對測量數(shù)據(jù)進行實時地讀取和保存,便于后期的進一步處理和研究。

本文引用地址:http://m.butianyuan.cn/article/174632.htm

0 引言

隨著技術(shù)和現(xiàn)代電子測量技術(shù)在儀器領(lǐng)域的應(yīng)用和普及,特別是電子測量儀器接口及相應(yīng)標準的出現(xiàn),使得與儀器間的簡單易得,用戶可以通過計算機程序進行儀器和數(shù)據(jù)讀取與存儲,這些技術(shù)的發(fā)展使得天線自動測量系統(tǒng)的實現(xiàn)成為可能。

以往基于單線程的簡單測量系統(tǒng),對用戶操作的響應(yīng)以及多任務(wù)之間的切換需要使用“中斷處理”來完成,極大地影響了系統(tǒng)的實時性和工作效率,測量過程中軟件進入數(shù)據(jù)讀取與存儲的循環(huán)過程,使得用戶界面進入“假死”狀態(tài),無法對測量進行和了解系統(tǒng)測量的實時進度。為了彌補這些不足,需要做到多任務(wù)的并行工作,而多線程技術(shù)以其避免阻塞、同時執(zhí)行多項任務(wù)、減小運行過程和用戶界面的相互影響,以及最大程度地利用多處理器性能的獨特優(yōu)點很好地滿足了這一要求。

本文設(shè)計了一套基于多線程技術(shù)的天線實時測量系統(tǒng),提供了布局簡潔而功能完善的用戶界面,可以完成所有測量參數(shù)的輸入和設(shè)置并及時響應(yīng)用戶操作,使用不同線程實現(xiàn)多個任務(wù)的并行工作,提高系統(tǒng)實時性,在用戶界面實時更新顯示儀器的運行狀態(tài)和系統(tǒng)的測量進度以供用戶了解系統(tǒng)狀態(tài),同時實現(xiàn)了測量數(shù)據(jù)的實時讀取和保存,便于后期的進一步處理和研究。

1 系統(tǒng)概述

1.1 系統(tǒng)工作原理

本測量系統(tǒng)使用旋轉(zhuǎn)天線測量法,輔助天線(源天線)連接到矢網(wǎng)發(fā)射端口,待測天線連接到矢網(wǎng)接收端口,使待測天線的待測平面與轉(zhuǎn)臺旋轉(zhuǎn)平面平行,使用矢網(wǎng)測量不同角度的傳輸參數(shù)(S 參數(shù)),利用這些數(shù)據(jù)便可以做出特定頻率下的天線方向圖。此外矢網(wǎng)的掃頻特性為天線測量提供了另外一個優(yōu)勢,即在一次測量中,可以得到在某一頻段內(nèi)多個頻點的測量數(shù)據(jù),可以通過對比不同頻點的數(shù)據(jù)和天線方向圖對天線的頻率特性進行比較和分析。

1.2 系統(tǒng)組成

該測試系統(tǒng)由五部分組成:微波暗室,計算機(系統(tǒng)軟件),矢量網(wǎng)絡(luò)分析儀,程控轉(zhuǎn)臺和源天線。其布局如圖1所示。

主控計算機與矢量網(wǎng)絡(luò)分析儀通過LAN 線互連,與傳統(tǒng)的GPIB總線模式比較,突破了距離限制,具有數(shù)據(jù)流量大、靈活、易于設(shè)備共享、數(shù)據(jù)共享等優(yōu)點。

矢量網(wǎng)絡(luò)分析儀用于掃頻信號的發(fā)射與接收,源天線通過同軸線與連接到矢量網(wǎng)絡(luò)分析儀功率發(fā)射端的功率放大器相連,待測天線通過同軸線與矢量網(wǎng)絡(luò)分析儀的功率接收端口相連。

主控計算機與轉(zhuǎn)臺控制箱通過USB接口相連,不需要考慮轉(zhuǎn)臺控制的機械流程,只需要編程完成與控制箱的,即可控制轉(zhuǎn)臺和獲取轉(zhuǎn)臺狀態(tài)數(shù)據(jù)。

矢量網(wǎng)絡(luò)分析儀與轉(zhuǎn)臺控制箱之間通過BNC接頭同軸電纜連接,轉(zhuǎn)臺控制箱通過此電纜向矢量網(wǎng)絡(luò)分析儀發(fā)送測量所需的觸發(fā)脈沖。

2 系統(tǒng)軟件實現(xiàn)

編寫系統(tǒng)軟件使用的編譯環(huán)境是基于VC++的MFC(Microsoft Foundation Classes),使用面向?qū)ο蟮某绦蛟O(shè)計(Object Oriented Programming,OOP)方法,分別使用基于VISA(Virtual Instrument Software Architec-ture)庫的SCPI(Standard Commands for ProgrammableInstruments)指令和Mint運動控制語言進行編程完成計算機與矢量網(wǎng)絡(luò)分析儀和轉(zhuǎn)臺的通信,控制儀器并讀取信息和數(shù)據(jù)。

2.1 軟件分層結(jié)構(gòu)與信息交互

系統(tǒng)軟件是整個系統(tǒng)的控制核心,它的功能對用戶是透明的,對于用戶而言,只要選擇和輸入了正確的測量參數(shù),系統(tǒng)就能自動完成相應(yīng)的測量功能。

根據(jù)軟件需求和功能,可將其分為三層結(jié)構(gòu)部分:

用戶界面部分、數(shù)據(jù)處理部分和硬件接口部分。

系統(tǒng)軟件各層之間的信息交互如圖2所示。

用戶界面部分,響應(yīng)用戶操作,將硬件設(shè)置傳輸?shù)接布涌诓糠郑瑢⑤斎霐?shù)據(jù)送到數(shù)據(jù)處理部分,同時將數(shù)據(jù)處理部分送來的數(shù)據(jù)與狀態(tài)信息顯示給用戶,使用戶可以便捷地完成測量控制與監(jiān)控。

數(shù)據(jù)處理部分,一方面將硬件接口傳遞來的數(shù)據(jù)與狀態(tài)信息進行處理,轉(zhuǎn)換為用戶需要的格式以供顯示和存儲;另一方面將用戶設(shè)置的數(shù)據(jù)信息轉(zhuǎn)換為數(shù)據(jù)指令交給硬件接口部分。

硬件接口部分,完成計算機與儀器之間的通信,一方面將指令和數(shù)據(jù)等程序語言轉(zhuǎn)化為儀器可識別的機器語言輸送到儀器;另一方面將儀器傳輸回來的數(shù)據(jù)和狀態(tài)信息等轉(zhuǎn)換為可編程處理的數(shù)據(jù),以供數(shù)據(jù)處理部分使用。

2.2 軟件任務(wù)分析

根據(jù)系統(tǒng)工作原理,系統(tǒng)軟件需要完成以下任務(wù):

(1)建立計算機與轉(zhuǎn)臺控制箱之間的通信:建立通道,使計算機可以讀取轉(zhuǎn)臺實時運行狀態(tài),并可以隨時控制轉(zhuǎn)臺以改變其運行狀態(tài)。

(2)轉(zhuǎn)臺運行狀態(tài)的顯示:將轉(zhuǎn)臺運動速度及角度信息顯示到用戶界面并實時更新。

(3)轉(zhuǎn)臺運行參數(shù)的設(shè)置:按照用戶輸入設(shè)置轉(zhuǎn)臺的運動速度、起止位置以及脈沖輸出方式,并控制其運動的起止。

(4)建立計算機與矢量網(wǎng)絡(luò)分析儀的通信:建立通道,使計算機可以讀取矢網(wǎng)狀態(tài)及測量數(shù)據(jù),并可以隨時控制矢網(wǎng)以改變其運行狀態(tài)。

(5)矢量網(wǎng)絡(luò)分析儀的初始化以及測量參數(shù)的設(shè)置:使用基于VISA 庫的SCPI指令,對矢網(wǎng)進行初始化使其進入測量狀態(tài),按照用戶輸入完成測量參數(shù)的設(shè)置。

(6)測量數(shù)據(jù)存儲文檔的建立與更新:在計算機中建立文檔用于測量數(shù)據(jù)的存儲,將測量過程從由矢網(wǎng)讀取的測量數(shù)據(jù)按特定格式進行實時記錄。

(7)系統(tǒng)測量進度的顯示:在測量過程中的軟件運行節(jié)點、測量過程中完成某次測量時以及測量完成后輸出相應(yīng)提示性文字到用戶界面。

在實時測量系統(tǒng)中,要求計算機能同時完成多項任務(wù),且具有很高的實時性要求,多線程技術(shù)以其避免阻塞、能同時執(zhí)行多項任務(wù)、減小運行過程和用戶界面的相互影響,以及最大程度地利用多處理器性能的獨特優(yōu)點很好地滿足了這一要求。

2.3 軟件多線程的實現(xiàn)

MFC 中有兩類線程,用戶界面線程和工作者線程。前者有自己的消息隊列和消息循環(huán),一般用于處理獨立于其他線程執(zhí)行之外的用戶輸入,響應(yīng)用戶及系統(tǒng)所產(chǎn)生的事件和消息等;后者沒有消息循環(huán),通常用來執(zhí)行后臺計算和維護任務(wù),如冗長的計算過程,數(shù)據(jù)的循環(huán)讀取等。

任意一個MFC 程序至少具有一個線程,也是程序的主線程。通過主線程能夠生成或終止任意多的線程,主線程一直存在直至程序終止。其中用戶界面線程是程序默認啟動的主線程,主要實現(xiàn)軟件的運行和響應(yīng)用戶操作及控制。根據(jù)軟件任務(wù)分析部分,在主線程中生成三個工作者線程,通過計算機與測量儀器的通信,完成儀器參數(shù)的設(shè)置以及數(shù)據(jù)的實時采集、處理等后臺工作。

各線程工作順序及生存時間如圖3所示。


上一頁 1 2 下一頁

關(guān)鍵詞: 通信 控制 計算機

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉