毕业设计论文基于MATLAB的“自动控制原理”远程教学平台.doc
摘要 “自动控制原理”是研究各类控制系统共性的一门基础学科,是各大院校控制类专业的一门主要专业基础课。其教学实践环节对于学生理解与掌握课程中抽象的理论概念起着至关重要的作用,而传统的自动控制原理实验课存在一些弊端:实验设备高度集成,可扩展性差;实验内容形式陈旧,不能达到实验要求和促进课程理论教学的目的;学时有限,实验室又是非开放性的,有限时间内掌握和巩固课堂内容较为困难。本文所研究的虚拟实验平台能够随时更新实验内容,紧跟学科的发展前沿,极大提高学生学习的积极性和创造性,而且使用者不必知道太多有关Matlab编程的知识,扩展了Matlab仿真软件的应用范围,同时该虚拟实验平台的实现必然会对远程教育、网上教学产生深远的影响。本设计主要应用了IIs、matlab及matlab web server,建立了一个自动控制远程教学平台,使用户能在一台没有安装matlab的计算机中也能运用matlab解决自控原理方面的习题,提供了一个交流与共享的平台。关键词:自控原理, 教学平台, matlab, 虚拟实验Abstract"Automatic Control Theory" is the study of various control systems in common a basic discipline, control of major institutions is a main specialty basic course. Part of their teaching practice and master the curriculum for the students to understand theoretical concepts in the abstract plays a vital role, and the traditional principle of automatic control of experimental course there are some drawbacks: a high degree of integration of laboratory equipment, poor scalability; experimental form of the old content can not bemeet experimental requirements and aims to promote the teaching of curriculum theory; hours are limited, laboratory and non-open, limited classroom time to master and consolidate the content is more difficult. Studied in this paper to update the virtual experimental platform to test the contents, followed by the development of cutting-edge discipline, greatly improving the student learning initiative and creativity, and users do not know much about the knowledge of Matlab programming, extending the application of simulation software Matlab range, while the realization of the virtual experiment platform bound for distance education, online learning have a profound impact. The design of the main application of the IIs, matlab and matlab web server, automatic control of the establishment of a distance learning platform that allows users to install matlab on a computer that does not also address the use of matlab's exercise self-control theory provides a communication and Sharing the platform.Key words:Control principle, Teaching platform, Matlab, Virtual Experiment目 录1 绪论11.1 题目背景及目的11.2 国内外的发展研究11.2.1 网络教育平台在国外的发展11.2.2 网络教育平台在国内的发展21.2.3 MATLAB自动控制教育平台的发展前景22 MATALB软件的概述42.1 基本功能42.2 应用42.3 特点52.4 优势52.4.1 友好的工作平台和编程环境52.4.2 简单易用的程序语言62.4.3 强大的科学计算机数据处理能力62.4.4 出色的图形处理功能62.4.5 应用广泛的模块集合工具箱72.4.6 实用的程序接口和发布平台72.4.7 应用软件开发(包括用户界面)73 平台系统配置83.1 软件应用及思路框架介绍83.1.1 网络连接方式83.1.2 MATLAB Web Server的工作原理简介83.1.3 所需安装及运行的软件93.2 IIS的安装配置93.2.1 IIS的安装103.2.2 IIS的配置123.2.3 常见问题及解决方法193.2.4 其他服务器203.3 Matlab Web Server的配置213.4 Matlab Web Server应用程序的开发243.4.1 创建输入文件243.4.2 创建Matlab Web应用程序的M文件253.4.3 创建输出文件273.5 常见问题及解决方法284 自控教育平台304.1 平台功能组成介绍304.1.1 系统目录结构304.1.2 功能介绍304.2 控制系统MATLAB324.2.1 代数稳定判定及举例:324.2.2 利用matlab求控制系统的根轨迹图334.2.3 控制系统阶跃响应与稳态误差分析:354.2.4 控制系统时域分析中的求给定响应364.2.5 Simulink在系统仿真中的应用37结论40参考文献41致谢42附录 主要表单及M文件431 绪论1.1 题目背景及目的“自动控制原理”是自动控制技术的基础理论,是自动化专业重要的一门专业基础课程。该课程的理论性强、概念抽象、涉及面广,学习起来具有相当难度;同时,根轨迹等各类图形曲线一直贯穿在整个教学过程中1 ,若采用传统的教学手段,教师需花费大量课堂时间绘制这些图形曲线,传统的实验室手段已不能满足现代教学的需要;而计算机技术的发展和网络的普及,使虚拟实验室技术得以应用和发展。在机械控制工程教学中,控制系统实验同样对教学起着重要的作用。Math Works公司的Matlab软件作为工程计算的工具和教学工具也越来越多地被应用在教学当中Matlab软件为控制系统的分析和设计提供了强大的功能。然而Matlab软件本身规模庞大,组件众多,操作相对复杂并且对运行环境要求较高。如果建立一个基于Matlab的服务平台,用户(学生)通过网络终端提供的友好用户界面进行交互的学习,不仅能够有效解决这些问题,而且能够提高学习效率,改善教学效果 2,3。1.2 国内外的发展研究1.2.1 网络教育平台在国外的发展从1996年底,1997年初开始出现支持网络教学的软件平台。国际上应用比较好的有 IBM Lotus公司开发的 Learning SpaceIBM 电子学习策略的核心技术 , 作为世界领先的基于 Web的远程教学平台 ,它提供了完整的可扩展的分布式解决方案,是唯一能够在单一平台上提供自学、非同步协作学习和虚拟教室同步交互学习所有 3 种在线学习模式的分布式教学平台;英属哥伦比亚大学计算机系开发的 WebCT ,它提供了一批支持多媒体学习环境的学员、教师和技术方面的工具; WBT系统在 995 年开发的 Topclass 是一个综合的课程稀内容和教室管理系统;另外还有 BlackBoard 公司开发的 Course Info ; MadDuck 学习技术公司开发的 Web Course in a Box 以及 Asymmet rix 公司研制的支持网络培训和虚拟学习环境的集成软件 ToolBook等。这些产品都是从支持多媒体开发或网站建设等方面发展起来的 , 经过多年的积累 , 成长为综合的网络教学支撑平台。1.2.2 网络教育平台在国内的发展我国的网络教育支撑平台研究起步较晚,它的发展主要经历了五个阶段:第一阶段:基于网络课程的网络教学支持平台(特点:简单易用,适用面较窄)第二阶段:基于计算机网络的完整集成的网络教育支撑平台(特点:系统完备性、通用性、集成性、符合教学机制、支持教学策略)第三阶段:基于 “天网”、“地网”结合的网络教育支撑平台第四阶段:多元化的网络教育平台第五阶段:网络教育平台产品化和多样化的发展综上所述,我们可以看出伴随着教育需求的增长、教学理论与现代信息技术、传播技术的不断发展和完善 , 网络教学平台的研究不断地出现一些新的热点和趋势。1、 由单一的网络教育平台向支持多模式的网络教育平台发展;2、 注重新技术开发和应用,例如将移动技术、网格技术、点对点技术等应用到平台的开发中来,同时对Blog,Wiki实时通信等社会软件对网络教育平台的建设也产生了重要的影响;3、 随着智能代理,数据挖掘和虚拟现实技术在网络教育中的深入应用,网络教育平台将实现个性化和智能化;4、 注重对网络教育平台的简易型。实用性的研究,促进网络教育的快速发展。1.2.3 MATLAB自动控制教育平台的发展前景目前国内的网络教学主要是将文字、图片、表格、流媒体、多媒体动画或者教室的电子讲稿这几种信息的载体呈现给学生接受,没有利用网络的交互性使学生从被动地接受既成资料变为主动地研究性学习。在线仿真实验在美国等发达国家的高校已广泛应用于网络在线教学系统,著名的Matlab软件的网络应用就是其中之一。Matlab软件为控制系统的分析和设计提供了强大的功能。然而Matlab软件本身规模庞大,组件众多,操作相对复杂并且对运行环境要求较高。如果建立一个基于Matlab的服务平台,用户(学生)通过网络终端提供的友好用户界面进行交互的学习,不仅能够有效解决这些问题,而且能够提高学习效率,改善教学效果4。所以目前来说,这样的教育平台是教育体系中迫切需要的。2 MATALB软件的概述MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。2.1 基本功能MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。 MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C+ ,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。2.2 应用MATLAB 产品族可以用来进行以下各种工作: 数值分析 数值和符号计算 工程与科学绘图 控制系统的设计与仿真 数字图像处理技术 数字信号处理技术 通讯系统设计与仿真 财务与金融工程 MATLAB的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用 MATLAB函数集)扩展了MATLAB 环境,以解决这些应用领域内特定类型的问题。2.3 特点1、高效的数值计算及符号计算功能,能使用户从繁杂的数学运算分析中解脱出来; 2、具有完备的图形处理功能,实现计算结果和编程的可视化; 3、友好的用户界面及接近数学表达式的自然化语言,使学者易于学习和掌握; 4、功能丰富的应用工具箱(如信号处理工具箱、通信工具箱等) ,为用户提供了大量方便实用的处理工具。 2.4 优势2.4.1 友好的工作平台和编程环境MATLAB由一系列工具组成。这些工具方便用户使用MATLAB的函数和文件,其中许多工具采用的是图形用户界面。包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。随着MATLAB的商业化以及软件本身的不断升级,MATLAB的用户界面也越来越精致,更加接近Windows的标准界面,人机交互性更强,操作更简单。而且新版本的MATLAB提供了完整的联机查询、帮助系统,极大的方便了用户的使用。简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运行,而且能够及时地报告出现的错误及进行出错原因分析。 2.4.2 简单易用的程序语言MATLAB一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。新版本的MATLAB语言是基于最为流行的C语言基础上的,因此语法特征与C语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式。使之更利于非计算机专业的科技人员使用。而且这种语言可移植性好、可拓展性极强,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。 2.4.3 强大的科学计算机数据处理能力MATLAB是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而前经过了各种优化和容错处理。在通常情况下,可以用它来代替底层编程语言,如C和C+ 。在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。MATLAB的这些函数集包括从最简单最基本的函数到诸如矩阵,特征向量、快速傅立叶变换的复杂函数。函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程的组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。2.4.4 出色的图形处理功能MATLAB自产生之日起就具有方便的数据可视化功能,以将向量和矩阵用图形表现出来,并且可以对图形进行标注和打印。高层次的作图包括二维和三维的可视化、图象处理、动画和表达式作图。可用于科学计算和工程绘图。新版本的MATLAB对整个图形处理功能作了很大的改进和完善,使它不仅在一般数据可视化软件都具有的功能(例如二维曲线和三维曲面的绘制和处理等)方面更加完善,而且对于一些其他软件所没有的功能(例如图形的光照处理、色度处理以及四维数据的表现等),MATLAB同样表现了出色的处理能力。同时对一些特殊的可视化要求,例如图形对话等,MATLAB也有相应的功能函数,保证了用户不同层次的要求。另外新版本的MATLAB还着重在图形用户界面(GUI)的制作上作了很大的改善,对这方面有特殊要求的用户也可以得到满足。2.4.5 应用广泛的模块集合工具箱MATLAB对许多专门的领域都开发了功能强大的模块集和工具箱。一般来说,它们都是由特定领域的专家开发的,用户可以直接使用工具箱学习、应用和评估不同的方法而不需要自己编写代码。目前,MATLAB已经把工具箱延伸到了科学研究和工程应用的诸多领域,诸如数据采集、数据库接口、概率统计、样条拟合、优化算法、偏微分方程求解、神经网络、小波分析、信号处理、图像处理、系统辨识、控制系统设计、LMI控制、鲁棒控制、模型预测、模糊逻辑、金融分析、地图工具、非线性控制设计、实时快速原型及半物理仿真、嵌入式系统开发、定点仿真、DSP与通讯、电力系统仿真等,都在工具箱(Toolbox)家族中有了自己的一席之地。 2.4.6 实用的程序接口和发布平台新版本的MATLAB可以利用MATLAB编译器和C/C+数学库和图形库,将自己的MATLAB程序自动转换为独立于MATLAB运行的C和C+代码。允许用户编写可以和MATLAB进行交互的C或C+语言程序。另外,MATLAB网页服务程序还容许在Web应用中使用自己的MATLAB数学和图形程序。MATLAB的一个重要特色就是具有一套程序扩展系统和一组称之为工具箱的特殊应用子程序。工具箱是MATLAB函数的子程序库,每一个工具箱都是为某一类学科专业和应用而定制的,主要包括信号处理、控制系统、神经网络、模糊逻辑、小波分析和系统仿真等方面的应用。2.4.7 应用软件开发(包括用户界面)在开发环境中,使用户更方便地控制多个文件和图形窗口;在编程方面支持了函数嵌套,有条件中断等;在图形化方面,有了更强大的图形标注和处理功能,包括对性对起连接注释等;在输入输出方面,可以直接向Excel和HDF5进行连接。 3 平台系统配置3.1 软件应用及思路框架介绍3.1.1 网络连接方式采用一台客户机、一台服务器和一个服务器软件构成的最简单的网络配置,如图3.1所示。其中的MATLAB服务器软件采用MATLAB65中的MATLAB web Server,该软件中的matlabserver与IIS安装在一台计算机上。 图3.1 MATI AB Web的单服务器彤式 图3.2 MATLAB Web server工作流程图3.1.2 MATLAB Web Server的工作原理简介MATLAB Web Server 有 MATLAB server、MATLABm、MATLAB和MATLABconf四个重要组成部分 ,其中MATLAB server的主要功能是处理Web应用程序和MATLAB 之间的通信;MATLAB是MATLAB server的一个TCPIP客户程序,它利用公用网关接口(CGI)从输入HTML文件中提取用户数据再传递给MATLAB serve;MATLABm 文件是MATLAB web Server的主入口点,它调用对应的m 文件执行客户提交的任务;MATLABconf是MATLAB用以和MATLAB server通信的一个配置文件,具体配置如下:应用程序名mlserver=服务器名mldir=应用程序所在的路径MATLAB web Server的工作流程如图3.2所示,客户机端用户在按照网页(即输入HTML文件)上的要求填写完后,提交任务给服务器端,服务器端的服务器软件(Apache)接收任务并把数据传递给MATLAB,接着MATLAB server将接收的数据传递给MATLAB,MATLAB调用其内部的库函数去执行相应的文件。执行完后,MATLAB一方面通知MATLAB server,另一方面将产生的数据或图象输出给服务器软件,再由服务器软件将输出HTML文件送到客户机端的浏览器上5。3.1.3 所需安装及运行的软件为了应用Matlab网络功能,需要相应的硬件和预先安装网络软件。在客户端,为提交输入数据和从Matlab服务器接受输出结果,须安装适合于客户端平台的网页浏览器。例如, Netscape Communicator Release 47和Microsoft Intemet Explorer 60。在服务器端,需要安装Mablab软件,并运行IIS(Internet Information Services)以及Matlab计算内核程序和Matlab Web server程序。3.2 IIS的安装配置IIS是Internet Information Services的缩写,是一个World Wide Web server.Gopher server和FTP server全部包容在里面。 IIS意味着你能发布网页,并且有ASP(Active Server Pages)、JAVA、VBscript产生页面,有着一些扩展功能。IIS支持一些有趣的东西,像有编辑环境的界面(FRONTPAGE)、有全文检索功能的(INDEX SERVER)、有多媒体功能的(NET SHOW) 其次,IIS是随Windows NT Server 4.0一起提供的文件和应用程序服务器,是在Windows NT Server上建立Internet服务器的基本组件。它与Windows NT Server完全集成,允许使用Windows NT Server内置的安全性以及NTFS文件系统建立强大灵活的InternetIntranet站点。IIS(Internet Information Server,互联网信息服务)是一种Web(网页)服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。3.2.1 IIS的安装安装完windows xp 后, IIS是没有安装的. 1. 首先我们将windowsxp系统安装光盘放入光驱中。依次在电脑右下角,单击 开始 控制面板 选择填加删除程序,然后单击 填加/删除windows组件 ,弹出一个新的对话框,显示如图 如图3.3所示 2. 然后将鼠标选中“Internet信息服务(IIS)”组件,并在前面打钩。显示如图3.4所示图3.3 添加/删除Windows组件图3.4 Internet信息服务(1)3. 在“Internet信息服务(IIS)”对话框中,选择列表框中的“FrontPage2000服务器扩展”、“Internet信息服务管理单元”、“公用文件”、“万维网服务”、“文档”,然后点击“万维网服务”进入其对话框,选择“脚步虚拟目录”、“万维网服务”、“远程桌面Web连接”,如图3.5所示。图3.5 Internet信息服务(2)4. 点击“下一步”,IIS开始安装经过短短几分钟,IIS即可安装完成。5. IIS安装完成后,便会在桌面和“管理工具”对话框中显示一个“Internet服务管理器”快捷方式,如图3.6所示。图3.6 管理工具6. 当IIS安装完成后,它还会在C盘自动建立一个名为Inetpub的目录(如图4.6所示),该文件夹所包含的就是IIS相关服务的默认目录,例如Web服务器默认存放网页的目录wwwroot及管理IIS服务的AdminScripts目录等,如图3.7所示。 图3.7 Inetpub目录下的文件夹IIS的Web服务安装已经完成,接下来介绍如何配置一台服务器。3.2.2 IIS的配置Web服务已安装好了,接下来我们要通过IIS控制台中的Web服务来建立一个网站,假设本机的IP地址为10.10.200.66,网页存放在F:matlabwebsystem目录下,网页的首页文件名为index.html。现在我们根据这些条件建立一台Web服务器。1、双击桌面上的“Internet信息服务”,依次展开“Internet信息服务”窗口中“树”标签下的“Internet信息服务”>“YEJIAZHAN(本地计算机名)”>“网站”>“默认站点”。右击选择“属性”。如图3.8所示。图3.8 打开“默认Web站点”属性2、在“默认Web站点”对话框中,选择“网站”选项卡,在“网站标识”选项组中的“IP地址”下拉列表中输入“localhost”或“127.0.0.1”或本机IP(下拉列表中的IP地址即是)。在“TCP端口”文本框中,系统默认为80,也就是说用户只需要通过浏览器输入本机IP便能对该站点进行访问(本机用户可以选择三个方式的任一种进行登陆),如果把该TCP端口修改成其他的端口号,如改为“8080”,那么在访问该站点时,必须在浏览器地址中输入“http:/本机IP端口号”,如“http:/10.10.200.79:8080”。如图3.9所示。图3.9 Web服务器IP地址及TCP端口在“默认站点属性”对话框中,选择“主目录”选项卡,在“本地路径”文本框中输入网站目录并选择相应权限。如图3.10所示此时也可以将主目录更改为下列目录之一:本计算机的目录(默认)、其他计算机中的目录(网络共享)、重定向到URL(其他Web站点)。本地路径相关设置:·脚本资源访问:如运行用户访问已经设置了“读取”或“写入”权限的资源代码,请选中该选项。资源代码包括ASP应用程序中的脚本。·读取:允许用户读取或下载文件(目录)及相关属性。·写入:允许用户将文件及其相关属性上载到服务器上已启用的目录,或者更改可写文件的内容。·目录浏览:允许用户查看该虚拟目录中文件和子目录的超文本列表,虚拟目录不会显示在目录列表中,用户必须指定虚拟目录的别名。·记录访问:在日记文件中记录对该目录的访问。·索引资源:允许Microsoft Indexing Service将此目录包含在Web站点的全文本索引中。此后,用户可以在Web站点中快速搜索单词和短语。 应用程序相关设置:·应用程序名:应将目录指定为应用程序的起点。·执行权限:脚本和可执行文件(如还可以执行CGI可执行文件);纯脚本(只允许允许脚本,如ASP脚本);无(只允许访问静态文本,如HTML或图像文件)。·应用程序保护:·在分开的窗口内允许:选择该选项将使应用程序独立于Web服务器进程单独运行。运行独立的应用程序可以在当应用程序出现错误时,使其他应用程序(包括Web服务器)免受影响。·运行应用程序的保护方式:与Web服务在同一进程中运行(低)、与其他应用程序在独立的共用进程中进行(中)、或者在与其他进程不同的独立进程中运行(高)。图3.10 网站主目录及权限3、添加默认文档就是指在http:/10.10.200.66时打开的首页,在“默认网站属性”对话框中,选择“文档”选项卡,单击“添加”按钮,在弹出的“添加默认文档”中输入网站的默认文档名“index.html”如图3.11所示,然后单击“确定”按钮即可完成添加。提示:使用“添加默认文档”功能可以指定多个默认文档,Web服务器会按出现在列表框中的名称顺序提供默认文档。当用户访问Web服务器时,它将返回所找到的第一个文档。要更改搜索顺序,请选择一个文档并单击箭头按钮来移动。要从列表框中删除某个默认文档,首先选择要删除的文档,然后单击“删除”按钮即可。图3.11添加默认文档Web站点的常规设置完成,接下来我们测试一下刚才建立的Web站点。4、双击桌面上的Internet Explorer程序,在浏览器的地址栏输入http:/10.10.200.66,即可以看到如图3.12所示站点主页。图3.12 Web站点测试成功至此,IIS的Web服务器常规配置完成。接下来我们要配置本毕业设计需要的功能。5、配置虚拟目录:右击“默认网站”选择“新建”>“虚拟目录”,在“别名”里输入虚拟目录名,如“cgi-bin”,此目录包含Matlab Web Server运行所需的CGI客户端matweb.exe,必须取得执行CGI权限。然后点击“下一步”并把对于的物理目录路径填好。在“访问权限”里选择相应权限。如cgi-bin虚拟目录的访问权限必须选择“执行(如ISAPI应用程序或CGI)”,如图3.13所示。然后点击“下一步”即可完成虚拟目录的创建。虚拟目录创建完成后,“默认网站”下就会出现一个特别图标的文件夹,如图3.14所示。同理再创建一个icons的虚拟目录,此目录保存Matlab计算生成的图形,所以必须赋予读取即写入权限。配置CGI支持:CGI(Common Gateway Interface,通用网关接口)是运行在服务器上的一种程序,它能让网页跟Web服务器沟通,达到跟使用者互动的效果。简单来说,CGI程式就是能够动态产生WWW网页,并让一般使用者经由WWW取用现存在传统资讯系统内的资料。CGI提供同客户端HTML页面的接口,通俗的讲,CGI就像是一座桥,把网页和Web服务器中的执行程序连接起来,把HTML接收的指令传递给服务器,再把服务器执行的结果返还给HTML页;用CGI可以实现处理表格、数据库查询、发送电子邮件等许多操作,常见的CGI就是计数器。CGI使网页变得不是静态的,而是交互式的。图3.13 虚拟目录创建向导图3.14 虚拟目录1. 安装Perl解释器。Perl(Practical Extraction and Report Language)是一种解释执行的语言。要是服务器支持CGI,就必须先安装Perl解释器。我们先到http:/www.activestate下载所需程序:ActivePerl for Windows。这是一个可以让计算机任意执行Perl程序的工具软件,其中包含Perl for Win32、Perl for ISAPI、PerlScript、Perl Package Manager四套开发工具程序,可以让我们编写出适用于UNIX、Windows、Linux系统的CGI程序。2. 双击运行ActivePerl安装程序,按提示一直点击下去,中途系统会提示选择7项安装配置, 将这7项全部选择,如图3.15所示,然后一直点击完成安装。图3.15 Perl安装3. 在已配置的虚拟目录cgi-bin里配置CGI解析。右击虚拟目录“cgi-bin”选择“属性”,在“cgi-bin属性”对话框中的“虚拟目录”选项卡中的“应用程序设置”选项组中的“配置”项,弹出“应用程序配置”,如图3.16所示。图3.16 “映射”选项卡选择“映射”选项卡,然后点击“添加”按钮,接着系统弹出“添加/编辑应用程序扩展名”对话框,在其中进行如下设置:在“可执行文件”文本框中输入perl.exe路径,并在这个路径后面加上“空格%s空格%s”。这里perl.exe程序的路径为“C:Perlbinperl.exe”,所以文本框中应输入“C:Perlbinperl.exe %s %s”,在“扩展名”文本框中输入“.cgi”,在“动作”选项组中选择“限制为”单选按钮并输入大写字母“GET,HEAD,POST”。取消选中“脚本引擎”复选框。以上设置完成后,单击“确定”按钮即可完成对.cgi扩展名的映射,如图3.17所示。图3.17 “添加/编辑应用程序扩展名”对话框说明:GET:获得以URL表示的文件内容或者程序执行结果,服务器根据文件名后缀判断服务内容,比如该URL是静态文本还是一个程序。HEAD:除了不返回响应的信息本体以外,得到的是跟GET一样的信息。运行用户用来测试链接的有效性、可达性和近期修改。POST:把消息本体中的消息发送到一个URL或者其他类似的服务器端定义行为。通常用来提交一个HTML表单或者一些数据操作活动。返回“应用程序配置”对话框后,在“应用程序映射”列表框中可以看到“.cgi”扩展名映射已经成功添加,如图3.18所示。图3.18 成功添加“.cgi”扩展名映射到此已经为IIS成功添加CGI服务。3.2.3 常见问题及解决方法1、访问本机地址要求输入用户和密码:将IIS设置中匿名帐号权限打开。再则检查所在目录的NTFS权限2、输入http:/10.10.183.77后出现文件目录而不能出现主页面。这是因为没有设置好主页面并赋予了根目录浏览的权限。 3、输入http:/10.10.183.77后不能打开链接。这是因为IIS没有运行,请确保“COM+ Event System”、“COM+ System Application”、“DCOM Server Process Launcher”、“Distributed Transaction”、 “System Event Notification”、“World Wide Web Publishing” “IIS Admin”、服务已经启动。 4、重装IIS后问题依然。这是因为前一个IIS没有完整删除,请按按以下步骤:(1)在控制面板删除IIS文件;(2)把原来目录