• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于MATLABWebServer的網(wǎng)絡(luò)虛擬實驗系統(tǒng)研究

    2015-09-11 14:53:52李鵬等
    科技視界 2015年26期
    關(guān)鍵詞:虛擬實驗

    李鵬等

    【摘 要】基于MATLAB Web Server和網(wǎng)頁開發(fā)技術(shù),對火炮原理課程用網(wǎng)絡(luò)虛擬實驗系統(tǒng)進(jìn)行了研究,闡述了虛擬實驗系統(tǒng)的工作原理、環(huán)境配置及開發(fā)的關(guān)鍵技術(shù),并給出了網(wǎng)絡(luò)虛擬實驗系統(tǒng)實例。

    【關(guān)鍵詞】MATLAB Web Server;虛擬;實驗

    0 引言

    在原理課程教學(xué)過程中,如果能夠?qū)⒗碚摻虒W(xué)與實驗教學(xué)緊密結(jié)合,對于加深學(xué)生對課程內(nèi)容的理解無疑是大有裨益的。然而在教學(xué)實踐中真正實現(xiàn)這一點(diǎn)卻并非易事。以筆者講授的火炮原理課程為例,該課程內(nèi)容龐雜,涉及內(nèi)外彈道、強(qiáng)度理論、機(jī)械運(yùn)動等多個學(xué)科,加之學(xué)時緊張,難以安排專門針對本課程的實驗環(huán)節(jié),即使開展數(shù)值模擬計算,也由于課程理論的復(fù)雜性和學(xué)生普遍缺乏編程基礎(chǔ)而難以取得良好效果。網(wǎng)絡(luò)虛擬實驗系統(tǒng)的出現(xiàn)為解決上述難題提供了一個全新的思路,網(wǎng)絡(luò)虛擬實驗系統(tǒng)不僅可以作為課堂教學(xué)的補(bǔ)充,而且可以培養(yǎng)學(xué)生的自主學(xué)習(xí)能力,成為實驗教學(xué)發(fā)展的重要方向。

    本文基于MATLAB軟件,進(jìn)行了B/S(Browser/Server)模式的網(wǎng)絡(luò)虛擬實驗系統(tǒng)研究。MATLAB是Math Works公司推出的一種優(yōu)秀的科學(xué)及工程計算軟件,具有高效的數(shù)值計算和強(qiáng)大的圖形處理能力,其Web Server組件將MATLAB的強(qiáng)大計算能力和Web瀏覽器的遠(yuǎn)程訪問能力相結(jié)合,客戶端通過Web瀏覽器向服務(wù)器發(fā)出請求和傳遞參數(shù),服務(wù)器進(jìn)行相關(guān)計算后可生成動態(tài)頁面返回客戶端。該虛擬實驗系統(tǒng)將大量的計算程序設(shè)計在服務(wù)器端運(yùn)行,位于客戶端的學(xué)生不必具有編程基礎(chǔ),僅需一個Web瀏覽器即可進(jìn)行虛擬實驗,從而檢驗課程理論知識,加深學(xué)習(xí)認(rèn)知。

    1 工作原理

    1.1 MATLAB Web Server 簡介

    MATLAB Web Server 主要由matlabserver 和matweb兩部分組成。matlabserver是一個MATLAB Web服務(wù)器,用來管理Web應(yīng)用程序和MATLAB之間的通信;matweb.exe是一個可執(zhí)行程序,是MATLAB Web Server的TCP/IP客戶端,它利用公共網(wǎng)關(guān)接口(CGI)從輸入頁面HTML文件中提取用戶數(shù)據(jù)傳遞給matlabserver.exe進(jìn)行處理。

    MATLAB Web Server 的工作流程如圖1所示。

    用戶在客戶端輸入網(wǎng)頁上填寫相應(yīng)數(shù)據(jù)后,將任務(wù)提交給服務(wù)器端,服務(wù)器接收任務(wù)并把數(shù)據(jù)傳遞給matweb.exe,之后matlabserver將數(shù)據(jù)傳遞給MATLAB,MATLAB調(diào)用內(nèi)部函數(shù)執(zhí)行相應(yīng)的計算任務(wù)。計算完畢后,matweb根據(jù)輸出模板,將從matlabserver傳回的數(shù)據(jù)填入到指定范圍并構(gòu)造出網(wǎng)頁文件。最后Web服務(wù)器將matweb生成的頁面文件和圖形文件返回客戶端,并在瀏覽器上顯示結(jié)果。

    在應(yīng)用MATLAB Web Server時,應(yīng)對其配置文件matweb.conf進(jìn)行配置,matweb.conf文件的內(nèi)容如下:

    [應(yīng)用程序名]

    mlserver=服務(wù)器名

    mldir=應(yīng)用程序所在路徑

    每增加一個MATLAB Web應(yīng)用,就需要增加一項上述配置。

    1.2 運(yùn)行環(huán)境配置

    服務(wù)器端要提供WWW服務(wù),還必須有一個傳統(tǒng)的Web服務(wù)器,常用的有IIS服務(wù)器和Apache Web Server。IIS(Internet Information Server)是微軟公司開發(fā)的信息服務(wù)器,是在windows環(huán)境下運(yùn)行的最主要的Web服務(wù)器;Apache則具有開源、高效、配置靈活、安全等優(yōu)點(diǎn)。本文選用的是IIS服務(wù)器。

    客戶端瀏覽器的選擇取決于用戶的使用習(xí)慣,可選擇windows自帶的IE瀏覽器,也可采用Firefox、chrome等第三方瀏覽器。

    2 網(wǎng)絡(luò)虛擬實驗系統(tǒng)的構(gòu)建

    2.1 虛擬實驗?zāi)P偷慕?/p>

    火炮原理課程,是研究火炮射擊過程中一系列復(fù)雜現(xiàn)象的學(xué)科,其中最具代表性同時又是學(xué)生理解難點(diǎn)的是內(nèi)彈道過程和外彈道過程,內(nèi)彈道過程決定了火炮的膛壓、初速,外彈道過程決定了火炮的射程、落點(diǎn),掌握了這兩個過程,就抓住了火炮射擊的主線,抓住了課程的重點(diǎn),本文選取了火炮內(nèi)彈道計算模型和外彈道計算模型作為虛擬實驗系統(tǒng)的基礎(chǔ)。內(nèi)外彈道方程組都是微分方程組,不具備熟練的編程技巧很難求解,MATLAB中提供了專門用于求解微分方程組的函數(shù)ode45,可以使微分方程組的求解過程大大簡化,更加凸顯了MATLAB在數(shù)學(xué)計算中的優(yōu)勢。

    2.2 創(chuàng)建輸入頁面

    一個虛擬實驗系統(tǒng),首先要建立輸入頁面,用戶通過頁面輸入?yún)?shù)和請求,之后頁面將相應(yīng)內(nèi)容傳送到服務(wù)器。輸入頁面可以直接使用html語言建立,也可利用Frontpage、Dreamweaver等開發(fā)工具建立。

    輸入頁面中必須包含與MATLAB Web服務(wù)相關(guān)的關(guān)鍵代碼:

    % 設(shè)置一隱藏輸入框mfile,其值為在MATLAB Web服務(wù)器中運(yùn)行的m文件的名稱。

    % 創(chuàng)建“提交”或“計算”按鈕。

    2.3 編寫虛擬試驗系統(tǒng)計算m文件

    用于計算的m文件是虛擬實驗系統(tǒng)的主體,它必須是一個function函數(shù),用于接收、處理頁面輸入的數(shù)據(jù),并將結(jié)果輸出為html文件。m文件由MATLAB腳本語言編寫,可靈活調(diào)用MATLAB內(nèi)置的各個函數(shù),如上述用于求解微分方程組的ode45函數(shù)等,其數(shù)據(jù)結(jié)構(gòu)、運(yùn)算過程與MATLAB其他程序基本相同。

    輸出結(jié)果時首先將計算結(jié)果寫入到一個結(jié)構(gòu)數(shù)組outstruct中,如:outstruct.h=h;然后調(diào)用htmlrep函數(shù)將結(jié)果返回給輸出文件,格式為:

    retstr=htmlrep (outstruct,temlatefile);其中templatefile是一個預(yù)先編制好的用于輸出的HTML文件。

    2.4 創(chuàng)建輸出頁面

    輸出頁面包含頁面布局、文字說明、圖形等信息,是最終呈現(xiàn)給用戶的界面。輸出頁面通常預(yù)先定義模板,再由m文件調(diào)用。模板中用到MATLAB計算程序輸出變量的地方用用$var_ name$的形式替換即可。如果輸出結(jié)果中包含圖形,則輸出頁面模板中要預(yù)先寫好,圖形的文件名也作為變量保存在(下轉(zhuǎn)第170頁)(上接第154頁)outstruct數(shù)組中。

    3 虛擬實驗系統(tǒng)實例

    本文根據(jù)上述開發(fā)過程,編寫了火炮原理課程網(wǎng)絡(luò)虛擬實驗系統(tǒng)。學(xué)生進(jìn)入頁面后,通過下拉框可選擇不同種類的火炮,頁面即給出該火炮的基本參數(shù),同時頁面提供了五個輸入?yún)?shù),分別是裝藥量、藥室容積、彈丸質(zhì)量、環(huán)境溫度和射角,輸入五個參數(shù),點(diǎn)擊“計算”按鈕,頁面即返回計算結(jié)果和相應(yīng)的內(nèi)外彈道曲線圖。如圖2所示。

    通過改變輸入?yún)?shù),學(xué)生可以直觀感受到某一參數(shù)的變化對火炮射擊帶來的影響,如裝藥量的增加會帶來膛壓上升,射程增大等,從而更深刻地理解理論知識,加深對課程的印象。該虛擬實驗系統(tǒng)不占用課時,可由學(xué)生利用課余時間自行完成,從而成為課程教學(xué)的必要補(bǔ)充。

    4 結(jié)束語

    基于MATLAB Web Server的網(wǎng)絡(luò)虛擬實驗系統(tǒng),充分發(fā)揮了MATLAB軟件強(qiáng)大的數(shù)值計算功能,又利用了網(wǎng)頁豐富多彩的表現(xiàn)形式,給用戶提供了一個簡單易用、功能強(qiáng)大的網(wǎng)絡(luò)實驗環(huán)境,成為理論課程教學(xué)的重要拓展內(nèi)容,在遠(yuǎn)程教學(xué)領(lǐng)域擁有廣闊的應(yīng)用前景。

    【參考文獻(xiàn)】

    [1]徐望明.基于MATLAB Web Server的數(shù)字圖像處理仿真實驗[J].信息技術(shù),2007,31(10).

    [2]何強(qiáng),何英.MATLAB擴(kuò)展編程[M].清華大學(xué)出版社,2002.

    [3]鐘麟,王峰.MATLAB仿真技術(shù)與應(yīng)用教程[M].國防工業(yè)出版社,2004.

    [4]錢林方.火炮彈道學(xué)[M].北京理工大學(xué)出版社,2009.

    [責(zé)任編輯:劉展]

    猜你喜歡
    虛擬實驗
    記一次有趣的實驗
    做個怪怪長實驗
    慧眼哲思對“虛擬”
    與“虛擬”保持一定距離
    如何在物理教學(xué)中構(gòu)建物理模型
    考試周刊(2016年76期)2016-10-09 09:48:26
    NO與NO2相互轉(zhuǎn)化實驗的改進(jìn)
    實踐十號上的19項實驗
    太空探索(2016年5期)2016-07-12 15:17:55
    黎城县| 洛南县| 沛县| 肥东县| 白城市| 邵阳县| 丹凤县| 鹤岗市| 商水县| 通江县| 开江县| 寿光市| 壤塘县| 平昌县| 沁阳市| 郴州市| 新邵县| 太湖县| 晋州市| 祁东县| 田阳县| 英吉沙县| 安塞县| 青川县| 平潭县| 镇坪县| 昆明市| 车险| 万山特区| 安阳县| 枣强县| 察哈| 上饶市| 赤水市| 乡宁县| 共和县| 湘潭市| 巴马| 伊春市| 安平县| 渭南市|