摘要:隨著計算機技術和數據采集技求的發展,使用遠程控制技術對數字存儲示波器的輸出信號進行采集分析成為當前的測試技術熱點。本文以TDS1000C-SC數字存儲示波器為對象,選用GPIB-LAN適配器AD007,構成遠程控制系統,以某測試系統為例,使用帶有GPIB接口的數字存儲示波器測量AGC響應時間、信號的失真度,完成對測試信號的遠程控制自動測量,并給出了相應的數據處理方法和部分程序設計代碼。經過實驗,基本上實現了對示波器的遠程控制和數據傳輸。
關鍵詞:數字存儲示波器;遠程控制;參數測量
1 引言
數字存儲示波器(Digital Storage oscilloscopes-DSO)以其優越的性能和完備的功能,得到廣泛應用。同模擬示波器相比,它可以根據不同測量對象設置不同的預觸發功能;對信號的參數進行全自動測量,提供20多個參數;內置大量的標準分析工具,提供包括游標、測量、數學公式編輯器、串行數據通信模板測試以及頻譜分析等廣泛的分析功能;支持應用程序開發環境(包括Visual BASIC,C,C++,Matlab,Lab VIEW和Lad Windows/CVI);高帶寬、高取樣率和深度存儲為數據采集應用程序提供了理想的解決方案[1]。在很多科學實驗和工程項目中,出于安全考慮,不允許操作人員在現場,或者需要利用現場示波器取得的信號參數進行實時分析和處理,以便指導下一步的實驗,這就需要把現場示波器與控制室的中央處理機相連接,實現對現場信號的遠程控制實時采集和處理。本文結合某實際信息參數測量,闡述利用Visual C++語言實現對數字存儲示波器遠程控制的方法。
2 數字存儲示波器的原理和特點
所謂數字存儲就是在示波器中以數字編碼的形式來貯存信號。目前示波器已經由通用示波器發展到取樣示波器、記憶示波器、數字存儲示波器、邏輯示波器、智能化示波器等近十大系列,幾百個品種,其中,性能較好的示波器應屬數字存儲示波器。
2.1 數字存儲示波器的基本原理
數字存儲示波器基于取樣原理,利用A/D轉換技術和數字存儲技術,被測模擬信號變為數字信號,然后存人隨機存儲的RAM中,需要顯示時,將RAM中存儲的內容調出,通過相應的D/A數模轉換器再恢復為模擬信號顯示在示波管的CRT上。它首先對模擬信號進行高速采樣獲得相應的數字數據并存儲,存儲器中儲存的數據用來在示波器的屏幕上重建信號波形;然后它利用數字信號處理技術對采樣得到的數字信號進行相關處理與運算,從而獲得所需要的各種信號參數;最后,它根據得到的信號參數繪制信號波形,并可以對被測信號進行實時的、瞬態的分析,以方便用戶了解信號質量,快速準確地進行故障的診斷。圖1為數字存儲示波器的原理結構圖。
在數字存儲示波器中,把輸入的被測模擬信號先選至A/D變換器進行取樣、量化和編碼,成為數字“1”和“0”碼。存儲到RAM中,這個過程稱為存儲器的“寫過程”,然后再將這些“1”和“0”從RAM中依次取出,順序排列起來,經D/A轉換使其包絡重現輸入模擬信號,這就是“讀過程”。在數字存儲示波器中,采用實時取樣方式,即可觀測單次信號,也可以觀察到重復信號;采用順序取樣或隨機取樣方式的只能觀測到重復信號。
在這種示波器中信號處理功能和信號顯示功能是分不開的。它的性能完全取決于進行信號處理的A/D,D/A變換器和半導體存儲的性能。數字存儲示波器不僅可以觀測周期重復信號,而且也能夠觀測非周期的單次的或隨機的信號。這是因為數字存儲示波器采用的是實時取樣,即每隔一個時鐘周期取樣一次,所以可以觀測單次信號,而模擬示波器只能滿意地觀測周期性重復信號,而對變化很快的非重復信號,則無法記錄。與模擬示波器相比較,數字存儲示波器有自己獨有的特點。
2.2 數字存儲示波器的特點
相對其它類型的示波器,數字存儲示波器有它自身明顯的特點[2]。
(1)數字存儲示波器最大的優點就是具有先進的觸發功能,從而使示波器的應用更得心應手,利用先進的觸發功能,示波器就能夠比以前完成更多的工作。特別是數字存儲示波器具有預觸發能力,克服了普通示波器只能觀測觸發點以后的波形的缺點,有利于分析故障產生的原因。
(2)可觀測各種周期性、非周期性、單次以及超低頻信號。對單次脈沖及低頻重復信號測量非常方便,一旦捕捉到波形,就能清晰地進行動態分析及顯示。它最大的特點就是對低占空比的信號顯示清晰穩定,并可以長時間保持波形,而且在觀察緩慢信號時無閃爍現象,這主要是因為采用RAM存儲器,可以快速寫人,慢速讀出。
(3)數字存儲示波器具有的自動測量功能可以方便地對各種參數進行自動測量。還可以將前面板設置情況存入斷電不丟失的存儲器中,每次開機仍保留原來設置,簡化操作過程。
(4)具有存儲顯示、滾動顯示和自動標定等功能的多樣靈活的顯示方式。
(5)帶有微處理機的數字存儲示波器,可以編程,進行自動程控操作,同時對信號還可以進行信息處理,如平均迭加、峰值檢測、包絡檢測、頻譜分析等。也可以方便地通過GPIB接口將信號送到打印機或送到計算機,進行更復雜的數據運算、分析和處理,并構成自動測試系統。
3 遠程控制技術簡介
3.1 遠程控制技術定義
遠程控制是指在異地通過計算機網絡、異地撥號或雙方接人Internet等手段連接目標計算機,并通過本地計算機對遠程計算機進行管理或維護的行為。要進行遠程控制,首先主控電腦和被控電腦都必須處在網絡中,網絡可以是局域網、廣域網或Internet,但某些軟件也可使用直接連接電纜利用電腦COM或LPT口進行遠程控制。其次要保證雙方使用相同的通信協議,多數情況下遠程控制軟件使用的是TCP/IP協議互相通信,也有部分軟件可使用SPX、NetBIOS、UDP協議。本文以TDS1000C-SC數字存儲示波器為對象,選用GPIB-LAN適配器AD007,構成遠程控制系統。采用VC++6.0編程語言為軟件開發工具,在輔助軟件TekVISA和動態鏈接庫tktds6k-32.dll基礎上,通過網絡對示波器進行遠程控制,獲取相關參數的當前值,根據需要設置參數,對獲得的信號波形自動測量,取得相關數據,采集測量結果并存入數據庫。
3.2 遠程控制技術原理
遠程控制軟件通常由兩部分組成:一部分是客戶端(控制端)程序Client,另一部分是服務器端(受控端)程序Server。使用前需要在控制端運行客戶端程序,在受控端運行服務器程序。然后由控制端向受控端發出信號,建立一個特殊的遠程服務,再通過這個服務,使用各種遠程控制功能發送遠程控制命令,控制受控端電腦中的各種應用程序運行,這種遠程控制方式稱為基于遠程服務的遠程控制。
遠程控制一般支持以下幾種網絡方式:LAN、WAN、撥號方式、互聯網方式。此外,有的遠程控制軟件還支持通過串口、并口、紅外端口來對遠程機器進行控制。不過,這里說的遠程電腦,只能是有限距離范圍內的電腦[3]。
傳統的遠程控制軟件,一般使用NetBEUI、NetBIOS、IPX/SPX、TCP/IP等協議實現遠程控制。不過,隨著網絡技術的發展,目前很多遠程控制軟件提供通過WEB頁面,java技術來控制遠程電腦,這樣可以實現不同操作系統下的遠程控制。
3.3 遠程控制關鍵技術
控制端要實現對受控端的遠程控制,要解決幾個關鍵問題:一是必須將服務器代碼預先植入受控端;二是受控端必須以某各種方式自動運行該代碼;三是服務器程序運行后必須實現進程的隱藏,以逃避防火墻和殺毒軟件的監控。
4 數字存儲示波器遠程控制的實現
4.1 系統組成
本系統以TDS1000C-SC數字存儲示波器為例,選用GPIB-LAN適配器AD007作為示波器與網絡的接口設備,通過網絡與控制室的計算機相連接。具體的系統組成結構如圖2所示。
該測試系統主要由一臺計算機(含測試軟件)、一臺打印機,一個GPIB卡、2個GPIB電纜、一臺測量系統、一臺帶GPIB接口的數字存儲示波器、一個網絡接口和一個GPIB-LAN適配器AD007組成。主要可完成對被測系統的的AGC響應時間、正弦波的失真度、信納比、功耗等指標的測量。含測試軟件的計算機用來對輸出數據進行分析顯示,并可在打印機輸出。
GPIB(general purpose interface bus,通用儀器接口總線)是一個數字化24腳并行總線,采用扁型接口插座。GPIB使用8位并行、字節串行、異步通信方式,所有字節通過總線順序傳送。GPIB總線接口可以實現1對多的數據傳輸,最多可以連接14臺設備,實現各設備的直接連接,無需重新設計硬件。國內外各大儀器公司生產的測試儀器大都帶有GPIB接口,可在本地(手動)和遠程(程控)兩種方式下工作。基于GPIB總線組建測試系統容易,具有簡單方便、靈活適用、易于操作等特點。
AD007適配器是GP1B總線與10Base-T以太網的接口設備,具有以下特點:兼容GPIB(IEEE488.2)和10Base-T Ethernet(IEEE802.3);設置方便;采用網頁方式配置;適用于VB或VC編程的VISA(virtual instrument Software architecture)接口等。
4.2 硬件設計
根據數字存儲示波器的基本原理,本文提出如下的設計方案。方案的基本思路是先對被測波形進行A/D轉換,然后將轉換后的數字量進行存儲,取樣結束后,系統從RAM中讀取波形信息。波形的顯示主要是通過將數字量轉換成液晶顯示屏上的點的坐標來實現的。
該方案的最大特點是采用CPU+CPLD的系統結構,該結構能夠最大地發揮CPU芯片和CPLD器件的長處。特別是在實時信號處理系統中,底層的信號預處理算法處理的數據量大,對處理速度的要求很高,但運算結構相對比較簡單,適用于CPLD進行硬件實現,這樣能同時兼顧速度及靈活性。高層處理算法的特點是算法的控制結構比較復雜,適用于運算速度高、尋址方式靈活、通信機制強大的CPU芯片來實現。
系統電路按功能模塊可分為以下幾部分:前端信號調理電路部分、信號的采樣存儲及其控制部分、數據處理和波形顯示部分和通訊接口部分等。
4.3 開發環境
系統采用虛擬儀器軟件平臺Lab Windows/CVI作為軟件開發環境。CVI是測控領域優秀的軟件開發平臺,能夠滿足底層儀器驅動和上層應用程序兩個層次的要求,CVI具有豐富的控件,能夠設計出較好的人—機接口界面;另外,CVI采用文本編程方式,編程靈活,代碼優化。Labwind0ws/CVI還提供了GPIB/GPIB488.2函數庫,可以對GPIB總線、GPIB儀器進行控制[4]。
4.4 軟件設計
硬件電路初始化通過0號口地址的寫操作來完成。初始化內容包括D觸發器輸出端復位,控制脈沖和觸發脈沖復位,SINGLE、DI、REMOTE信號保持自由空閑狀態。此時,0號口地址上發出控制字0CH。
控制軟件流程圖如圖3所示.
為便于編程和硬件設置,我們選取微機內計算機未用的存貯器地址段。如設置DS=0D000H,偏移地址范圍為0~3FFH,根據公式
物理地址=段地址(左移四位)+偏移地址
很容易得到1號口地址上頁地址選擇的控制字為0DH一8H=5H。用類C語言描述其算法如下:
get_page(seg_ds,page_addr)/*計算1號口地址的控制字*/
{
if(seg_ds>=Ox8000&&seg_ds<=OxF000)
pape_addr=seg_ds/Ox1000-Ox8;
else
bell();/*表示段地址出錯報警*/
return
}
相應地,我們可以用下述程序段進行數據傳送,便于數據處理。
MOV DS,DSS6521內存映射段址(0D000H)
MOV SI.0
MOV ES,目標段址(任意設置)
MOV DI.0
MOV CX,400H,lkw映射內存
CLD
REP MOVSB
圖4為采用遠程控制后的數字存儲示波器測量某系統的信號后在顯示器上的輸出分析結果。
5 結論
隨著科學技術和生產的發展,對于電子測量提出了越來越多的要求,測試內容日趨復雜,測試工作量急劇增加,對測試設備在功能,性能,測試速度、測試準確度的要求也日益提高,高端數字存儲示波器的出現與不斷發展在這種潮流下應運而生。它與模擬示波器相比具有極強的優越性,且隨著科學技術的不斷進步,其制造成本及市場價格均不斷下降,因而發展前景十分看好。本文直接使用示波器的動態鏈接庫,利用VC++語言實現了示波器的遠程控制。利用該方法可以實時采集實驗數據,提取波形參數和示波器屏幕界面,存入數據庫,并實時對實驗數據進行分析處理。
參考文獻
[1]盧成武,種蘭祥,張曉博.基于GPIB接口的數字存儲示波器功能擴展[J].微計算機信息,2005,21(5):157.
[2]孫建鳳.數字存儲示波器的原理、特點及發展動態[J].宇航計測技術,1996(12):52-61.
[3]王艷萍.使用遠程控制技術有效管理醫院網絡[J].數字醫療,2010(06):54-55.
[4]張鳳均.Lab Windows/CVI開發入門和進階[M].北京:北京航空航天大學出版社,2001.