電壓是電路中常用的電信號,通過電壓測量,利用基本公式可以導出其他的參數(shù)。因此,電壓測量是其他許多電參數(shù)和非電參數(shù)量的基礎。測量電壓相當普及的一種測量儀表就是電壓表,但常用的是模擬電壓表。模擬電壓表根據(jù)檢波方式的不同。分為峰值電壓表、均值電壓表和平均值電壓表,它們都各自做成獨立的儀表。這樣,使用模擬電壓表進行交流電壓測量時,必須根據(jù)測量要求選擇儀表。另外,多數(shù)電壓表的表頭是按正弦交流有效值刻度的,而測量非正弦波時,必須經(jīng)過換算才能得到正確的測量結果,從而給實際工作帶來不便。
采用虛擬電壓表,可將表征交流電壓特征的峰值、平均值和有效值集中顯示在一塊面板上,測量時可根據(jù)波形在面板上選擇儀表,用戶僅通過面板指示值就能對測量結果進行分析比較,大大簡化了測量步驟。
1 虛擬電壓表的設計思路
LabVIEW 8.2版本的工程技術比以往任何一個版本都豐富.它采用了中文界面,各個控件的功能一目了然。利用它全新的用戶界面對象和功能,能開發(fā)出專業(yè)化、可完全自定義的前面板。LabVIEW 8.2對數(shù)學、信號處理和分析也進行了重大的補充和完善,信號處理分析和數(shù)學具有更為全面和強大的庫,其中包括500多個函數(shù)。所以在LabVIEW 8.2版本下能夠更方便地實現(xiàn)虛擬電壓表的設計。
虛擬電壓表是基于計算機和標準總線技術的模塊化系統(tǒng),通常它由控制模塊、儀器模塊和軟件組成,由軟件編程來實現(xiàn)儀器的功能。在虛擬儀器中,計算機顯示器是惟一的交互界面,物理的開關、按鍵、旋鈕以及數(shù)碼管等顯示器件均由與實物外觀相似的圖形控件來代替,操作人員只要通過鼠標或鍵盤操作虛擬儀器面板上的旋鈕、開關、按鍵等設置各種參數(shù),就能根據(jù)自己的需要定義儀器的功能。在虛擬電壓表的設計中,考慮到儀器主要用于教學和實驗,使用對象是學生,因此將引言中提到的三種檢波方式的儀器合為一體,既簡化了面板操作,又便于直接對比。
該電壓表主要用于電路分析和模擬電子技術等實驗課的教學和測量儀器,能夠使學習者了解和掌握電壓的測量和電壓表對各種波形的不同響應。因此,虛擬電壓表應具備電源開關控制、波形選擇,以及顯示峰值、有效值和平均值三種結果,且輸入信號的大小可調(diào)節(jié)等功能。虛擬電壓表由硬件設備與接口、設備驅(qū)動軟件和虛擬儀器面板組成。其中,硬件設備與接口包括儀器接口設備和計算機,設備驅(qū)動軟件是直接控制各種硬件接口的驅(qū)動程序,虛擬儀器通過底層設備驅(qū)動軟件與真實的儀器系統(tǒng)進行通信,并以虛擬儀器面板的形式在計算機屏幕上顯示與真實儀器面板操作相對應的各種控件。在此,用軟件虛擬了一個信號發(fā)生器。該信號發(fā)生器可產(chǎn)生正弦波、方波和三角波,還可以輸入公式,產(chǎn)生任意波形。根據(jù)需要,可調(diào)節(jié)面板上的控件來改變信號的頻率和幅度等可調(diào)參數(shù),然后檢測電壓表的運行情況。因此,在LabVIEW圖形語言環(huán)境下設計的虛擬電壓表主要分為兩個部分:第一部分是虛擬電壓表前面板的設計;第二部分是虛擬電壓表流程圖的設汁。
2 前面板的設計
前面板模擬真實電壓表的前面板,用于設置輸入數(shù)值和觀察輸出量。由于虛擬面板直接面向用戶,是虛擬電壓表控制軟件的核心。設計這部分時,主要考慮界面美觀、操作簡潔,用戶能通過面板上的各種按鈕、開關等控件來控制虛擬電壓表進行測量工作。根據(jù)傳統(tǒng)電壓表面板控件的功能,利用LabVIEW中的控制模板,分別在設計面板上放入模擬實際電壓表控件的數(shù)據(jù)輸入控件、顯示器、數(shù)據(jù)輸出控件、開關、選擇器,顯示器用于顯示輸入的信號波形;數(shù)據(jù)輸入控件主要用于輸入被測信號的信號頻率、采樣頻率、采樣數(shù)、振幅和相位;數(shù)據(jù)輸出控件則用于輸出被測信號經(jīng)過處理后得到的峰值、平均值和有效值及標準頻率的有效顯示。打開LabVIEW前面板的編輯窗口,點擊鼠標右鍵,顯示控制模板,選擇圖形一波形圖,作為電壓表的顯示器。在顯示器模板上點擊鼠標右鍵,對其進行屬性設置,例如根據(jù)示波器的頻率與幅度值的變化,利用工具模板中的文字工具,對示波器橫(時間)、縱(幅度)坐標的刻度進行重新設置。用Graph控件設計的示波器是完全同步的,且波形穩(wěn)定。
選擇控件→數(shù)值→數(shù)值輸入控件/數(shù)值顯示控件,作為電壓表參數(shù)設置中輸入和測試結果的數(shù)據(jù)顯示。
選擇控件→下拉列表與枚舉→菜單下拉列表,放置對輸入波形選擇開關,在下拉列表中單擊鼠標右鍵,選擇“編輯項”對其進行編輯。
“電源開關”控件選擇經(jīng)典→經(jīng)典布爾→方形按鈕,當按下開關時,虛擬電壓表開始運行,同時電源開關的指示燈亮。同樣,當彈起開關時,虛擬電壓表停止運行。前面板如圖1所示。
3 流程圖的設計
每一個前面板都對應一個流程圖程序。前面板的設計完成后,可對流程圖程序進行設計。打開LabVIEW設計環(huán)境中的窗口→顯示程序框圖,進入流程圖編輯窗口,與前面板各控件對應的端口圖標自動出現(xiàn)在流程圖編輯窗口中。利用LabVIEW中的功能模塊,根據(jù)虛擬示波器前面板各控件的作用和聯(lián)系,虛擬示波器運作后數(shù)據(jù)流的控制,分別在流程圖設計面板中放置各個功能模塊,合理擺放后,在用連線工具依次連接,以實現(xiàn)虛擬示波器的功能。數(shù)據(jù)流的編輯主要是對端口圖標的連接。用連線工具進行連線時,如果端口閃爍,說明相連的數(shù)據(jù)類型匹配,否則不能連接。
3.1 虛擬信號發(fā)生器的實現(xiàn)
由于虛擬電壓表主要用于演示,所以為了方便,可直接利用LabVIEW軟件產(chǎn)生仿真信號。在該設計中,設置了正弦波、方波和三角波以及由公式確定的任意波形。在程序設計框圖中,使用一個Case(選擇)語句對四種波形進行選擇。Case語句中,每一個數(shù)字(0,1,2,3,4)都代表一種波形,與前面板控件中5種狀態(tài)相對應。至于Case語句的制作,只需將4個圖標中的一個,例如正弦波發(fā)生程序,用Case框起來,然后在上面的空白處寫上相應的數(shù)字,例如1;然后點擊箭頭,可以設置第二個圖標,如果要添加一個Case的話,可以點擊鼠標右鍵,直接添加,編輯相應的基本信號發(fā)生器VI中相應的節(jié)點即可。在添加公式波時,要把基本信號發(fā)生器VI換成公式波形VI,0代表默認狀態(tài),表示無任何波形輸入。本文給出了Case結構的一個分支,公式波形的流程圖如圖2所示。該子Ⅵ可使用指定時間函數(shù)的公式字符串生成一個函數(shù)波形,它要求公式的自變量必須是t,它所支持的運算符和常用的函數(shù)。
另外,在模擬狀態(tài)下,信號頻率以赫茲或者每秒周期數(shù)為單位。但是在數(shù)字系統(tǒng)中,通常使用數(shù)字頻率,它是信號頻率與采樣頻率的比值,被稱為標準頻率。所以,在框圖程序中,應當在信號頻率與采樣頻率之間加載一個除法器。
在波形發(fā)生程序按照規(guī)定的參數(shù)產(chǎn)生波形后,如果將波形直接輸入波形顯示控件,那將是錯誤的。因為波形顯示控件,并不像數(shù)據(jù)顯示控件那樣只需要一個或一組數(shù)據(jù),因此波形能否按規(guī)定顯示出來,取決于輸入的幾組不同且具有決定性的數(shù)據(jù),例如周期、相位等。在該設計中,將z軸起始坐標、周期、波形捆綁成一個數(shù)組,同時輸入到波形顯示控件中。
3.2 數(shù)據(jù)處理部分
數(shù)據(jù)處理部分的作用,就是將產(chǎn)生出的信號通過不同形式的檢波、計算,得出規(guī)定的不同的結果。在該設計中同時顯示交流有效值、峰值和平均值。對于一個純粹的交流電壓,正半周期信號與負半周期信號對稱,U的平均值等于零,所以一般不直接測量平均值。在設計時,按函數(shù)→數(shù)值→絕對值取交流電壓的絕對值,然后求平均值,取全波平均值。交流電壓中的最大值,即為峰值??梢酝ㄟ^比較數(shù)據(jù)求出最大值,這需要使用波形最大、最小子虛擬儀器來處理框圖。有效值顯示:在函數(shù)→信號處理→波形測量中選擇基本平均直流均方根。其框圖符號如圖3所示。
圖3中,DC value為測量的直流分量;RMS為value測量有效值;reset用于重啟過去記錄的時間信號、平均測量的參數(shù);averaging type是測量中的平均類型,在單個模塊VI中,可依據(jù)輸入記錄長度自動設置平均時間;Window是在DC/RMS計算之前,用于記錄時間的窗;erroe in是在該VI運行之前描述錯誤環(huán)境,默認值為no error。如果錯誤已經(jīng)發(fā)生,該VI在errorout端返回錯誤代碼,子VI在無錯誤時才正常運行。
3.3 開關部分
用一個while條件語句設計整個框圖程序,當模擬電壓開關為“1”時,虛擬電壓表工作,條件語句中的程序開始運行;當模擬開關為“0”即關時,條件語句中的程序停止運行,虛擬電壓表不工作。設計好的流程圖如圖4所示。
4 結 語
經(jīng)過實際使用,虛擬電壓表所有的控制鍵和功能正常,符合使用要求。需要指出的是,在設計該虛擬電壓表時,簽于教學使用的目的,僅從功能上考慮,并未對虛擬電壓表的技術指標進行深入研究。事實上,峰值是取樣值的最大值,而取樣點不可能取得太多,否則運行速度太慢,因此顯示的峰值與理論值是有差別的,在設計時應注意合理選擇參數(shù)。
在LabVIEW圖形化語言環(huán)境下設計的虛擬儀器簡單快捷,用戶完全可根據(jù)測試功能的需要,調(diào)用不同功能的軟件模塊,以組建自己的儀器。這對測量者,尤其是高等院校的實驗室是非常方便的??稍谕慌_計算機中,根據(jù)不同的教學層次,設計不同檔次的儀器為教學服務。如何針對不同的教學目的,分別對硬件驅(qū)動程序部分、虛擬面板部分、信號的后期處理部分進行部分或完整的設計,信號的后期處理程序可以設計成一個獨立的功能模塊,能夠?qū)Σ蓸有盘栠M行非實時的在現(xiàn)和離線分析,既滿足了學生的要求,又避免了設備的重復購置。