色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 采用多線程技術(shù)的天線實(shí)時(shí)測(cè)量系統(tǒng)研究

          采用多線程技術(shù)的天線實(shí)時(shí)測(cè)量系統(tǒng)研究

          作者: 時(shí)間:2014-10-15 來(lái)源:網(wǎng)絡(luò) 收藏

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

          本文引用地址:http://cafeforensic.com/article/263934.htm

            0引言

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

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

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

            1系統(tǒng)概述

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

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

            1.2系統(tǒng)組成

            該測(cè)試系統(tǒng)由五部分組成:微波暗室,計(jì)算機(jī)(系統(tǒng)軟件),,程控轉(zhuǎn)臺(tái)和源天線。其布局如圖1所示。

            

           

            圖1系統(tǒng)組成

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

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

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

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

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

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

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

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

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

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

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

            

           

            圖2軟件各層之間的信息交互

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

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

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

            2.2軟件任務(wù)分析

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

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

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

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

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

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

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

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

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

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

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

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

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

            

           

            圖3各線層工作順序及生存時(shí)間

            三個(gè)工作者線程所完成的具體工作如下:

            轉(zhuǎn)臺(tái)狀態(tài)線程:建立計(jì)算機(jī)與轉(zhuǎn)臺(tái)控制箱的通信,不斷讀取轉(zhuǎn)臺(tái)的位置信息和速度信息并將其更新顯示到用戶界面,對(duì)應(yīng)軟件任務(wù)分析部分的任務(wù)(1)和(2),流程如圖4所示。

            

           

            圖4轉(zhuǎn)臺(tái)狀態(tài)線程

            轉(zhuǎn)臺(tái)啟動(dòng)線程:首先進(jìn)入等待狀態(tài),在矢網(wǎng)初始化以及數(shù)據(jù)文檔建立完成后,向轉(zhuǎn)臺(tái)控制箱發(fā)送指令設(shè)置轉(zhuǎn)臺(tái)的運(yùn)行參數(shù)使其開始運(yùn)動(dòng),對(duì)應(yīng)軟件任務(wù)分析部分的任務(wù)(3),流程如圖5所示。

            

           

            圖5轉(zhuǎn)臺(tái)啟動(dòng)線程流程圖

            矢網(wǎng)工作線程:其功能為向矢網(wǎng)發(fā)送指令進(jìn)行初始化設(shè)置,使矢網(wǎng)進(jìn)入觸發(fā)等待狀態(tài),并建立數(shù)據(jù)存儲(chǔ)文檔,在測(cè)量過(guò)程中不斷讀取矢網(wǎng)的測(cè)量狀態(tài),每完成一次測(cè)量,將測(cè)量數(shù)據(jù)讀取并保存到文檔中,同時(shí)將測(cè)量進(jìn)度顯示到用戶界面,對(duì)應(yīng)軟件任務(wù)分析部分的任務(wù)(4)~(7),流程如圖6所示。

            

           

            圖6矢網(wǎng)工作線程流程圖

            3系統(tǒng)性能

            3.1系統(tǒng)軟件用戶界面

            系統(tǒng)軟件用戶界面根據(jù)功能進(jìn)行區(qū)域劃分和布局,保證視圖清晰和操作方便,如圖7所示,其中序號(hào)標(biāo)注的區(qū)域功能如下:

            (1)系統(tǒng)菜單:可以完成一些系統(tǒng)常規(guī)設(shè)置,如儀器切換,數(shù)據(jù)輸出格式以及儀器運(yùn)行方式的選擇等。這些設(shè)置不需要經(jīng)常改動(dòng),對(duì)于一般測(cè)試使用默認(rèn)設(shè)置即可。

            (2)常用設(shè)置:用于輸入矢網(wǎng)測(cè)量參數(shù)和轉(zhuǎn)臺(tái)運(yùn)行參數(shù),以及文件輸出位置的選擇和自定義文件名的輸入。此部分為系統(tǒng)運(yùn)行時(shí)經(jīng)常需要改動(dòng)的設(shè)置,與用戶交互頻繁。

            

           

            圖7用戶界面主對(duì)話框

            (3)測(cè)量控制:控制測(cè)量的啟動(dòng)與停止,也可以在非測(cè)量狀態(tài)下控制轉(zhuǎn)臺(tái)的運(yùn)行。用戶對(duì)此部分進(jìn)行操作便可完成對(duì)系統(tǒng)運(yùn)行的控制,以及對(duì)轉(zhuǎn)臺(tái)進(jìn)行位置調(diào)整等。

            (4)系統(tǒng)運(yùn)行狀態(tài)顯示:實(shí)時(shí)顯示轉(zhuǎn)臺(tái)的轉(zhuǎn)動(dòng)速度和當(dāng)前位置,在測(cè)量過(guò)程中不斷更新顯示系統(tǒng)的運(yùn)行進(jìn)度。通過(guò)這些信息用戶可以對(duì)系統(tǒng)狀態(tài)了如指掌,以便做出適當(dāng)操作。

            3.2測(cè)量實(shí)例選擇實(shí)驗(yàn)室內(nèi)BJ-32標(biāo)準(zhǔn)矩形角錐喇叭天線,使用Agilent和Anritsu矢量網(wǎng)絡(luò)分析儀分別進(jìn)行測(cè)量,相關(guān)參數(shù)見(jiàn)表1.

            

           

            選取兩次測(cè)量所得數(shù)據(jù)文檔中3.26 GHz頻率點(diǎn)的數(shù)據(jù)做出天線歸一化方向圖,如圖8和圖9所示。

            

           

            圖8 Agilent測(cè)量結(jié)果

            

           

            圖9 Anritsu測(cè)量結(jié)果

            4結(jié)論

            本系統(tǒng)以計(jì)算機(jī)為核心,充分利用了實(shí)驗(yàn)室先進(jìn)儀器的計(jì)算機(jī)通信接口,系統(tǒng)軟件的用戶界面布局清晰、功能全面,減少了對(duì)儀器的直接操作,對(duì)貴重儀器起到了保護(hù)作用從而降低了維護(hù)費(fèi)用。系統(tǒng)中使用矢量網(wǎng)絡(luò)分析儀使得系統(tǒng)具有一次性掃描測(cè)量便可獲得多頻點(diǎn)天線數(shù)據(jù)的能力。編程中采用通用標(biāo)準(zhǔn)指令,增強(qiáng)了軟件的可移植性和可擴(kuò)展性。多線程技術(shù)的使用,實(shí)現(xiàn)了多任務(wù)的并行工作,滿足了系統(tǒng)實(shí)時(shí)性要求,使用戶可以通過(guò)用戶界面直觀了解到系統(tǒng)運(yùn)行狀態(tài)及測(cè)量進(jìn)度,同時(shí)還可將天線測(cè)量數(shù)據(jù)即時(shí)讀取并保存,以便進(jìn)一步處理和研究。



          評(píng)論


          相關(guān)推薦

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

          關(guān)閉