0 引言
實驗教育是現(xiàn)代教學(xué)不可或缺的一部分,是學(xué)生實踐技能提升的關(guān)鍵環(huán)節(jié),在工科類高等教育中扮演著尤其重要的角色。但由于設(shè)備老化速度快、故障率高、維護投入大、資金需求高等問題,傳統(tǒng)實驗室的局限性比較大。因此,有必要建立一個滿足學(xué)習(xí)和培訓(xùn)需要的、具有較高開放性和實用性的基于網(wǎng)絡(luò)的實驗室。網(wǎng)絡(luò)實驗室主要有兩種形式:一種是基于實物設(shè)備的網(wǎng)絡(luò)實驗室;另一種是虛擬仿真的網(wǎng)絡(luò)實驗室。由于基于實物設(shè)備的網(wǎng)絡(luò)實驗室資源有限,無法同時滿足所有學(xué)生的實驗請求,而一些EDA商業(yè)軟件(如Pspice和Multisim)既沒有針對課程實驗的具體場景,過高的操作基礎(chǔ)要求也帶來了很大的局限性。基于TCP/IP協(xié)議的雙CS結(jié)構(gòu)網(wǎng)絡(luò)實驗室,利用流式套接字技術(shù)和自定義TCP/IP協(xié)議,優(yōu)化了通訊流程。所介紹的是基于B/S架構(gòu)的虛擬實驗室,客戶端由Java Applet實現(xiàn),并通過Java類來傳輸用戶操作請求。提出基于Web技術(shù),在LabVIEW環(huán)境下利用Remote Panels技術(shù)和Run-Time Engine引擎實現(xiàn)遠程訪問及控制的虛擬實驗室解決方案。
浙江大學(xué)網(wǎng)絡(luò)實驗室開發(fā)的“電工電子學(xué)科在線虛擬實驗平臺”是國家科技支撐計劃重點項目“虛擬實驗教學(xué)環(huán)境關(guān)鍵技術(shù)研究與應(yīng)用”的子課題。虛擬實驗室采用Web瀏覽器方式構(gòu)建平臺,避免了多個操作系統(tǒng)間的兼容問題,利用Modelica進行元件的統(tǒng)計建模,并開放代碼以方便新實驗的增加和項目的擴展。 本研究著重討論利用虛擬網(wǎng)絡(luò)實驗界面的設(shè)計實現(xiàn)以及Modelica對元件的建模方法,并將實驗結(jié)果與EDA軟件仿真結(jié)果相對比,用以展示統(tǒng)一建模語言的優(yōu)勢和影響。
1 虛擬實驗平臺設(shè)計
虛擬實驗平臺的設(shè)計需要考慮通訊協(xié)議、模型建立、界面可視化等多方面因素。浙江大學(xué)虛擬實驗平臺利用統(tǒng)一建模語言Modelica對實驗所需元件進行建模,界面中的所有器件均可自由拖動連接,用戶可以方便地組建電路進行實驗,管理員也可以在后臺直接操作更改實驗。
1.1 結(jié)構(gòu)組成
虛擬實驗平臺的結(jié)構(gòu)由瀏覽器端、管理端和實驗端3部分組成,如圖1所示。
圖1 虛擬實驗平臺結(jié)構(gòu)示意圖
(1)瀏覽器端。客戶端采用瀏覽器方式,作為人機交互的界面,用戶在此進行實驗設(shè)計和操作。客戶端開發(fā)的基本結(jié)構(gòu)有兩種典型結(jié)構(gòu):客戶機/服務(wù)器(Client/Server)結(jié)構(gòu)和瀏覽器/服務(wù)器(Browser/Server)結(jié)構(gòu)。由于前者需要安裝客戶端桌面程序,通常會出現(xiàn)兼容性問題,并且操作復(fù)雜、數(shù)據(jù)傳輸速度慢。本研究采用Web瀏覽器方式,既避免了多個操作系統(tǒng)間的兼容問題,并且應(yīng)用簡單方便、穩(wěn)定性強。
(2)管理端。服務(wù)器是管理端的主要結(jié)構(gòu),負責實驗數(shù)據(jù)的轉(zhuǎn)發(fā)和用戶管理;平臺共有3個相應(yīng)的服務(wù)器:數(shù)據(jù)庫服務(wù)器、Web服務(wù)器以及計算服務(wù)器,各自獨立存儲管理端所用的全部數(shù)據(jù),保證實驗平臺的正常運行。
(3)實驗端。其功能是專注于仿真計算和結(jié)果數(shù)據(jù)的傳輸。平臺通過多個計算節(jié)點共同承擔虛擬仿真的結(jié)果計算工作,整個流程為:計算監(jiān)控模塊監(jiān)聽用戶請求,實驗調(diào)度模塊分配計算任務(wù),計算模塊完成仿真計算等過程后將結(jié)果反饋,同時關(guān)閉計算進程以釋放系統(tǒng)資源。
1.2 平臺可視化及用戶界面設(shè)計
在虛擬實驗前臺界面的設(shè)計中,開發(fā)者利用Flex Builder開發(fā)Flex插件應(yīng)用程序,使得其運行在用戶瀏覽器中的Flash Player中,用戶的任何操作都將通過Flex插件顯示于瀏覽器中。Flex插件提供可視化的操作環(huán)境,供用戶進行實驗操作;同時與數(shù)據(jù)交換層進行通信,完成實驗過程。
1.2.1 平臺可視化開發(fā)
在應(yīng)用程序開發(fā)中,開發(fā)環(huán)境和運行環(huán)境都和開發(fā)語言分不開,ActionScript是一種面向?qū)ο蟮拈_發(fā)語言,起初只能在Flash開發(fā)環(huán)境中開發(fā)和編譯,隨著技術(shù)的發(fā)展,能夠開發(fā)ActionScript的軟件逐漸增多。但是,無論ActionScript程序是在何種環(huán)境或工具下開發(fā)的,最終都會被編譯生成擴展名為.swf的文件,在Flash Player上運行。Flex Builder是用于構(gòu)建應(yīng)用程序的集成開發(fā)環(huán)境(Integrated Development Environment,IDE),是一個基于豐富的ActionScript語言的開發(fā)框架。Flex Builder集成了大量的可視化組件,如滾動條、復(fù)選框、列表框等。這些組件都由適當?shù)男袨闃?gòu)成,所有添加具備強大功能的交互界面元素只是一拖一放這樣簡單。因為所有的組件都由標準的圖形構(gòu)成,只需編輯組成組件外觀的圖形或者使用外觀樣式就可以改變組件外觀。
1.2.2 用戶界面設(shè)計
用戶操作平臺所包含的界面元素由MXML語言描述,主體界面元素包含3個組成部分:器件列表、實驗桌和實驗工具欄。每個Flex插件將覆蓋一門課程的虛擬場景操作平臺,左側(cè)器件列表羅列了當前實驗課程可供使用的元器件(使用XML統(tǒng)一描述列表內(nèi)容),右側(cè)實驗桌供用戶拖拽和連接元器件,上方工具欄供用戶對操作平臺進行簡單的配置。除了這3個主要界面元素以外,每個元器件都需要一個屬性面板供元器件屬性配置,測量儀器儀表類元器件還需要一個虛擬儀器面板供結(jié)果顯示。虛擬實驗平臺用戶登錄界面如圖2所示。
圖2 虛擬實驗平臺用戶登錄界面
2 Modelica統(tǒng)一建模
Modelica語言是日前被廣泛使用于不同領(lǐng)域建模的統(tǒng)一建模語言,它具有模型重用性高、建模語言簡單等特點。作為一種基于陳述式方程的建模語言,Modelica模型由描述不同領(lǐng)域子模型規(guī)律特性的一系列數(shù)學(xué)方程構(gòu)成,系統(tǒng)通過計算求解微分代數(shù)方程實現(xiàn)仿真運行,因此開發(fā)者可以任意開發(fā)具有特定屬性規(guī)律的相應(yīng)器件。
2.1 器件的建模
Modelica提供了一個常用的模型庫,內(nèi)容包括各個領(lǐng)域的器件模型,一些最基本的對象已經(jīng)預(yù)存到Modelica標準庫中,用戶町以直接調(diào)用,復(fù)雜對象則需要用戶自行構(gòu)建。虛擬網(wǎng)絡(luò)實驗平臺中所需的大部分元器件均來自于模型庫,模型庫中不存在的元件由開發(fā)者自行建模。
以數(shù)字電路譯碼器實驗為例,數(shù)字電路譯碼器實驗的設(shè)計實現(xiàn)的關(guān)鍵是對器件進行建模,澤碼器實驗主要依托74LS138譯碼器元件,其他元件包括電源、電壓表、示波器等,而Modelica模型庫中已有其他器件的模型,所以本研究在此將工作的重點投入到74LS138譯碼器建模上來。虛擬實驗室中非標準庫內(nèi)元件的建模通常有兩種途徑:①基于標準模型庫中的已有模型,即按照所需器件的性質(zhì)或邏輯,對已有模型進行相應(yīng)的連接,完成建模;②自主構(gòu)建,即按照所需器件的電路特性,完全通過建立描述方程來創(chuàng)造新的器件模型,不需要Modelica基本庫中的模型信息。由于74LS138譯碼器邏輯特性復(fù)雜,若采取上述第②種方法自主構(gòu)建,特性方程很難描述且過于繁瑣,因此本研究采用方法①。本研究利用標準庫中的“與非門”基本模型,按照譯碼器邏輯(如圖3所示),通過連接相應(yīng)的管腳,完成對譯碼器元件模型的組建。Modelica提供了非常強大的組件模型,因此通過Modelica語言的連接機制可以實現(xiàn)組件虛擬連接。但是連接必須基于相同類型的連接器connector,各種元件的連接器類都已經(jīng)定義完成。在建模中,connect語句用來連接各個部件,體現(xiàn)了模型組織的組件連接機制,組件之間的耦合關(guān)系(connect)需要在生成方程中體現(xiàn)。
圖3 74LS138譯碼器邏輯圖
2.2 實驗場景的搭建及可視化關(guān)聯(lián)
實驗場景的搭建利用上述Modelica基本器件,通過連接器,按照實驗要求連接而成,同時需要完成實驗場景模型中參數(shù)的初始化設(shè)置。除此之外,本研究還需要將譯碼器實驗添加到整個實驗平臺的實驗插件中,以確保元件及試驗場景可以正常的供用戶使用。
以數(shù)字譯碼器實驗為例,實驗內(nèi)容為驗證74LS138譯碼器元件的內(nèi)部邏輯.因此需要令控制端G1=1,G2A+G2B=0,使譯碼器處于工作狀態(tài),通過改變輸入端A、B、C的輸入信號組合,觀察輸出端Y0~Y7的信號,以此驗證澤碼器的邏輯。試驗場景的搭建需要首先定義控制端信號BT(k=true)、BF(k=false)和輸入端信號DT(k=true)、DF(k=false)。然后,本研究將BT與G1相連,BF與C1A和C1B相連,使譯碼器處于工作狀態(tài)。輸入端則可以通過不同組合來模擬不同的輸入,同時輸出端Y0~Y7分別接LED指示燈(Modelica標準庫內(nèi)基本模型),用以判斷電平的高低。
實驗?zāi)P徒⑼戤叄玀odelica模型僅僅是后臺計算節(jié)點所依托的模型,只有將其與前臺FLEX插件可視化元素之前通過數(shù)據(jù)交換層建立通信后才可完成整個實驗的可視化界面。當用戶在FLEX插件上進行操作時,實驗場景的數(shù)據(jù)包將會通過數(shù)據(jù)交換層以XML語言的格式被交換到實驗端,實驗端解析數(shù)據(jù)包并調(diào)用OpenModelica求解編譯器OMC將信息編譯為可執(zhí)行文件并存儲在本地。本研究運行可執(zhí)行文件進行計算仿真后將結(jié)果數(shù)據(jù)返回,并在Flex插件上顯示相應(yīng)可視化結(jié)果。因此本研究需要給器件建立相應(yīng)的實驗插件關(guān)聯(lián)才可以使其在實驗平臺中出現(xiàn),供用戶拖拽擺放。本研究首先將譯碼器的可視化圖片添加到平臺素材庫中,使用SVG以XML語言描述圖片的二維屬性,并將譯碼器元件名稱添加到描述器件列表的文件(后綴名為.as)中,編寫譯碼器的XML描述文件,定義各管腳的坐標,并與素材庫中元件的可視化圖片二維屬性相關(guān)聯(lián)。完成譯碼器元件的可視化工作后,譯碼器元件才會出現(xiàn)在實驗界面左側(cè)的器件列表中。
3 結(jié)果測試比較
下面以數(shù)字電路譯碼器實驗為例,利用EDA軟件Multisim對相同實驗場景進行仿真,記錄實驗結(jié)果。本研究將操作界面與結(jié)果反饋同虛擬網(wǎng)絡(luò)實驗平臺相比較,得出虛擬實驗平臺的優(yōu)勢及成果。
3.1 仿真軟件Multisim及測試結(jié)果
Multisim是美國國家儀器(NI)有限公司推出的基于Windows操作系統(tǒng)的商業(yè)仿真軟件,憑借對SPICE復(fù)雜內(nèi)容的高度提煉,Multisim已經(jīng)廣泛用于電路的仿真和分析,由于對用戶的SPICE技術(shù)要求不高,相較于其他PDA軟件,Multisim更適合電子電路的教學(xué)。Multisim軟件中提供了可供選擇、拖拽的可視化模型庫,幾乎涵蓋了大部分電路設(shè)計所需的元器件。本研究利用模型庫內(nèi)元件搭建譯碼器實驗場景,令G1=1,G2A+G2B=O,使譯碼器處于工作狀態(tài)。以輸入端A=B=C=1為例,得到輸出端結(jié)果Y0=Y1=Y2=Y3=Y4=Y5=Y6=1,Y7=0,Multisim中譯碼器實驗場景及輸出結(jié)果如圖4所示。
圖4 Multisim譯碼器實驗場景及輸出結(jié)果
3.2 操作及結(jié)果比較
浙江大學(xué)虛擬實驗平臺為用戶提供了基于Web網(wǎng)頁形式的開放實驗室,用戶無需下載客戶端,登錄網(wǎng)頁即可進行實驗。用戶通過從左側(cè)器件欄中拖拽元件,完成電路連接后,點擊“運行實驗”即可進行仿真。以譯碼器實驗中輸入信號A=B=C=1為例,實驗開始,數(shù)據(jù)返回。可見輸出管腳Y0~Y6所接的發(fā)光二級管均為點亮狀態(tài),說明這7個管腳的輸出為高電平;輸出管腳Y7仍然處于熄滅狀態(tài),說明該管腳輸出為低電平。結(jié)論與Multisim仿真一致,符合譯碼器元件的輸入,輸出邏輯,實驗結(jié)果準確。浙江大學(xué)虛擬實驗平臺譯碼器實驗界面及返回結(jié)果如圖5所示。
圖5 浙江大學(xué)網(wǎng)絡(luò)實驗平臺實驗場景及返回結(jié)果
與Multisim等商用軟件相比,浙江大學(xué)虛擬網(wǎng)絡(luò)實驗平臺無需付費,操作門檻低,更適合中、高等院校的電子電路教學(xué)使用。譯碼器實驗中8個輸出端(Y0~Y7)分別連接發(fā)光二級管,通過觀察二極管的明暗變化來判斷輸出電平的高低,與EDA軟件的示波器界面相比,結(jié)果顯示更加直觀。實驗場景上方工具按鈕提示清楚,功能明確,實驗界面更加人性化,易于被學(xué)生接受。除此之外,實驗平臺避免了軟件下載和本地安裝的麻煩,用戶可以隨時隨地方便地進行實驗。平臺的可視化效果真實,場景與實物電路非常接近,實驗的還原度高,結(jié)果返回準確快速,便于學(xué)生理解和實踐學(xué)習(xí),對電工電子實驗教育具有很高的價值和實際意義。
4 結(jié)束語
浙江大學(xué)數(shù)字電子技術(shù)網(wǎng)絡(luò)實驗平臺操作簡單,界面可視化拖拽效果流暢,結(jié)果返回準確快速,整個平臺指導(dǎo)性強,有助于提高學(xué)生的知識理解能力、問題分析能力以及新知識探索和運用能力。
該平臺可以滿足所有用戶同時登錄實驗的需求,有效地分擔了傳統(tǒng)實驗室硬件設(shè)備資源的壓力。同時,開放的代碼及模型為構(gòu)建添加實驗提供了方便,減少了設(shè)備更新的成本和消耗,提高了實驗效率,在實際教學(xué)活動中有著一定的指導(dǎo)意義。
核心關(guān)注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://m.kaqidy.com/
本文標題:基于Modelica的數(shù)字電子技術(shù)網(wǎng)絡(luò)實驗平臺
本文網(wǎng)址:http://m.kaqidy.com/html/solutions/14019310629.html