新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 基于GPIB總線的無線電頻譜監測系統的設計

        基于GPIB總線的無線電頻譜監測系統的設計

        作者: 時間:2009-11-04 來源:網絡 收藏
        隨著通信技術的發展,資源作為公共資源的一種,需要國家有關部門對其進行有效的分配和監控。界面友好、運行穩定、實時反應迅速的軟件是對資源進行有效配置的重要環節,也是國家和公眾信息安全保障的重要環節。本文以Rohde-Schwarz公司的ESVN40作為接收機來進行軟件的

        1 的工作原理及組成

        本文引用地址:http://www.104case.com/article/157795.htm

        1.1 工作原理

          以工控機、監測接收機及天線為主組建無線電監測軟件系統。監測接收機通過其上的天線接口來采集無線電信號,然后通過監測機自帶的通用接口(General-Purpose Interface Bus,),由安裝在工控機上的PCI插槽中的PCI-卡傳輸到工控機,最后由工控機實現對采集到的信號樣本的顯示、分析和保存等操作功能。

        1.2 系統的硬件組成

          無線電信號監測系統的結構框圖如圖1所示。該系統由工控機、PCI-卡、GPIB接口電纜、ESVN40測試接收機和帶有天線選擇的9k~3 000MHz的多模天線系統組成。

        1.3 ESVN40測試接收機的特點

          ESVN40作為功能較為強大的場強監測及掃描接收機,覆蓋了9k~2.75GHz的頻率范圍,可以完成以下的無線電監測任務:(1)單頻點的ITU(International Telecommunication Union)測量,包括電平、調制深度、頻率偏移、相位偏移及頻率補償量的測量。(2)單頻點的分析。(3)頻段的掃描。該方式支持多種掃描方式,以滿足用戶對掃描速度和返回數據的要求。在與主控機的通信方式上ESVN40采用GPIB方式與主控機進行控制信息和數據信息的交換,其控制較靈活。同時GPIB卡的接口方式使得主控機對遠程設備的控制變得較為容易。

        1.4 GPIB接口方式的優越性

          GPIB工業是NI公司的產品。它在軟件方面提供了完全的兼容性,為用戶軟件的升級節約了成本,提高了開發效率。GPIB系統的特點如下。

          (1)GPIB板卡軟件的成熟性。NI公司提供了具有良好兼容性能的API函數。NI提供的每一代驅動軟件都保持與現有的NI-488應用底層的兼容性。無論開發者是使用NI-488.2的函數,還是使用LabVIEW或LabWindows/CVI(C for Virtual Instruments)等應用開發環境,NI-488.2軟件結構都能提供一種穩定的GPIB控制。同時NI-488.2軟件也在不斷地更新,以取得最優的性能。

          (2)系統的可擴充性。如果要在該軟件的基礎上增加測向的功能,利用GPIB作為一種標準總線形式,則只要加入帶有GPIB接口的儀器,便可以將該系統擴展為一個功能較完備的監測系統。

        1.5 軟件系統的

          本系統軟件在結構上采用了模塊化的設計思想。同時為了提高系統的實時速度,充分利用了Windows軟件設計的多線程技術,采用Windows的消息環來完成多個線程之間的信息交流。系統應用了2個線程:(1)底層取數據線程,其流程如圖2所示。它用于實時地通過GPIB卡與ESVN40進行控制與數據的采集。(2)上層用戶界面線程,其流程如圖3所示。它用于用戶界面的顯示,響應用戶的測量任務,對實時數據進行顯示、分析和保存等操作。這樣,可以使2個線程并行,從而提高整個軟件系統的實時響應速度。取數據線程,采用VC++開發,這主要是考慮到C++語言易于實現對硬件的控制;而用戶界面處理的線程主要用Delphi來完成,主要是考慮到Delphi語言對界面的設計非常便利和靈活,可以大大提高開發效率。

          二個線程的工作機理:在用戶程序初始化的過程中,創建以上的2個線程,同時它們都處于等待的狀態。當用戶在程序界面開始各種測量任務時,由界面線程以消息的形式發給下層取數線程,各種任務號在消息參數中進行傳遞。下層取數線程在接到任務消息后,根據具體的任務,通過GPIB卡把任務翻譯為ESVN40的命令字符串傳送給接收機,同時對測量參數進行有針對性的設置,然后通過具體的命令啟動儀器來完成測量任務。當監測到儀器把相應的數據準備好,且狀態寄存器標識為有效后,通過GPIB卡讀入測量數據。讀數線程將讀到的數據進行解析,然后放入某個內存區中并以消息的形式通知用戶界面線程數據已經準備好,而數據塊的地址包含在消息參數中。用這種方式發送儀器控制命令和讀取儀器的測量結果,用戶界面線程負責完成相應的測量結果的顯示、分析及保存。2條線程的處理在時間上完全分開,從而儀器在實時信號分析的時候,幾乎是在連續地進行采樣,這樣大大提高了整個系統的實時響應性能。

        2軟件設計中擴展性問題的解決方案

          在該系統中,為了加強系統的功能,就要對系統進行擴展,但是儀器與控制計算機不一定都采用GPIB接口。為了提高底層取數線程的可擴展性,底層充分利用C++中類的思想進行設計,為此可以創建一個通信接口類ICommDevice作為通信接口。接口方法如下:

          (1)打開一個通信接口。

        (2)向該通信接口寫一個字符串。

          (3)從該通信接口讀一個字節。

          (4)從該通信接口讀一個字符串。

          (5)關閉已打開的通信接口。

          在系統中,GPIB卡作為該通信接口類的子類,其實現以上方法的關鍵代碼和具體方法的功能如下:

          ①在打開GPIB卡的方法中,主要完成對GPIB卡的初始化,同時獲得ESVN40和GPIB卡的控制句柄。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 峡江县| 大姚县| 乌鲁木齐县| 卢湾区| 阜南县| 石景山区| 正安县| 崇文区| 东城区| 江阴市| 大庆市| 临泉县| 五莲县| 樟树市| 固镇县| 镇赉县| 承德县| 永昌县| 于田县| 白河县| 乐安县| 灵丘县| 昌都县| 新泰市| 深泽县| 乐山市| 图们市| 子洲县| 永康市| 遵义市| 循化| 壤塘县| 廊坊市| 资中县| 和政县| 垣曲县| 安图县| 新建县| 松溪县| 宁海县| 博爱县|