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