現在的數字示波器都能提供令人印象深刻的采集、測量和分析工具套件給工程師和技術人員開展測試。即使這樣,也存在你想要批量設置和自動操作的情況,特別是對那些只需簡單或重復性測量的人來說。示波器可以讓你定制它們的操作,將儀器功能限制為一些有選擇的測試或使這些測試半自動化。下面就是利用定制用戶界面或測試自動化功能幫助實現這一目的的一些例子。
●你需要簡化示波器操作,以便允許沒有經驗的用戶開展重復性測試。
●你需要自動完成一系列測試,但不用將儀器連接到控制器或自動測試系統。
●你需要利用專門的程序或算法去分析或測量采集到的數據。
●采集到的波形需要得到比將數據發送給外部計算機更快速的處理。
簡化的設置和測試流程
不同的示波器制造商可能提供不同的定制途徑。我使用的Teledyne LeCroy HDO6054示波器使用了一種叫做CustomDSO的功能,它可以在顯示器上顯示用戶可配置的按鈕用于調用想要的操作,或者用定制的圖形用戶界面(GUI)代替默認用戶界面。另外一個示波器制造商則提供編程現有用戶界面的能力,通過編程可以刪除或限制選中的一些功能,從而簡化儀器操作。還有些制造商提供在一系列存儲的面板設置基礎上進行宏編程的能力。你可以編程組成目標測試要素的一系列設置。在某些情況下,你甚至可以編程動態操作。
所有數字示波器都有存儲和調用面板設置的功能。這個功能可以讓你設置好儀器后將設置參數保存下來供日后使用,或供經驗較少的用戶使用。這些存儲的設置可以根據需要隨時調用。基本模式的CustomDSO(在有些型號中是可選項)擴展了這個功能,它能讓你將多個設置文件鏈接成一個有序測試序列,按一下用戶定義的按鈕就調用一個測試。所調用的設置本身還可以包含對其它設置的調用,因此允許你創建多層次的測試。圖1顯示了基本模式CustomDSO應用的一個例子,它實現了SPI低速串行接口測試的設置自動化。
圖1:選擇了SPI測試的CustomDSO按鈕條例子。最多可以定義8個按鈕,每個按鈕調用一個特定的測試設置。
位于顯示器底部的8個按鈕每1個都是用CustomDSO創建的,每個按鈕都可以設置一個特定的測試。操作員提示信息可以用跟蹤標簽插入。在圖1中,只分配了5個按鈕。按下任一按鈕都可以調出額外的相似按鈕組,用于指導用戶完成整個測試。
圖2顯示了CustomDSO的設置菜單。在基本模式中,多達8個CustomDSO按鈕中的每個按鈕都與一個示波器設置文件相關聯。文件名字的根部分被分配為按鈕標簽。在這個例子中,按鈕3將調用名為“SPI Decode Table.lss”的設置文件,該按鈕的標簽就是SPI Decode Table。這個示波器中的面板設置文件實際上是定義儀器狀態的VB(Visual Basic)腳本。這些設置文件每個都包含額外的CustomDSO按鈕定義,因此多個設置文件可以鏈接起來,并在多種拓撲中被調用。
圖2:CustomDSO設置文件顯示設置文件“SPI Decode Table”關聯到了按鈕3。按下這個按鈕將執行對應的設置文件,將示波器設置為想要的設置值。它也能調出其它CustomDSO按鈕用于額外測試。
此外,面板設置文件可以包含使示波器操作自動化的動態操作。
注意,在圖2所示的CustomDSO描述框中CustomDSO有兩種操作模式(顯示在左邊)。第2種模式是“插入(plug-In)”,是一種功能更強大的模式,可以讓你在設置文件中增加自己的ActiveX控件。這些控件由VB、Visual C++或其它ActiveX兼容編程語言編寫的例程加以定義。有了ActiveX控件后,你就可以創建你自己的定制用戶界面。有大量交互式組件可用,包括按鈕、復選框、單選按鈕、列表框、圖片框和普通對話框。圖3顯示了使用兩個按壓按鈕的插入式GUI例子。第1個按鈕是Single Trigger,啟動單次采集。第2個按鈕將通道1(C1)中的波形發送到波形存儲器M1,再依次從M1傳送到M2、M2到M3以及M3到M4,高效地將以前存儲的波形移過已有的波形存儲器。這后一種功能如果是人工完成的話幾乎需要按12次按鈕。
圖3:用于創建用戶定義的圖形用戶界面的CustomDSO PlugIn例子。該界面中包含了按鈕、復選框、單選按鈕、列表框、圖片框和普通對話框。
VB腳本
在這種示波器中,設置文件是ASCII文本文件,其中包含一個完整的VB腳本“程序”,當該程序執行時,會將儀器恢復到以前記錄的狀態。實際上,每次保存面板時,儀器都會幫你編寫一個程序,當該程序執行時會使儀器返回到保存的狀態。
除了調用的設置狀態外,VB腳本還可以用來創建用標準遠程命令控制示波器的程序。你可以從內部運行的設置文件中實現示波器操作的“自動化”。
舉例來說,你可以寫一個VB腳本,將縮放波形的中心移動到由光標確定的位置。事實上,縮放波形將跟隨光標位置。清單1顯示了這個腳本。保存的腳本文件后綴與設置文件相同(.lss),并由調用面板設置或將它鏈接到一個CustomDSO按鈕加以運行。通過使用VB腳本再結合CustomDSO就可以編寫出極具交互性的測試。圖4顯示了用于運行VB腳本的CustomDSO。
清單1:縮放波形中心跟蹤光標的VB腳本(zoom_trac.lss)。
set app = CreateObject(“LeCroy.XStreamDSO”)
‘在顯示器上顯示一條消息
app.SystemControl.PersistentMessage = “Script running; turn off cursor to stop.”
’將觸發模式改為停止
app.Acquisition.TriggerMode = “Stopped”
‘將光標類型設為水平絕對值
app.Cursors.Type =“HorizAbs”
’打開光標
app.Cursors.View = True
‘將縮放1波形水平擴展系數設為10:1
app.Zoom.Z1.Zoom.HorZoom = 10
’打開縮放1波形
app.Zoom.Z1.View = True
‘循環讓縮放中心跟蹤光標水平位置,當光標關閉時退出
While app.Cursors.View = True
’強制立即觸發
‘將參數設為0,False,等待可觸發的事件
app.Acquisition.Acquire -1,True
’讀取光標水平位置
curtime=app.Cursors.XPos1
‘將Zoom Z1中心設為光標位置
app.Zoom.Z1.Zoom.HorCenter=curtime
Wend
’清除屏幕上的消息
app.SystemControl.PersistentMessage = “”
‘斷開自動鏈接
Set app = Nothing
圖4:使用CustomDSO運行VB腳本“zoom_Track.lss”。當腳本運行時,縮放波形的中心將跟蹤水平的光標絕對位置。從圖中可以看出,光標將永遠位于縮放波形Z1的中心。
面板設計文件、CustomDSO和基于VB腳本的設置文件為控制示波器測量流程提供了大量靈活性。通過讓沒有經驗的用戶遵循基于CustomDSO按鈕的腳本,它還提供了簡化示波器操作的簡單途徑。
定制處理和測量
定制還可以向示波器的工具集增加專用的處理功能,讓你在已有的示波器上開展專門的分析和測量。下面我們討論能夠應用于中檔臺式示波器的這些技術和其它定制技術。
所有主要制造商生產的中高檔示波器都有這個可選功能,即在示波器處理路徑中插入第三方程序的基礎上提供某類數學定制操作。所有示波器都支持MATLAB。本文提到的示波器支持MATLAB、VB、C/C++、Excel或Java。這個功能基于COM架構,可提供高層定制功能。用戶定義算法可以被創建并插入示波器的處理路徑中,返回結果可以當作處理過的數學函數或測量,并像任何其它示波器波形或測量一樣顯示出來。這些波形還可以被內部或用戶定義算法加以進一步處理。
示波器使用微軟自動控制命令用于遠程控制,而這些命令也可以嵌入用戶定義的算法實現“智能算法”,從而就像我們用VB腳本時已經見到的那樣,在計算過程中實現實時判決。
作為一個例子,考慮圖5中的示波器測量裝置。其中一個100MHz的正弦載波被一個10kHz的方波進行頻率調制。波形用一個簡單的MATLAB腳本進行解調,解調后的波形顯示為數學曲線F1。編輯框允許用戶不離開示波器環境就完成腳本的創建、編輯或加載,因此創建或修改腳本非常方便。
圖5:這個嵌入式MATLAB腳本用于解調調頻載波,并顯示調制波形。編輯框允許用戶不離開示波器環境就能完成腳本的創建或編輯。
調頻信號的模擬解調是用圖5中編輯框第一行所示的MATLAB“解調”功能實現的。這個功能將源波形、載波頻率、采樣頻率和解調類型分別作為參數。解調功能的輸出必須被濾波,代碼的下面兩行是用MATLAB實現的二階巴特沃斯低通濾波器。相同技術還可以用于創建定制測量以及數學函數,過程是相同的。
快速定制處理
這種示波器的定制選項中有個高級功能,就是對示波器的數據提供內存映射式訪問,主要用于基于用戶的波形或測量運算。這個功能被稱為快速多波端口(FMWP),支持將C/C++語言編寫的定制處理算法插入示波器處理流。FMWP通過使用共享的內存窗口最大限度地增加了從采集系統到你的處理部分的數據吞吐量。結果可以被送回示波器,或進行獨立的處理。這個功能可以支持多達4個波形輸入和輸出,以及最多8個參數輸出。
圖6所示例子是使用FMWP從示波器采集兩個波形,同時輸出兩個處理后的波形,并把一個參數送回示波器。輸出由一個通過內存映射數據訪問輸入波形的C++程序進行計算。F1輸出是輸入C1的簡單反相。F2是輸入C2的絕對值。參數P1是兩個輸入的相關系數。FMWP的最大優點是,它允許工程師創建他自己的專屬代碼,并以最大可能的處理速度將它應用于示波器數據。
圖6:P1中的FMWP參數設置以及輸出F1(輸入C1的反相)和F2(輸入C2的絕對值),它們都是用處理來自輸入信號的內存映射數據的C++程序創建的。
本文小結
由于示波器具有廣泛的工具集和應用靈活性,因此是電子設計和測試的關鍵儀器之一。定制功能可以將測試、專屬處理和內部自動化操作簡化為示波器的工具集,進一步擴展儀器的用途。
責任編輯:gt
評論
查看更多