王 蕾
(唐山學(xué)院 智能與信息工程學(xué)院,河北 唐山 063000)
基于LabVIEW和Multisim的虛擬電子技術(shù)實(shí)驗(yàn)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
王 蕾
(唐山學(xué)院 智能與信息工程學(xué)院,河北 唐山 063000)
利用LabVIEW和Multisim軟件,通過結(jié)點(diǎn)法和調(diào)用法設(shè)計(jì)了虛擬電子技術(shù)實(shí)驗(yàn)系統(tǒng)。該系統(tǒng)具有用戶登錄模塊和仿真模塊,實(shí)現(xiàn)了用戶身份認(rèn)證和遠(yuǎn)程仿真功能。經(jīng)測試,系統(tǒng)運(yùn)行穩(wěn)定,可用于電子技術(shù)實(shí)驗(yàn)的虛擬仿真實(shí)踐教學(xué)。
LabVIEW;Multisim;電子技術(shù);仿真
目前,一些高校的實(shí)驗(yàn)室的設(shè)備和規(guī)模難以滿足實(shí)驗(yàn)教學(xué)的要求,電工學(xué)及電子技術(shù)等課程的實(shí)驗(yàn)常規(guī)設(shè)備也存在老化或技術(shù)落后等問題,而且依賴傳統(tǒng)教學(xué)方式進(jìn)行的實(shí)驗(yàn)教學(xué)工作量大,教學(xué)效率低下。隨著計(jì)算機(jī)技術(shù)、信號處理技術(shù)和虛擬儀器技術(shù)的高速發(fā)展,虛擬電子仿真系統(tǒng)在實(shí)驗(yàn)教學(xué)中得到了廣泛應(yīng)用[1],能夠很好地解決上述問題。因此,本研究利用美國NI公司的虛擬儀器開發(fā)平臺——LabVIEW和Multisim軟件進(jìn)行了電子技術(shù)實(shí)驗(yàn)教學(xué)系統(tǒng)的開發(fā),設(shè)計(jì)了多個(gè)電路仿真實(shí)例,以用于電工學(xué)、電子技術(shù)和相關(guān)課程的實(shí)驗(yàn)教學(xué)。LabVIEW作為虛擬實(shí)驗(yàn)開發(fā)系統(tǒng)的代表,可以利用Internet進(jìn)行虛擬實(shí)驗(yàn)室的網(wǎng)絡(luò)發(fā)布,實(shí)現(xiàn)資源共享,不受時(shí)間、地點(diǎn)限制,滿足學(xué)生遠(yuǎn)程實(shí)驗(yàn)的需求。這種開放式的實(shí)踐系統(tǒng)有助于培養(yǎng)學(xué)生的工程思維方式,鍛煉它們的動手能力和創(chuàng)新能力[2]。
1.1 用戶登錄界面設(shè)計(jì)與實(shí)現(xiàn)
虛擬電子技術(shù)實(shí)驗(yàn)系統(tǒng)的開發(fā)主要用到LabVIEW提供的三個(gè)模板,它們分別是:工具模板、控制模板和功能模板[3]。系統(tǒng)登錄結(jié)構(gòu)層次圖如圖1所示。圖1中大的框架由一個(gè)while循環(huán)和一個(gè)事件結(jié)構(gòu)組成,即組建前面板上可能發(fā)生的各種事件。
用戶登錄系統(tǒng)采用LabSQL與Access數(shù)據(jù)庫進(jìn)行鏈接,LabSQL支持Windows操作系統(tǒng)中任何基于OBDC的數(shù)據(jù)庫,包括Access,SQL Server,Oracle,Pervasive,Sybase等。LabSQL利用Microsoft ADO對象和SQL語言來完成數(shù)據(jù)庫訪問,將復(fù)雜的底層ADO及SQL操作封裝成一系列的LabSQL VIs,具有簡單易用的特點(diǎn)。用戶登錄界面如圖2所示。
圖1 系統(tǒng)登錄結(jié)構(gòu)層次圖
圖2 用戶登錄系統(tǒng)界面
用戶登陸界面設(shè)計(jì)還包括用戶管理界面的設(shè)計(jì),即進(jìn)行增加用戶、刪除用戶和修改密碼等操作,但是在刪除用戶中不可以刪除管理員用戶。在密碼驗(yàn)證時(shí),當(dāng)錯(cuò)誤輸入三次密碼時(shí),系統(tǒng)將自動退出用戶登陸界面,用戶必須再次打開軟件才能繼續(xù)進(jìn)行驗(yàn)證。
當(dāng)用戶登錄時(shí),系統(tǒng)根據(jù)數(shù)據(jù)庫內(nèi)容判斷用戶名和用戶密碼是否正確和匹配,然后執(zhí)行相應(yīng)的程序,用戶權(quán)限有教師和學(xué)生兩種,教師可以修改權(quán)限。系統(tǒng)用一個(gè)子VI核對密碼,并顯示用戶權(quán)限和核對密碼是否正確,調(diào)用3個(gè)條件結(jié)構(gòu)和1個(gè)外部條件結(jié)構(gòu)執(zhí)行密碼輸入結(jié)果相應(yīng)的程序。條件假的分支的內(nèi)層條件結(jié)構(gòu)執(zhí)行不同錯(cuò)誤次數(shù)的相應(yīng)程序,條件真的內(nèi)層條件結(jié)構(gòu)用于判斷該用戶是否是管理員并執(zhí)行相應(yīng)的程序。該程序用到了局部變量和屬性節(jié)點(diǎn),使得程序?qū)崿F(xiàn)的功能變得強(qiáng)大,實(shí)現(xiàn)起來也非常簡單。用戶登錄系統(tǒng)界面后面板如圖3所示。
當(dāng)用戶信息輸入正確時(shí),便可以進(jìn)入仿真主界面,完成對多個(gè)電路的仿真。用戶仿真主界面如圖4所示。
圖3 用戶登錄系統(tǒng)界面后面板
圖4 用戶仿真主界面
1.2 虛擬實(shí)驗(yàn)的設(shè)計(jì)與實(shí)現(xiàn)
Multisim與LabVIEW兩款軟件搭配,應(yīng)用結(jié)點(diǎn)法和調(diào)用法分別實(shí)現(xiàn)系統(tǒng)設(shè)計(jì)。虛擬實(shí)驗(yàn)部分的設(shè)計(jì)主要步驟為:首先進(jìn)行Multisim下的軟件仿真,調(diào)試成功后進(jìn)行相應(yīng)的設(shè)置并保存;然后打開LabVIEW,按照實(shí)驗(yàn)要求及目的設(shè)置用戶前面板,做到與實(shí)驗(yàn)者的友好交互,方便實(shí)驗(yàn)者的使用和操作;最后將保存的Multisim文件導(dǎo)入到LabVIEW中,再進(jìn)行相應(yīng)操作即可實(shí)現(xiàn)實(shí)驗(yàn)室系統(tǒng)下的虛擬實(shí)驗(yàn)。
本系統(tǒng)設(shè)計(jì)了多個(gè)電路仿真實(shí)例,現(xiàn)以汽車尾燈控制電路系統(tǒng)為例進(jìn)行仿真設(shè)計(jì)說明。
1.2.1 汽車尾燈電路原理仿真設(shè)計(jì)
汽車尾燈電路設(shè)計(jì)要求實(shí)現(xiàn)左轉(zhuǎn)彎、右轉(zhuǎn)彎、停止等條件下尾燈的點(diǎn)亮與熄滅。汽車尾燈系統(tǒng)開關(guān)控制電路由2個(gè)開關(guān)控制,通過控制譯碼電路提供的信號來控制驅(qū)動電路。三進(jìn)制計(jì)數(shù)器電路由2個(gè)主從JK觸發(fā)器構(gòu)成,通過主從JK觸發(fā)器的特性構(gòu)成時(shí)序邏輯電路來實(shí)現(xiàn)三進(jìn)制計(jì)數(shù)。譯碼電路采用74LS138D譯碼器,使用三線八線譯碼器控制8個(gè)端口的輸出,而本實(shí)例只需使用6個(gè)端口,其余2個(gè)端口閑置,通過三進(jìn)制計(jì)數(shù)器和開關(guān)控制電路來控制譯碼器6個(gè)端口的邏輯狀態(tài)。驅(qū)動電路采用常用的LED管,呈共陽極形式,LED管的正極接+5 V電壓,負(fù)極通過驅(qū)動電路來控制LED的亮滅。
端口將在LabVIEW中以子VI的端口承接,接收和輸出double類型的數(shù)據(jù)流。其端口設(shè)置如圖5所示。
圖5 汽車尾燈的端口設(shè)置
將端口的屬性設(shè)置為對應(yīng)的輸入(input)和輸出(output),IO7和IO8為輸入量端口,分別為左轉(zhuǎn)、右轉(zhuǎn)的控件。其中IO1為左尾燈1,IO2為左尾燈2,IO3為左尾燈3,IO4為右尾燈1,IO5為右尾燈2,IO6為右尾燈3。
在對汽車尾燈原理仿真設(shè)計(jì)的基礎(chǔ)上,分別使用結(jié)點(diǎn)法和調(diào)用法實(shí)現(xiàn)LabVIEW與Multisim軟件的握手連接[4-5]。
1.2.2 利用結(jié)點(diǎn)法實(shí)現(xiàn)電路設(shè)計(jì)
LabVIEW與Multisim軟件建立連接的步驟如下:在Multisim環(huán)境下標(biāo)記并設(shè)置各實(shí)驗(yàn)的輸入/輸出端口;將Multisim文件保存在固定的文件夾下;打開LabVIEW前面板,并按照要求設(shè)計(jì)模塊放置位置,同時(shí)在功能模塊中調(diào)用與Multisim模塊相連接的控件進(jìn)行LabVIEW仿真[6]。汽車尾燈后面板的設(shè)置過程主體是按照以上步驟將LabVIEW各個(gè)控件和調(diào)用的Multisim仿真形成的子VI連接起來,最終在LabVIEW中實(shí)現(xiàn)系統(tǒng)控制,這樣便可以在運(yùn)行LabVIEW時(shí)進(jìn)行Multisim調(diào)用和運(yùn)行。結(jié)點(diǎn)法實(shí)現(xiàn)的汽車尾燈后面板如圖6所示。
圖6 結(jié)點(diǎn)法實(shí)現(xiàn)的汽車尾燈后面板
圖7為結(jié)點(diǎn)法實(shí)現(xiàn)的汽車尾燈右轉(zhuǎn)前界面。圖中汽車左尾燈示波器無波形顯示,右尾燈示波器有脈沖波形顯示,表明按下汽車右轉(zhuǎn)按鈕即汽車右轉(zhuǎn)時(shí)右尾燈閃爍,左尾燈不亮。
圖7 結(jié)點(diǎn)法實(shí)現(xiàn)的汽車尾燈右轉(zhuǎn)前界面
結(jié)點(diǎn)法實(shí)現(xiàn)的用戶界面具有良好的交互性,用戶操作簡便,仿真結(jié)果顯示清晰。
1.2.3 利用調(diào)用法實(shí)現(xiàn)電路設(shè)計(jì)
調(diào)用法的實(shí)質(zhì)是在LabVIEW中直接打開Multisim,然后在Multisim中進(jìn)行電路的仿真。具體步驟如下:首先,點(diǎn)擊獲取電路圖,即在LabVIEW界面上獲取Multisim電路圖。此功能是利用賦值選項(xiàng)卡實(shí)現(xiàn)的:在后面板中利用Multisim Circuit Name打開文件,獲取Multisim中的電路圖,并把電路圖轉(zhuǎn)換為二維圖片顯示到LabVIEW前面板中。然后,打開仿真界面,通過cmd/x/c/start文件,找到自定義路徑。最后,在Multisim中完成仿真。若想回到結(jié)點(diǎn)法仿真界面,點(diǎn)擊“返回仿真”即可,頁面將自動跳轉(zhuǎn)到LabVIEW仿真界面中。使用調(diào)用法實(shí)現(xiàn)的汽車尾燈后面板圖和前界面圖如圖8,圖9所示。
圖8 調(diào)用法實(shí)現(xiàn)的汽車尾燈后面板圖
圖9 調(diào)用法實(shí)現(xiàn)的汽車尾燈前界面
調(diào)用法實(shí)現(xiàn)的用戶界面利于觀察電路設(shè)計(jì)原理,便于用戶進(jìn)入仿真界面調(diào)用實(shí)驗(yàn)儀器進(jìn)行仿真。
在虛擬實(shí)驗(yàn)系統(tǒng)中每個(gè)實(shí)驗(yàn)案例都作為一個(gè)子VI被調(diào)用。從功能模板中拖出while循環(huán)并置于原循環(huán)之外,while循環(huán)為沒有循環(huán)次數(shù)限制的循環(huán)。將引用句柄與屬性節(jié)點(diǎn)進(jìn)行連接,當(dāng)執(zhí)行此VI時(shí)便由引用句柄將地址指針指向此VI保存的地址,從而實(shí)現(xiàn)子VI的調(diào)用。LabVIEW軟件自帶檢錯(cuò)功能,當(dāng)有非法的語法錯(cuò)誤時(shí),會做出錯(cuò)誤提示。設(shè)計(jì)用戶可以通過數(shù)據(jù)流模式圖觀察信號傳遞路徑。汽車尾燈LabVIEW仿真的數(shù)據(jù)流模式圖如圖10所示。
圖10中的鍵1和鍵2為信號輸入端,通過關(guān)系函數(shù)將高電平(5.00)和低電平(0.00)輸入給Multisim仿真,仿真后輸出不同的數(shù)值,再通過關(guān)系函數(shù),將數(shù)據(jù)類型轉(zhuǎn)換為布爾量,驅(qū)動尾燈LED模塊顯示。當(dāng)布爾量為T時(shí),前面板汽車尾燈點(diǎn)亮;當(dāng)布爾量為F時(shí),前面板汽車尾燈熄滅。
圖10 汽車尾燈數(shù)據(jù)流模式圖
基于LabVIEW和Multisim軟件,利用結(jié)點(diǎn)法和調(diào)用法設(shè)計(jì)的虛擬電子技術(shù)實(shí)驗(yàn)系統(tǒng),充分利用了LabVIEW圖形化編程的特點(diǎn)和其強(qiáng)大的分析處理優(yōu)勢,并鏈接Multisim仿真軟件豐富的電子器件庫,實(shí)現(xiàn)了電子技術(shù)實(shí)驗(yàn)虛擬仿真功能。經(jīng)測試,系統(tǒng)運(yùn)行穩(wěn)定,用戶界面友好,便于操作,適于電工學(xué)、電子技術(shù)和相關(guān)課程的實(shí)驗(yàn)教學(xué)。
[1] 梅加化.基于LabVIEW的虛擬實(shí)驗(yàn)教學(xué)系統(tǒng)的研究[D].合肥:合肥工業(yè)大學(xué),2012.
[2] 虛擬仿真技術(shù)在電子技術(shù)課程教學(xué)中的應(yīng)用研究[D].長沙:湖南師范大學(xué),2012.
[3] 倫志新.基于LabVIEW和Multisim的病床呼叫器的設(shè)計(jì)與實(shí)現(xiàn)[J].唐山學(xué)院學(xué)報(bào),2013,26(5):71-72.
[4] 姚旭棟.基于虛擬儀器的航電系統(tǒng)仿真平臺設(shè)計(jì)與實(shí)現(xiàn)LabVIEW[D].上海:上海交通大學(xué),2012.
[5] 段國艷.電子技術(shù)虛擬實(shí)驗(yàn)系統(tǒng)研究與開發(fā)[D].成都:西南交通大學(xué),2013.
[6] 王蕾.LabVIEW仿真軟件在電工學(xué)教學(xué)中的應(yīng)用[J].中國現(xiàn)代教育裝備,2013(13):10-12.
(責(zé)任編校:李秀榮)
Design and Construction of Virtual Electronic Technology Experiment System Based on LabVIEW and Multisim
WANG Lei
(School of Intelligence and Information Engineering,Tangshan College, Tangshan 063000, China)
With the assistance of LabVIEW and Multisim, the author of this paper has designed a virtual electronic experiment system by the node analysis and invocation method, which has the user login module and simulation module and is capable of authentication and remote simulation. Testing of the system shows that it runs stably and can be applied to the practice teaching of virtual simulation of electronic experiments.
LabVIEW; Multisim; electronics; simulation
TP391.9;G642.423
A
1672-349X(2015)06-0039-03
10.16160/j.cnki.tsxyxb.2015.06.015