1由于現(xiàn)代電子技術(shù)實(shí)驗(yàn)及實(shí)驗(yàn)技術(shù)在電子技術(shù)教學(xué)、實(shí)驗(yàn)教學(xué)方面的重要作用,對拓寬學(xué)員的知識面和動手能力大有益處,開設(shè)這方面的內(nèi)容很有必要,但是,因?yàn)楝F(xiàn)代電子技術(shù)實(shí)驗(yàn)所需設(shè)備昂貴、占地面積大,甚至還有一定的安全風(fēng)險(xiǎn),儀器內(nèi)部結(jié)構(gòu)不能看清楚等原因,不能配備到實(shí)驗(yàn)室中,用計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)可以彌補(bǔ)上述不足。虛擬現(xiàn)代電子技術(shù)實(shí)驗(yàn)室,不僅可以用來預(yù)習(xí)、模擬訓(xùn)練,還可以直接用鼠標(biāo)來做實(shí)驗(yàn),在空間和時(shí)間上均得到了有效延伸,是傳統(tǒng)實(shí)驗(yàn)方式的有效補(bǔ)充和完善。
2設(shè)計(jì)原則及功能
2.1系統(tǒng)設(shè)計(jì)原則
1)系統(tǒng)的可靠性和安全性網(wǎng)絡(luò)設(shè)備采用高性能、高可靠性且技術(shù)先進(jìn)的設(shè)備,以保證系統(tǒng)的可靠性和穩(wěn)定性。
2)系統(tǒng)的先進(jìn)性和實(shí)用性系統(tǒng)可在局域網(wǎng)內(nèi)部使用,也支持遠(yuǎn)程客戶,并可作為網(wǎng)上的站點(diǎn),適合集中或分散教學(xué)。
3)系統(tǒng)的可擴(kuò)充性系統(tǒng)的設(shè)計(jì)充分考慮到將來學(xué)科的發(fā)展趨勢及新內(nèi)容的加入,預(yù)留接口。
4)系統(tǒng)的易操作性有較好的靈活性和友好性,方便用戶使用。
2.2系統(tǒng)功能
虛擬實(shí)驗(yàn)室的系統(tǒng)功能結(jié)構(gòu)包含四個(gè)模塊:
實(shí)驗(yàn)指南:指南包括信號分析與處理理論的學(xué)習(xí),實(shí)驗(yàn)預(yù)習(xí),實(shí)驗(yàn)演示三部分。學(xué)生在上課前能夠初步掌握實(shí)驗(yàn)要求、步驟、注意事項(xiàng)。實(shí)驗(yàn)演示是對實(shí)驗(yàn)的原理、背景知識、實(shí)驗(yàn)過程的動態(tài)演示,達(dá)到先學(xué)習(xí),再作實(shí)驗(yàn)的目的。
實(shí)驗(yàn)預(yù)約:預(yù)約部分是為實(shí)驗(yàn)室全面開放而服務(wù),適用于所有高校的實(shí)驗(yàn)教學(xué)。通過實(shí)驗(yàn)預(yù)約可以科學(xué)地調(diào)度實(shí)驗(yàn)室,合理地分配實(shí)驗(yàn)內(nèi)容,避免學(xué)員來實(shí)驗(yàn)室后沒有場地、沒有設(shè)備的情況發(fā)生。
學(xué)生園地:園地是以BBS的形式開展教師和學(xué)生、學(xué)生和學(xué)生之間的交流、討論,學(xué)生無論是在實(shí)驗(yàn)室,還是在其它地方,遇到問題便可在網(wǎng)上提交。
虛擬實(shí)驗(yàn):該功能模塊是系統(tǒng)的核心部分。傳統(tǒng)的基礎(chǔ)實(shí)驗(yàn)一般因?qū)嶒?yàn)室的空間、實(shí)驗(yàn)儀器的組數(shù)、實(shí)驗(yàn)指導(dǎo)教員數(shù)量等因素限制,F(xiàn)代電子技術(shù)虛擬實(shí)驗(yàn)室不受場地的限制,因而在不同終端上可同時(shí)進(jìn)行相同或不同的虛擬實(shí)驗(yàn),增加受訓(xùn)人員的實(shí)驗(yàn)有效時(shí)數(shù),提高了效率,是傳統(tǒng)實(shí)驗(yàn)的有效補(bǔ)充和完善。
3基于虛擬儀器技術(shù)的電子類虛擬實(shí)驗(yàn)室平臺的開發(fā)
3.1開發(fā)工具
本文選用LabWindows/CVI和VisualC6.0進(jìn)行儀器仿真和平臺界面的設(shè)計(jì)。
LabWindows/CVI是美國NI公司開發(fā)的一款基于C語言的半圖形化軟件開發(fā)平臺,即具有圖形化編程語言的開發(fā)效率高、修改靈活、界面設(shè)計(jì)快速的優(yōu)點(diǎn),又具備文本編程語言功能強(qiáng)大、可控性強(qiáng)、性能靈活的優(yōu)勢,適用于自動測試、自動控制、測試儀器通信、測試硬件控制和信號分析處理,尤其是大型、復(fù)雜的測試系統(tǒng)軟件開發(fā)。
VisualC6.0是由微軟公司推出的軟件開發(fā)工具。它擁有一個(gè)優(yōu)秀的集成開發(fā)環(huán)境,集編輯、編譯、連接、調(diào)試、向?qū)У榷囗?xiàng)功能于一體,貫穿了面向?qū)ο蟮某绦蛟O(shè)計(jì)思想,并且提供了目前已成為業(yè)界標(biāo)準(zhǔn)的微軟基本類庫MFC.
3.2虛擬儀器的開發(fā)
所謂虛擬儀器,就是在以計(jì)算機(jī)為核心的硬件平臺上,由用戶設(shè)計(jì)定義,具有虛擬面板,測試功能由測試軟件實(shí)現(xiàn)的一種計(jì)算機(jī)儀器系統(tǒng)。
根據(jù)實(shí)驗(yàn)所要實(shí)現(xiàn)的功能,本文所要開發(fā)的虛擬儀器包括信號發(fā)生器、示波器、頻譜分析儀、濾波器等幾個(gè)模塊,下面以信號發(fā)生器為例介紹一下虛擬儀器的開發(fā)過程。
[$page] 儀器面板:
面板中的主要控件屬性設(shè)置如所示。其中,NumericKnob是CVI中數(shù)字旋鈕類控件,Ring是循環(huán)控制類控件,Graph是圖形顯示窗類控件,CommandButton是命令按鈕類控件。
參數(shù)獲得及繪圖:在CVI用戶界面庫中提供了許多關(guān)于面板和控件的函數(shù),這些函數(shù)為用戶界面事件和工程中的程序文件提供了鏈接。其中,GetCtrlVal()函數(shù)實(shí)現(xiàn)從面板上獲得控件參數(shù)值的功能。函數(shù)原型為:intGetCtrlVal;其中,參數(shù)Panel_Handle是控件所在面板句柄,參數(shù)Control_ID是控件名稱,參數(shù)value是變量,放置返回的參數(shù),以地址形式表示。以下是程序設(shè)計(jì)中獲得調(diào)節(jié)參數(shù)的部分源代碼。
/