黃 勇,陳長鵬,何長英
(武漢理工大學理學院,湖北 武漢 430070)
示波器是電子測量領域最常用的儀器之一,通過它不但可以清晰地觀察信號波形,還可以定量測量信號的周期、振幅和兩信號的相位差等參數[1]。LabVIEW是美國國家儀器公司推出的虛擬儀器軟件開發(fā)平臺,與傳統(tǒng)的模擬示波器相比,其軟件系統(tǒng)仿真硬件功能可以大大節(jié)約儀器成本、節(jié)省開發(fā)與維護費用。有許多對虛擬示波器的設計與開發(fā)進行研究的文獻,如文獻[2-4]介紹了如何開發(fā)自定義儀器功能的虛擬示波器,論述了虛擬儀器技術在測量領域中的應用。研究虛擬仿真技術在實驗教學方面的應用也有重要的意義,針對特定型號示波器用LabVIEW開發(fā)相應的仿真軟件,以滿足教學演示和學生預習需要,而這方面的研究還很缺乏。因此,筆者以LabVIEW 8.6為平臺設計開發(fā)了適合本校實驗課使用的示波器仿真軟件系統(tǒng)。
前面板是用戶與系統(tǒng)交互的窗口,用戶通過它輸入和獲取信息。為了設計與真實XJ4328示波器一致的操作面板,筆者設計了一個自定義控件[5]放在前面板上,將XJ4328示波器面板圖片作為自定義控件的文本部分,旋鈕和按鍵控件放在圖片中的相應位置,將設計的旋鈕顏色設置為透明。波形圖與XY圖重疊放在示波器圖片的顯示屏位置,X軸、Y軸標尺與圖片的顯示屏大小一致,網格線設置為透明。
參照示波器使用實驗教學內容[6],在示波器CH1與CH2通道信號接入處設置了仿真信號:方波S1、三角波S2、正弦波S3和正弦波S4(S4與 S3有一定的相位差,頻率相同),供學生觀察與測量。在CH2通道還設置了一個外部標準信號源,該信號源的參數調節(jié)面板結合在教學中使用的GFG-8016函數發(fā)生器圖像設計,并作為標準信號源與CH1通道的正弦波完成各種形狀的李薩育圖形測量頻率,設計的運行界面如圖1所示。
圖1 XJ4328示波器仿真軟件運行界面
程序框圖是軟件的核心,它以圖形化的方法表示程序源代碼,類似于真實儀器中用來實現儀器功能的零部件。示波器的功能繁多,設計中將具有一定功能的程序模塊定義為子VI供其他VI調用,從而減少程序框圖的節(jié)點與連線,提高代碼的可讀性和可維護性。
程序采用while循環(huán)結構,示波器的電源開關狀態(tài)作為循環(huán)的控制條件,程序的總體結構[7]如圖2所示。
圖2 示波器仿真軟件總體結構
通過信號處理中的波形信號生成函數生成所需要的信號,CH1與CH2通道有參數固定的方波、三角波和正弦波可選,CH2通道還有一個標準信號源可選,標準信號源的參數在GFG-8016函數發(fā)生器面板圖像界面中調節(jié)。
根據模擬示波器顯示波形的原理,當掃描周期不為被測信號周期的整數倍關系時,顯示的波形不穩(wěn)定。因此示波器中有觸發(fā)掃描電路,根據觸發(fā)源與觸發(fā)電平的值控制掃描的起點,以保證每次掃描的起點都在信號周期的同一位置,從而使顯示波形穩(wěn)定[8]。在軟件設計中,可以通過設置觸發(fā)點來保證每次顯示時得到信號周期的同一位置,根據觸發(fā)電平的值找到觸發(fā)點,在觸發(fā)點后截取一段相同長度的波形顯示出來。該軟件中觸發(fā)源可以來自CH1或CH2通道信號,找觸發(fā)點就是根據輸入的信號,與觸發(fā)電平的數值進行比較后輸出產生觸發(fā)的數組的序號,用數組子集取出從序號開始的一段信號[9]。
XJ4328示波器掃描速率從0.5 μs/DIV~0.2 s/DIV,共分18擋,X軸共有10個分度格。將水平分度旋鈕的選擇數值作為case-switch的分支選擇條件,case“0~17”中,時間間隔、頻率和波形圖控件屬性節(jié)點的X標尺范圍屬性的設定值乘以或除以不同的數值,使Time/DIV控件的值不同,波形圖中顯示的完整波形的數目不同,用微調旋鈕對水平分度在兩擋之間進行連續(xù)調節(jié)。
示波器波形顯示屏的高度是固定的,若被測信號幅值較大,顯示圖形將超出屏幕,幅值太小,波形的細節(jié)就看不清楚,豎直分度調節(jié)的功能就是將幅值大的信號進行縮小,將幅值小的信號進行放大,以便于觀察與測量。XJ4328示波器兩通道靈敏度開關從10 mV/DIV~5 V/DIV共分9檔,當通道靈敏度開關處于不同的擋位時,將仿真信號的幅值放大或縮小一定倍數即可。
將豎直工作方式按鍵作為條件判斷,可以單獨顯示一個通道信號,可以同時顯示兩個通道信號,也可以顯示兩個通道信號的和。當一個按鍵按下時,其余4個按鍵應為抬起狀態(tài),將此4個按鍵賦布爾值False。
用數值改變波形圖控件屬性節(jié)點[10]的曲線顏色、線條寬度來模擬示波器的灰度、聚焦功能。
當TIME/X-Y鍵抬起時,屏幕顯示波形圖,按下時屏幕顯示李薩育圖形,利用波形圖和XY圖的可見屬性來控制前面板上顯示波形圖還是李薩育圖形[11]。
該軟件提供的仿真信號參數為:S1~S44個信號的頻率為1 002 Hz,振幅為1.0 V,S3與S4信號的相位差為40°。為便于比較,真實實驗中提供的S1~S44個信號的參數與仿真信號一樣,按照教學內容用筆者編寫的軟件進行實驗,并與真實示波器進行對比。
用CH1通道測量S1信號的參數,圖3為用仿真軟件測量的波形顯示,圖4為用真實示波器測量的波形顯示,兩種儀器測量得到S1信號的峰谷電壓差都為2.0 V,周期都為1.0 ms。
圖3 仿真軟件測量信號周期和峰谷電壓差
相位差的測量有雙波法和李薩育圖形法,圖5、圖6為用仿真軟件測量的圖形顯示,圖7為用示波器測量的圖形顯示。測量結果對比如表1所示,表1中l(wèi)為滯后距離,λ為波長,x0為李薩育圖形與X軸的交點,A為X方向的振幅。
圖4 示波器測量信號周期和峰谷電壓差
圖5 仿真軟件測相位差的雙波顯示
圖6 仿真軟件測相位差的李薩育圖形顯示
圖7 示波器測相位差的圖形顯示
表1 仿真軟件與示波器測量兩信號的相位差比較
將S3作為待測信號,仿真示波器的CH1通道選擇信號S3,CH2通道選擇標準信號源,調節(jié)標準信號源的頻率,使顯示屏上顯示各種頻率比下的李薩育圖形,圖1中顯示的是fx∶fy=1∶2的圖形,測量出S3信號的頻率為1 002 Hz,圖8為真實示波器的顯示結果,測得S3信號的頻率也為1 002 Hz。
圖8 示波器觀測李薩育圖形
通過比較,仿真軟件的操作界面與測量結果與真實示波器一致,仿真軟件完全滿足實驗要求。
論述了XJ4328示波器仿真軟件的設計與實現過程,用簡單的程序框圖模擬了復雜示波器操作面板上各旋鈕與按鍵的交互功能。該軟件已在實驗教學中演示使用,學生可以不受時間與空間的限制,就像在操作真實示波器一樣,進行課前示波器實驗的仿真操作和預習。
[1] 龍作友,王豐.大學物理實驗[M].武漢:湖北科學技術出版社,2003:69-77.
[2] 梁秋明,田夢君.基于LabVIEW的虛擬示波器的設計與實現[J].電子測量技術,2009,34(3):158 -161.
[3] 王莉,楊鵬.基于LabVIEW的虛擬示波器的設計與實現[J].實驗室研究與探索,2010,29(1):62 -64.
[4] 李翼,王小海.基于LabVIEW的虛擬示波器的設計及應用[J].江南大學學報:自然科學版,2006,5(3):290-292.
[5] 阮奇楨.我和LabVIEW[M].北京:北京航空航天大學出版社,2009:296-299.
[6] 龍作友,戴亞文,楊應平,等.大學物理實驗[M].武漢:武漢理工大學出版社,2006:45-54.
[7] 呂紅英,吳先球,劉朝輝.LabVIEW環(huán)境下基于聲卡的虛擬示波器軟件設計[J].計算機應用與軟件,2007,24(3):61 -64.
[8] 福建機電學校教材編寫組.電氣測量[M].北京:機械工業(yè)出版社,1979:160-162.
[9] 豈興明,周建興,矯津毅.LabVIEW 8.2入門與典型實例[M].北京:人民郵電出版社,2008:379-398.
[10] 黃松嶺,吳靜.虛擬儀器設計基礎教程[M].北京:清華大學出版社,2008:225-230.
[11] 夏澤中,蘇宏良,朱玉璟.電源監(jiān)控系統(tǒng)中的遠程采集終端設計[J].武漢理工大學學報:信息與管理工程版,2010,32(5):694-698.