摘要:在介紹Matlab Web Server 的工作原理的基礎上,結合Matlab的科學計算與圖形顯示功能在WEB平臺上使用的方法,詳細說明了基于Matlab Web Server的遠程交互式教學課件開發的關鍵技術和技巧。通過一個具體的三角函數教學例子,介紹了該方法的實施過程,并將最后的結果和圖形直觀地顯示在瀏覽器上,從而也展示了Matlab在遠程互動教學中美好的前景。
關鍵詞:遠程教學;Matlab;Web技術;Matlab Web Server
引言
Matlab 是MathWorks公司于1982年推出的一套高性能的數值計算和可視化數學軟件。它集計算、數據可視化和程序設計于一體,構成了一個方便的、界面友好的用戶環境。同時,隨著計算機技術與通信技術的發展,互聯網已成為新型信息系統開發的標準平臺。Matlab Web Server 是Matlab 具有網絡計算功能的核心工具包之一。在教學上,利用它建立遠程仿真應用系統,避免了安裝Matlab 軟件和煩瑣的程序輸入與調試的局限性,能隨時隨地地利用Internet 方便快捷地進行遠程交互的仿真實驗,給教學、實驗和學習帶來了很大的方便。這將對我國目前教育資源不足的國情下大力發展職業教育及遠程教育具有重要意義。
一、Matlab Web Server的工作原理
1. 基本原理
基于Matlab Web Server 的遠程互動教學系統,用戶通過Web瀏覽器上的HTML網頁向服務器發送數據,服務器接收用戶數據并進行計算分析,然后把運行結果(數據或圖片)返回到客戶端的瀏覽器并顯示出來,其運行的基本原理如下圖所示。

2. 體系結構
Matlab的Web應用主要由以下部分組成:Matlab Web服務器、Web服務代理(Matweb)以及Matlab的m文件。其中,Matlab Web服務器是一個多線程可執行的TCP/IP應用程序matlabserver.exe,是Matlab應用程序運行的服務器環境,負責管理Web應用與Matlab間的通訊;Web服務代理是一個可執行程序Matweb.exe,是Matlab Web服務器的TCP/IP客戶端,同時也是Web的CGI擴展,它將對Matlab的請求重新定位到matlabserver.exe進行處理。Matweb.m是要調用的Matlab應用程序。
系統的工作原理:Matlab server通過調用matlab.m 來處理HTML網頁中隱含字段mlmfile 所指定的M 文件,在web 網頁、matlab、M 文件三者之間建立起聯系。
3. Matlab Web Server的配置過程
(1)配置IIS Web 服務器。
(2)建立并設置Matlab配置文件。在新建Web站點的根目錄下,建立Matlab配置文件Matweb.conf和Matlabserver配置文件Matlabserver.conf,并對其進行配置。
二、基于Matlab Web Server的交互式教學課件開發的基本過程
基于Matlab Web Server 的交互式教學課件開發主要由四個基本部分組成:①處理輸入數據和計算結果的M 文檔;②向Matlab 提交數據的HTML 輸入文檔;③顯示Matlab 計算結果的HTML 輸出文檔;④ 配置文件matweb.conf。本文以三角函數圖形展示教學為例進行開發。
1. M文檔的建立
M 文件是一個被網頁調用的程序,它是一個函數式M文件。M 文件的基本結構分為:網絡功能部分程序段、主運算程序段、圖形生成程序。
(1)運算功能的實現。完成主要運算功能的Matlab 程序段是M 文件的實體部分,它與直接用matlab 軟件進行仿真的實體部分基本相同。
(2)繪圖部分。生成的圖形不是直接從彈出窗口顯示,而是生成jpeg 格式的圖像文件,通過輸出網頁顯示給用戶,并與建立的初始輸出網頁上的圖形安排一一對應。
2. matweb 配置文件
matweb.conf(matweb 配置文件)對每個Web 應用分節進行配置,提供運行仿真程序的服務器名、matweb.exe 的位置。

三、運行結果
遠程進入主頁面,用戶在輸入界面中填入相應參數后,并通過函數選擇欄選擇所需演示的函數類型,最后點擊提交按鈕,稍等片刻便可在本頁面下彈出如圖3所示的相應結果。本結果為選擇了sin/cos選項,并設置不同參數得到兩條三角函數曲線:y=1.5*cos(2t)及y=1.5sin(pi/2+2t)。從該返回結果中可清楚地了解不同三角函數曲線特性,亦可同時顯示多種函數曲線,從而可對其進行比較學習。
結束語
通過以上分析可以看出,通過Matlab Web服務代理,使得在Web環境下調用Matlab成為可能。世界各地的學員只需通過Internet將數據發送給Matlab Web服務器,借助Matlab的強大計算與圖形展示功能,可很容易地獲得計算結果。這一技術的開發將對遠程互動教學具有深遠的意義,特別是我國目前國力還不是特別雄厚的前提下大力提倡職業教育及遠程網絡教育,這一技術勢必能大大減少相應的教育資源,同時也使遠程學員能方便快捷地通過網絡掌握需復雜計算及圖形展示相關的課程。
參考文獻:
[1]朱勇.Matlab Web Server在交互式網絡課件開發中的應用[J].阜陽師范學院學報,2005(2).
[2]高山,潘豐.基于Matlab Web服務器控制系統的分析與設計[J].江南大學學報,2005(2).
[3]唐春霞.基于Matlab的Web應用[J].控制工程,2005(2).
(江西省民政學校)