王開(kāi)宇, 盧 誠(chéng), 姜艷紅, 程春雨, 曾文軍
(大連理工大學(xué) a.電工電子國(guó)家級(jí)實(shí)驗(yàn)教學(xué)示范中心、國(guó)家級(jí)虛擬仿真實(shí)驗(yàn)教學(xué)中心; b.電子信息與電氣工程學(xué)部,遼寧 大連 116024)
在工科院校的教學(xué)工作中,實(shí)驗(yàn)教學(xué)能很好調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性,培養(yǎng)學(xué)生的學(xué)習(xí)興趣,幫助學(xué)生更好理解與掌握書(shū)本上的理論知識(shí),因而,實(shí)踐環(huán)節(jié)在教學(xué)工作中意義重大[1-4]。在實(shí)際的實(shí)物教學(xué)實(shí)驗(yàn)中,由于實(shí)驗(yàn)器材、實(shí)驗(yàn)環(huán)境的限制,大多數(shù)工科院校的學(xué)生實(shí)驗(yàn)過(guò)程中都是按照老師設(shè)計(jì)好的詳細(xì)步驟操作實(shí)驗(yàn),極大限制了學(xué)生的探索實(shí)踐過(guò)程[5]。針對(duì)該問(wèn)題,本文提出將仿真電路與實(shí)物電路實(shí)驗(yàn)有機(jī)的結(jié)合同步操作。
本文將Multisim軟件與LabVIEW軟件結(jié)合起來(lái),并使用Web發(fā)布實(shí)現(xiàn)遠(yuǎn)程實(shí)驗(yàn)操作。運(yùn)用LabVIEW設(shè)計(jì)的直觀簡(jiǎn)潔操作界面,在LabVIEW中操作仿真軟件,實(shí)現(xiàn)電路仿真;運(yùn)用LabVIEW將NI Elviss II結(jié)合起來(lái),實(shí)物電路連接到NI Elviss II上,實(shí)現(xiàn)實(shí)物電路實(shí)驗(yàn)。實(shí)驗(yàn)中先可通過(guò)LabVIEW在Multisim做仿真實(shí)驗(yàn),然后通過(guò)LabVIEW在NI Elviss II上做實(shí)物實(shí)驗(yàn)。本文以一個(gè)數(shù)字電路實(shí)驗(yàn)為例來(lái)應(yīng)用實(shí)現(xiàn)該方法。該方法可較好解決目前電路教學(xué)實(shí)驗(yàn)中電路仿真實(shí)驗(yàn)與實(shí)物電路實(shí)驗(yàn)各自獨(dú)立,無(wú)法統(tǒng)一的問(wèn)題。
Multisim是一款著名的電子設(shè)計(jì)軟件,該仿真軟件的工作環(huán)境為Windows系統(tǒng)。該軟件沒(méi)有spice軟件晦澀難掌握[6-7]。作為一款優(yōu)秀的仿真軟件,其擁有簡(jiǎn)單易學(xué)的操作界面、豐富全面的元器件庫(kù),給電工電子專(zhuān)業(yè)相關(guān)的人員帶來(lái)大大便利。運(yùn)用Multisim優(yōu)秀的仿真功能于電子電路的探索實(shí)驗(yàn)環(huán)節(jié)中,不僅能節(jié)省大量的電氣元器件、實(shí)驗(yàn)器材,還為實(shí)驗(yàn)提供了安全保障[8-11]。
NI Elviss II是美國(guó)國(guó)家儀器公司開(kāi)發(fā)的一款模塊化實(shí)驗(yàn)教學(xué)平臺(tái)[12-14],該平臺(tái)結(jié)合多種實(shí)驗(yàn)儀器于一體,用戶(hù)在使用時(shí)不必像傳統(tǒng)實(shí)驗(yàn)時(shí)購(gòu)買(mǎi)大量的實(shí)驗(yàn)設(shè)備,如示波器、可變電源、波特儀、函數(shù)信號(hào)發(fā)生器、普通萬(wàn)用表等,節(jié)約的大量的財(cái)力。平臺(tái)采用USB即插即用的接口,用于平臺(tái)與計(jì)算機(jī)電腦的連接,使用方便快捷。同時(shí)具有多路模擬信號(hào)輸入輸出與數(shù)字信號(hào)輸入輸出。
LabVIEW是美國(guó)國(guó)家儀器公司開(kāi)發(fā)的G語(yǔ)言圖形化編程軟件,廣泛被應(yīng)用于學(xué)術(shù)領(lǐng)域的研究、工業(yè)領(lǐng)域的控制與上位機(jī)監(jiān)控界面的設(shè)計(jì)[15-16]。該款軟件內(nèi)置互聯(lián)網(wǎng)領(lǐng)域的通信協(xié)議多種庫(kù)函數(shù)。且LabVIEW給跨平臺(tái)設(shè)備提供了較好的一致性服務(wù),在軟件G語(yǔ)言代碼不變的情況下可以移植多種操作系統(tǒng)平臺(tái),也對(duì)嵌入式設(shè)備提供了較好支持。
在遠(yuǎn)程實(shí)物實(shí)驗(yàn)操作過(guò)程中,數(shù)據(jù)由用戶(hù)端到遠(yuǎn)端硬件,實(shí)驗(yàn)操作人員在用戶(hù)端界面用鼠標(biāo)操作控件以后,對(duì)應(yīng)信息經(jīng)過(guò)互聯(lián)網(wǎng)傳遞到遠(yuǎn)端服務(wù)器,服務(wù)器解析接收到的信息成相應(yīng)的指令,經(jīng)過(guò)USB發(fā)送給硬件ELVIS。ELVIS調(diào)用控制相關(guān)硬件,完成實(shí)驗(yàn)的控制。信號(hào)數(shù)據(jù)由遠(yuǎn)端硬件到用戶(hù)端,用戶(hù)實(shí)驗(yàn)過(guò)程中硬件端會(huì)產(chǎn)生輸出信號(hào)數(shù)據(jù)模擬量,模擬量先轉(zhuǎn)換為數(shù)字量經(jīng)USB上傳到服務(wù)器。
在遠(yuǎn)程仿真實(shí)驗(yàn)操作過(guò)程中,Multisim軟件中的仿真信號(hào)先經(jīng)過(guò)LabVIEW的Web服務(wù)器與互聯(lián)網(wǎng)傳送到遠(yuǎn)端的用戶(hù)操作的瀏覽器上。用戶(hù)根據(jù)顯示信息進(jìn)行實(shí)驗(yàn)操作,操作信號(hào)同樣經(jīng)過(guò)互聯(lián)網(wǎng)發(fā)送到實(shí)驗(yàn)端的Web服務(wù)器上,然后經(jīng)由LabVIEW來(lái)信號(hào)解析,最終變成對(duì)應(yīng)的控制操作指令,完成實(shí)驗(yàn)操作。
圖1 遠(yuǎn)程虛實(shí)結(jié)合實(shí)驗(yàn)實(shí)現(xiàn)框架圖
配置LabVIEW的Web服務(wù)器如圖2所示,在Web服務(wù)器中設(shè)置調(diào)試HTTP端口8000,SSL端口選用443,這里的HTTP端口為默認(rèn)設(shè)置的,用戶(hù)也可以根據(jù)自身電腦端口的使用情況選擇適當(dāng)?shù)亩丝凇E渲煤煤?,然后,發(fā)布Web到網(wǎng)頁(yè),選用內(nèi)嵌模式,就可以在遠(yuǎn)端用戶(hù)端訪(fǎng)問(wèn)服務(wù)器本機(jī)了,在沒(méi)有獨(dú)立IP的情況下此次的遠(yuǎn)程訪(fǎng)問(wèn)只局限于局域網(wǎng)內(nèi)。為此,本次的實(shí)驗(yàn)選用擁有獨(dú)立IP的電腦服務(wù)器,這樣就可以實(shí)現(xiàn)互聯(lián)網(wǎng)內(nèi)的遠(yuǎn)程實(shí)驗(yàn)了。
圖2 Web服務(wù)器配置
LabVIEW軟件與Multisim在進(jìn)行聯(lián)合仿真時(shí),需要將兩款軟件連接在一起,可以通過(guò)安裝與軟件相關(guān)聯(lián)的插進(jìn)來(lái)實(shí)現(xiàn)。本文采用LabVIEW 2011使用的插件為Co-Simulation(見(jiàn)圖3)。
圖3 兩款軟件接口插件
本文設(shè)計(jì)的數(shù)字電路是計(jì)數(shù)器實(shí)驗(yàn),運(yùn)用74LS160計(jì)數(shù)器芯片作為計(jì)數(shù)芯片,74LS32D或門(mén)作為控制輸入端口,與非門(mén)分別于計(jì)數(shù)器芯片的輸出端QA、QB、QC相連接?;蜷T(mén)的輸出端同時(shí)也作為四輸入與非門(mén)的輸出,或門(mén)輸出連接到計(jì)數(shù)器的清零引腳,即計(jì)數(shù)器采用復(fù)位清零的方法。
在或門(mén)的控制端輸入低電平,則輸入的低電平對(duì)計(jì)數(shù)器輸出引腳QD沒(méi)有影響,此時(shí)的計(jì)數(shù)器為15進(jìn)制,也就是計(jì)數(shù)為0~14;在或門(mén)的控制輸入端的引腳輸入為高電平的時(shí)候,無(wú)論計(jì)數(shù)器的QD輸出引腳輸出的是高電平還是低電平,則在或門(mén)輸出的都是高電平,此時(shí)的計(jì)數(shù)器為6進(jìn)制。
在Multisim中的仿真電路在與LabVIEW交互的時(shí)候,需要設(shè)置輸出端與輸入端。電路中的接口配置如圖4所示,圖中設(shè)置了一個(gè)輸入端IO1,作為輸入控制端。IO2、IO3、IO4、IO5、IO6均作為輸出端口,分別對(duì)應(yīng)計(jì)數(shù)器的QA、QB、QC、QD與計(jì)數(shù)器輸入的脈沖信號(hào)。在Multisim中配置的輸入接口,對(duì)應(yīng)于LabVIEW軟件中的輸出接口;在Mlutisim中配置的輸出接口,對(duì)應(yīng)于LabVIEW軟件中的輸入接口。
圖4 電路接口配置圖
如圖5所示,在前面安裝好Multisim軟件與LabVIEW軟件交互的相關(guān)組件后,就可以調(diào)用組件包里面的豐富的VI函數(shù)進(jìn)行編程,實(shí)現(xiàn)兩款軟件的信號(hào)交互。
圖5 G言語(yǔ)接口交互程序
在完成軟件接口代碼編寫(xiě)后,即可在前面板上進(jìn)行仿真實(shí)驗(yàn)操作。計(jì)數(shù)器的輸出高電平時(shí),對(duì)應(yīng)的數(shù)字信號(hào)為1,對(duì)應(yīng)的模擬信號(hào)為5 V(見(jiàn)圖6)。該仿真實(shí)驗(yàn)既可以在本地實(shí)驗(yàn)操作,也可以在外地實(shí)驗(yàn)操作。只需要使用Web發(fā)布功能將本地的LabVIEW代碼發(fā)布到Web服務(wù)器即可。
圖6 labVIEW操作界面圖
將實(shí)物實(shí)驗(yàn)電路元器件焊接到使用Altium Designer設(shè)計(jì)好的PCB板上,PCB板與LabVIEW接口設(shè)計(jì)成PCI接口。LabVIEW通過(guò)USB線(xiàn)與安裝有LabVIEW和Multisim的PC機(jī)通信。
如圖7所示,在操作界面中,設(shè)計(jì)了4輸入邏輯分析儀,分別用來(lái)測(cè)定輸出端Q0、Q1、Q2、Q3及輸入脈沖當(dāng)前的輸出值CP。如圖8所示,操作界面中,效果圖中的指示燈的在實(shí)際中呈現(xiàn)黑黃動(dòng)態(tài)交替變化。變化的頻率由計(jì)數(shù)器的輸入頻率決定。
圖7 PCB板設(shè)計(jì)圖
圖8 操作界面效果圖
用LabVIEW 設(shè)計(jì)的實(shí)驗(yàn)實(shí)物操作界面,圖8中最上面的選擇按鈕,可以實(shí)現(xiàn)仿真實(shí)驗(yàn)與實(shí)物實(shí)驗(yàn)的切換。同樣的在LabVIEW程序使用Web發(fā)布以后,實(shí)物實(shí)驗(yàn)同樣也可以在遠(yuǎn)程端進(jìn)行實(shí)驗(yàn)操作。
圖9中代碼依次包含了脈沖任務(wù)的產(chǎn)生、完成與任務(wù)清除,即對(duì)應(yīng)于DAQmx開(kāi)始任務(wù) (VI)、DAQmx任務(wù)完成 (VI)與DAQmx清除任務(wù) (VI)。該代碼產(chǎn)生的脈沖初始延遲,輸出信號(hào)在未生成脈沖前處于空閑狀態(tài)的時(shí)間。高電平時(shí)間,脈沖處于高電平(5 V)的時(shí)間。低電平時(shí)間,脈沖處于低電平(0 V)的時(shí)間。其中,任務(wù)中本設(shè)計(jì)設(shè)定高電平時(shí)間為300 ms,低電平時(shí)間為700 ms。代碼中的,stop停止按鈕,可用于終止脈沖的產(chǎn)生。
圖9 脈沖產(chǎn)生源碼
如圖10所示先將通過(guò)NI ELVISmx Digital Reader獲取輸出的邏輯值隊(duì)列,再通過(guò)索引數(shù)組(VI),從數(shù)組中獲取對(duì)應(yīng)元素值,并輸出對(duì)應(yīng)的邏輯值。接著,通過(guò)數(shù)值轉(zhuǎn)換,把邏輯值轉(zhuǎn)換為數(shù)值類(lèi)型。最后,進(jìn)制轉(zhuǎn)換為所需要的進(jìn)制數(shù)。
本文首先介紹了在LabVIEW軟件環(huán)境下實(shí)現(xiàn)遠(yuǎn)程實(shí)驗(yàn)操作的Web服務(wù)器配置的方法;然后,詳細(xì)介紹了如何將Multisim軟件中的仿真電路連接到LabVIEW中的方法,包含驅(qū)動(dòng)組件的安裝、電路接口配置與LabVIEW中G語(yǔ)言編程的實(shí)現(xiàn)交互的過(guò)程。最后,在安裝有實(shí)物電路實(shí)驗(yàn)的NI ELVISS II平臺(tái)上完成數(shù)字計(jì)數(shù)器實(shí)驗(yàn)操作。Web服務(wù)器提供的遠(yuǎn)程實(shí)驗(yàn)操作功能,可以讓學(xué)生在遠(yuǎn)程端完成實(shí)驗(yàn),同時(shí),仿真實(shí)驗(yàn)與實(shí)物實(shí)驗(yàn)相互結(jié)合的遠(yuǎn)程控制實(shí)驗(yàn)方式增加了時(shí)間分配的靈活性,打破了區(qū)域的限制性。
圖10 獲取輸出邏輯值源碼