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