1、此文档收集于网络,如有侵权请联系网站删除山东大学硕士学位论文摘要组态软件是用于工业自动化和过程监控的应用软件,它为自动化项目提供 人机接口,实现现场总线控制系统与管理网络的互连。它的出现,为自动化工 程技术人员提供了一种采用搭积木的方式制作现场控制过程和控制界面的工 具。它能根据用户对被控对象和控制目的的要求在模块间进行任意组合,不仅 满足了被控对象的个性需求,也缩短了软件开发时间,节省了开发费用。然而,随着工业自动化水平的不断提高,人们对组态软件的开放性、可维 护性和可重用性提出了更高的要求。为组态软件提供二次开发功能成为满足上 述要求的一个重要途径,许多成功的组态系统都采用脚本技术来支持现
2、有系统 的二次开发。采用这种模式进行开发的组态系统一般情况下都将自身的一些重 要、安全的功能留给脚本,让脚本解释装置来控制并使用,实现组态软件自身 功能的重利用。从目前情况看,国内工业监控组态软件仍停留在以C或Basic语言作为脚 本的水平上,而国外虽然有采用面向对象的脚本语言,但平台间的可移植性并 不完善。本文根据工业监控组态软件的常见结构,在研究了组态软件脚本功能 现状和发展趋势的基础上,采用面向对象的JavaScript作为脚本语言并创造性地采用目前在浏览器Mozilla FireFox上用的底层引擎基于C语言的跨平台开源内核SpiderMonkey作为脚本引擎,研究开发了新型组态软件的
3、脚本模块, 更灵活、更安全地解决了组态软件的二次开发问题。本课题来源是山东省科技厅重大科研攻关项目:基于工业以太网与现场总 线技术的新型控制系统,项目编号为31400004010437。课题从设计需求到开发 完成并通过测试,历经一年多时间。本文详细阐述了基于JavaScdpt语言、SpiderMonkeyi弓l擎的新型组态软件脚 本模块的设计,分为脚本配置模块和脚本引擎模块,均采用动态链接库形式实 现,并提供了诸多接口与组态软件的其它模块衔接,完成整体系统的实时通讯。 根据软件开发模型,每个模块都进行了详细的需求分析、风险分析、设计实现和软件测试。其中脚本配置模块是为方便脚本编写而实现的配置界
4、面,根据脚 本动作的驱动事件不同,分为六种动作脚本加以实现。脚本引擎模块的作用是 一个JavaSeript脚本解释器,在实现了能够解释JavaScriptI为建对象、函数等的基此文档仅供学习和交流山东大学硕士学位论文 础上,还实现了对自定义对象和函数的支持与解释。除了能够解释正常脚本之外,引擎模块还实现了脚本预编译排错功能,保证了脚本组态的安全。在系统 的各个模块中,脚本与数据库模块之间的数据交换采用COM技术实现,与图形 界面运行环境之间实现多线程调用。通过研究设计,最终实现了组态软件运行 平台可以执行用户根据自身需要所开发的脚本代码的功能。本文最后根据软件测试规范对设计完成的脚本模块进行了
5、周密的测试, 包括单元测试和功能测试,并对整个组态软件系统进行了系统测试,使功能得 到了完善,性能得到了优化。关键词:组态软件,脚本,JavaSeript,SpiderMonkey,COM山东大学硕士学位论文 ABSTRACTConfiguration software is one kind of application software used in industrial antomarlon,process monitoring and control applications,which provides manmachine interface for the automation
6、 project and achieves interconnectionbet、een Fieldbus control system and management networkIts appearance provides a means for automation engineering personnel to implement field control process and interface by using a modular methodArbitrary combination of the modules canbe used according to the r
7、equirements of the control target and control purpose fromcustomer,which can not ordy meet different needs of the control target,but also shorten the software development time,and save development costsHowever,aS industrial automation evolves,people are raising higher exDectations of the open featur
8、es,maintainability and reusability of the configuration softwareProviding reusability for configuration software is an important way to address the problems mentioned aboveMany successful configuration software supports reusability of existing systems by script technology The important and securityr
9、elated functionalities are implemented by script in the configuration software developed by this modeThe script interprets and controls the试stnlment and implements the reusability of the functionalities of theconfiguration softwareJudging from the current situation,some domestic industrial monitorin
10、g and control configuration software still uses C or Basic language aS scriptAlthough objectoriented script language is available in foreign countries,the portabilitybetween different platforms still needs to be improvedBased on the commonstnlcnlre of the industrial monitoring,control configuration
11、software,the study of script function and development trend of configuration software,this paper developsthe script module of new generation configuration software and flexibly addresses戗le reusability of configuration software by using object-oriented JavaScript asscript language and using C langua
12、ge based,CROSS。platform and open SOurCelit山东大学硕士学位论文SpiderMonkey which is the bosom of the engine used in the browser MozillaFireFox currently as script engineThe topic is the major scientific research projects of Science and Technology Office in Shandong Province:New Control System based on Industr
13、ial Ethemet and FieldbusItem number is:3 1400004010437It took more than a year to designrequirements,development and testingThis paper thoroughly describes script module design of new generation configuration software based on JavaScript language and SpiderMonkey engine, which is divided into script
14、 configuration module and script engine moduleThey are both implemented by dynamic link library,provide many interfaces to interfacewith other modules of the configuration software and achieve real timecommunication of the whole systemEach module has a detailed requirement analysis,design,implementa
15、tion and testingThe script configuration module is designed to make the configuration easy,which is divided into six kinds of actions to implement according to the different driver incident of each actionThe script engine module acts as a JavaScript interpreter,which can interprete not only the basi
16、s of JavaScript but also the self-defined functionsIn order to guarantee the safety of script,the script engine module provides a function of precompilerOf all the modules within the system,the script uses COM technology to implement the data exchange with library module and multithreading is also i
17、mplemented between different running modulesThrough research and design of the author,the functionality that the configuration software platform running the customized script from customer is eventually realizedFinally,in according with the software testing norms,tffxs paper also conducts thorough t
18、ests,which includes unit test,functional test and performance test to improve the functionality and optimize the performance of the script modulesKEY WORDS:Configuration Software,Script,JavaScript,SpiderMonkey,COMIV原创性声明本人郑重声明:所呈交的学位论文,是本人在导师的指导下, 独立进行研究所取得的成果。除文中已经注明引用的内容外,本论 文不包含任何其他个人或集体已经发表或撰写过的
19、科研成果。对本 文的研究作出重要贡献的个人和集体,均已在文中以明确方式标明。 本声明的法律责任由本人承担。论文作者签名:二盈牟 El期:2盟壁幽a关于学位论文使用授权的声明本人完全了解山东大学有关保留、使用学位论文的规定,同意学 校保留或向国家有关部门或机构送交论文的复印件和电子版,允许论 文被查阅和借阅;本人授权山东大学可以将本学位论文的全部或部分 内容编入有关数据库进行检索,可以采用影印、缩印或其他复制手段 保存论文和汇编本学位论文。(保密论文在解密后应遵守此规定)I论文作者签名:幺蒸导师签名: m锈UV山东大学硕士学位论文第1章绪论 11课题的研究背景及意义本课题是山东省科技厅重大科研攻
20、关项目“基于工业以太网与现场总线技术 的新型控制系统的一个子课题,项目编号为31400004010437。集散控制系统英文简写DCS(Distributed Control System),是相对于集中 式控制系统而言的一种新型计算机控制系统,它是在集中式控制系统的基础之 上发展、演变而来的,综合了计算机(Computer)、通讯(Communication)、显 示(CRT)和控制(Contr01)4C技术。其基本思想是“分散控制、集中操作、 分级管理、配置灵活、组态方便”。特点可以概括为:实现分散控制,使危险 分散;集中监视操作,便于科学管理;采用图像显示,完善人机功能;控制范 围扩展,能
21、在线进行系统组态和参数设置;采用数据通信和分块控制,减少现 场配线;应用自诊断技术及冗余结构,提高系统可靠性;采用面向控制的语言, 操作使用简单方便【l】。尽管市场上DCS系统技术相对比较成熟,但是仍然存在通信技术落后、分 散程度不高等问题【2】,而且随着计算机和现场总线等相关技术的迅速发展,新型 集散控制系统的推出成为必然。作为集散控制系统软件平台出现的组态软件,主要用于对工业生产过程实现 监视和控制,包括工业生产的人机界面监控、实时控制、开放的数据接口、通信 联网和实时数据库等方面内容【31。它不仅可以提高监控系统的可靠性和稳定性, 同时还能大大的缩短程序开发周期,提高效率,且维护简单方便
22、。目前组态软件 的国内市场主要是由国外知名企业产品占领,系统运行稳定可靠但价格昂贵,对 于中小型企业来说,难以接受。鉴于此,本项目研究国外组态软件的最新发展状 况,目标定位在中小型DCS组态软件上,使其在通用性、开放性、集成性、可 扩展性和可移植性上有自己的特色,以满足中小型企业的需要,提高工业生产的 自动化水平。因此,该项目具有很好的理论研究价值和实际意义,具有广阔的市 场潜力和经济效益。本课题作为“基于工业以太网与现场总线技术的新型控制系统”项目的子课山东大学硕士学位论文 题,在研究了新型DCS组态软件的基础上,深入研究了组态软件脚本功能,开发设计了新型DCS组态软件的脚本模块,从而使系统
23、开发更加灵活,组态更加 方便,功能更加丰富和完善。12组态软件的研究现状及发展趋势目前世界上的组态软件有几十种之多。伴随着信息化社会的到来,组态软 件在社会信息化进程中将扮演越来越重要的角色,未来的发展前景十分看好。1国外研究现状 从近几年的调查结果来看,市场的大部分份额仍被国外几家组态软件占据,下面介绍一些有代表性的国外组态软件。1)InTouch美国Wonderware公司的InTouch堪称组态软件的“鼻祖”,率先推出16位 Windows环境下的组态软件,图形功能比较丰富,使用较方便,但控制功能较 弱。其I0硬件驱动丰富,但实时性较差且驱动程序须单独购买。32位Windows 环境下的
24、70版本在网络和数据管理方面有所加强,并实现了实时关系数据库, 但其实只是在SQL Server上增加了数据传输插件。在32位Windows环境下, InTouch已受到其它产品的猛烈冲击。2)IFIX美国Intellution公司的FIX产品系列较全,功能较InTouch强,但仍欠缺实时 性。其I0硬件驱动丰富,只是驱动程序也须单独购买。最新推出的IFIX是全新 模式的组态软件,思想和体系结构都比较新,提供的功能也较为完整。但对系 统资源耗费巨大,速度缓慢,而且经常受Windows操作系统影响而导致不稳定。3)WINCC德国西门子公司的WINCC组态软件运行于个人计算机环境,可以与多种自 动
25、化设备及控制软件集成,具有丰富的设置项目、可视窗口和菜单选项,使用方 式灵活,功能齐全。但在网络结构和数据管理方面要比,FIX差,对第三方硬件的 支持也不热衷【41。2国内研究现状 国产组态软件产品也正在成为市场上的一支生力军,近年来已有一定影响2山东大学硕士学位论文 力的产品有组态王、力控等。国产组态软件具有较强的价格竞争优势。以下是两种有代表性的国产组态软件【51。1)组态王北京亚控公司的组态王是国内较早出现的组态软件产品之一,早期组态王 仿照InTouch,只是人机接口。51版本在数据管理和开放性方面有了一些改进。 6系列版本在体系结构上有了很大的改进,提供了资源管理器式的操作主界面,
26、并且提供了以汉字作为关键字的脚本语言支持,同时提供多种硬件驱动程序。2)力控32位Windows下10版的力控在体系结构上就己经具备了较为明显的先进 性,其最大特征之一就是基于真正意义的分布式实时数据库的三层结构,而且 它的实时数据库结构为可组态的“活结构”。目前为止的最新版本60版在功 能的丰富性、易用性、开放性和YO驱动数量方面都得到了很大的提高,在数 据处理性能、容错能力、界面容器、报表等方面也产生了巨大飞跃。3发展趋势1)行业化 社会大生产使行业分工越来越细,DCS垄断时期的大多数组态软件都是DCS厂商为DCS设备开发的,这种硬件厂商同时负责开发软件产品的情况不 符合现代软件的开发方法
27、,而且科技的发展使得用户对工业监控组态软件的要 求越来越高,原来功能单一的监控组态软件还有很大的发展空间,需要有专门 的行业负责开发工作61。2)开放性通信接口以及第三方程序接口是开放系统的标志,将来的工业监控组态软 件不应该仅仅能够使用第三方程序提供的接口,而且本身也应该能够提供接口 供其它程序进行使用。通过采用OLE,ODBC,SQL,OPC,ActiveX,COMDCOM 等统一的接口标准,实现系统的开放性。3)网络化基于IntemetIntranet的企业解决方案将成为工控软件的主流。由于简单易用 的客户浏览器、客户端操作界面的一致性,克服了两层结构CS(ClientServer) 模
28、式客户端多种程序带来的不一致性,而与web服务器沟通,有利于实现对客山东大学硕士学位论文 户信息服务的动态性、实时性和交互性【71。4)组件化组件化的软件设计思想有利于系统集成,各组件对象是各个单独运行的应 用程序。组件化可让用户自由选择所需的组件对象,无需购买整个软件系统, 降低了成本,同时允许用户将第三方应用程序加入到系统中,极大地提高了软 件的灵活性f8一。5)跨平台 从目前情况看,微软垄断了最大份额的操作系统市场,当前的大多数工控组态软件都是基于微软的Windows平台。众所周知,Unix是唯一可以在微型、 小型、大型、巨型机上通用的操作系统,它在多任务、实时性和联网方面的处 理能力都
29、优于Windows NT系统,由于Unix的特殊背景,其强有力的功能,吸 引了越来越多的用户和厂家。加上近年来涌现出的Linux热潮,可以预言,微 软公司的垄断终将被打破,将来的监控软件将向多操作系统方向发展,至少应 该能够兼容Windows NT和UnixLinux。6)脚本技术 允许用户执行自定义脚本,是近年来工控组态软件的趋势。运行平台可以执行用户根据自身需要所开发的脚本代码,并且在脚本引擎的帮助下,运行平 台可以针对用户的不同需求,生成脚本代码,不需要再次编译就可以实现多种 多样的逻辑功能。13组态软件中脚本的重要性及研究现状1脚本在组态软件中的重要性 在软件开发规模日益庞大的今天,软
30、件的可维护性和可重用性显得非常重要。提供二次开发功能成为解决当今日益严重的软件开发危机的一个重要途径。 但如果提供API进行二次开发将带来诸如语言调用规则等棘手问题,基于此, 许多成功系统都采用Script(脚本)技术来支持应用系统的二次开发。采用这 种模式进行开发的系统一般情况下都将自身的一些重要、安全的功能留给脚本, 让脚本解释装置来控制使用这些功能,实现应用软件系统自身功能的重利用。2组态软件脚本的研究现状4山东大学硕士学位论文 目前,组态软件中脚本语言的具体实现方式大致有以下三种:一是内置的类CBasic语言;二是采用微软的VBA编程语言;三是少数组态软件采用的面 向对象的脚本语言。1
31、)类CBasic语言要求用户使用类似高级语言的语句书写脚本,使用系统 提供的函数调用组合完成各种系统功能。但是多数采用这种方式的国内组态软 件,对脚本的支持并不完善,许多组态软件只提供IF THEN ELSE的语句结 构,不提供循环控制语句,为书写脚本程序带来了一定的困难。2)微软的VBA是一种相对完备的开发环境,采用VBA的组态软件通常使 用微软的VBA环境和组件技术,把组态系统中的对象以组件方式实现,使用 VBA的程序对这些对象进行访问。这就限制了系统的跨平台性,使其只能在微 软平台运行。3)面向对象的脚本语言提供了对象访问机制,可以对系统中的对象通过其 属性和方法进行访问,比较容易学习、
32、掌握和扩展,但实现较复杂。14研究内容本课题以目前在浏览器Mozilla FireFox_J:用到的底层引擎SpiderMonkey为 技术基础,在充分消化吸收其技术的前提下,在独立开发的组态软件中实现基 于SpiderMonkey的脚本引擎功能,并实现脚本模块与组态软件各模块间的实时通讯。根据目前掌握的资料,国内在这一领域的研究不多。 本课题严格按照软件开发规范组织实施了需求分析、概要设计、详细设计、功能测试以及系统测试等。研究工作主要有: 1对国内外组态软件的研究现状进行深入了解,对国内组态软件需求做细致分析;2研究各种脚本语言的优缺点,选择适合本课题新型DCS脚本模块的脚 本语言;3深入
33、研究JavaScript技术:4深入研究Mozilla SpiderMonkey引擎在脚本模块中的嵌入; 5脚本配置功能模块的设计实现;6脚本引擎模块的设计实现;山东大学硕士学位论文 7COM技术的研究,脚本模块通过COM与数据库的通讯;8整个组态软件的系统联调;9对脚本模块和整个组态系统进行测试。15创新点本课题创新点有苡下三点: 1采用模块化设计思想,分别开发相对独立的功能模块,将其作为组件进行封装,通过接口与外部进行交互。各组件动态组合,提高了组态软件的效率; 可进行部分升级,缩短软件的更新周期;2采用面向对象的脚本语言JavaSeript作为组态软件脚本语言进行开发;3创造性地将Spi
34、derMonkey这一著名的脚本引擎嵌入到组态软件中,实 现了组态软件对JavaScript内建对象、函数及自定义对象、函数等脚本的解释 执行,并且脚本引擎内核支持跨平台操作。16小结本章开篇介绍了本课题的来源、研究背景及意义,指出了研究新型集散控制 系统组态软件的必要性;在深入研究了国内外组态软件的前提下,总结了组态软 件的研究现状及发展趋势;分析得出脚本模块的重要性并对其研究现状进行了分 析;明确提出了本课题的研究内容;点出了本课题的创新点。6山东大学硕士学位论文第2章组态软件的系统分析与设计21新型集散控制系统结构1典型DCS结构从1975年第一套DCS由美国的Honeywell公司推出
35、到现在,DCS经历了初 创期、成熟期、扩展期三个发展阶段。世界上有几十家自动化公司推出了上百种 DCS,虽然这些系统各不相同,但在总体体系结构方面却大同小异,所不同的只 是采用了不同的计算机、不同的网络或不同的设备。一个典型DCS系统结构如 图21所示。网络图21典型的DCS体系结构从结构上划分,DCS包括过程级、操作级和管理级。过程级主要由主控制 器、IO单元、现场仪表以及系统通讯网络组成,是系统控制功能的主要实施 部分;操作级包括操作员站和工程师站,完成系统的操作和组态;管理级主要 是指工厂管理信息系统(MIS系统),作为DCS更高层次的应用。1)过程级 过程控制计算机直接与现场各装置(如
36、变送器、执行器、现场仪表等)相连,对所接的装置实施检测、控制,同时向上与操作级计算机相连,接收上层 的控制管理信息,并向上传递装置的特性数据和采集到的实时数据。7山东大学硕士学位论文 2)操作级综合监视过程级各设备单元的所有信息,集中显示操作,控制回路组态和 参数修改,优化过程处理等。(1)操作级中的操作员站主要完成人机界面的功能,实现过程参数的集中 监视、管理。(2)操作级中的工程师站是其基础和核心,它是对DCS进行离线配置、 组态工作、在线系统监督、控制和维护的网络节点,其主要功能是提供对DCS 进行组态、配置的工具软件组态软件,并在DCS在线运行时实时地监视 DCS网络上各个节点的运行情
37、况,使系统工程师可以通过工程师站及时调整系 统配置及一些系统参数的设定,使DCS随时处在最佳的工作状态之下。与集中 式控制系统不同,所有的DCS都要求有系统组态功能,可以说,没有系统组态 功能的系统就不能称其为DCS。3)管理级管理级的工厂信息管理系统负责对由DCS传送来的参数进行筛选、保存、 计算、分析和结果显示。2新型DCS结构 通过对以往不同厂家的各种不同的DCS系统的比较分析和研究,本项目设计的新型集散控制系统基于工业以太网与现场总线技术,其整体结构如图22所示。围困圈医亟圃立鱼鱼立介介lL,_r,UU主控制卡从控制卡主控移俞cAN遇佰!*介。移妙a埘总线图22新型DCS系统的整体结构
38、图山东大学硕士学位论文 新型集散控制系统的主控站性能更集中,更容易控制,可以根据整个系统的性能,对各现场模板性能进行采样比较,突出了集中控制功能,完善了以往 分布式的集中控制功能,体现了“智能控制模式。主控站通过CAN总线与现 场智能测控模板通讯,通过TCPIP协议与工程师站或操作员站通讯。新型集散控制系统核心的工程师站,负责提供对DCS进行组态和配置的组 态软件。22组态软件结构设计本课题的新型DCS组态软件采用模块化设计,本小节结构设计目的就是确 定系统的模块化结构。1模块化的优点1)基于自顶向下的设计思路,可把待解决的复杂问题分解为多个子问题, 然后将子问题再进行分解,一旦所有的子问题得
39、以解决,则解决了待解决的问题。2)各个组成模块具有一定的独立性,各个模块的功能确定以后,就可以分 配给多人同时进行开发,加快开发速度;而且如果某一或某些模块需要代替修改 时只需保证与其它模块的接口不变,就可以保证其它模块的适用。3)模块化开发能够达到一定的复用效果。2组态软件的模块划分根据模块化设计思想,将整个监控组态软件按照一定的规则划分为一系列的 相互依赖的层次,每个层次按照功能分解为一个个单独的模块,大致分为:应用 程序管理器、图形界面开发运行环境、数据库模块、脚本模块以及设备驱动模 块10,11】。各模块之间相对独立,负责完成特定的功能。具体说明如下:1)应用程序管理器 主要完成工程的
40、导入、创建、备份、搜索等功能,完成点的导入导出功能。 2)图形界面开发环境 它是自动化工程师为实施其控制方案,在组态软件支持下进行应用程序的系统生成工作所必须依赖的工作环境,负责完成DCS的各种组态工作,包括监控 画面、控制逻辑、报表、报警、实时趋势、历史趋势等的组态;3)图形界面运行环境9山东大学硕士学位论文 负责将组态好的画面投入运行,实现在线监控。包括监控画面、控制逻辑、报表显示、报警、实时趋势、历史趋势等的在线监控;4)数据库模块负责整个系统数据的管理。包括实时数据库和历史数据库,完成对数据的处理和存储等功能; 5)脚本模块负责脚本的编写和执行。包括脚本引擎模块和脚本配置模块。利用开发
41、系统 编制完成的动作脚本,可以在运行系统中执行,运行系统通过脚本对变量、函数 的操作,完成对现场数据的处理和控制,进行图形化监控。6)设备驱动模块 遵循TCPIP协议,利用工业以太网与现场控制站的主控制模块进行通信。控制站负责采集从现场I0设备检测的数据信息,组态软件必须通过I0驱动程 序从控制站获得实时数据,对数据进行必要的加工后,存储到数据库中,供组态 软件各模块访问。3各模块之间的结构关系组态软件各模块间的结构关系如图23所示【12】:脚本模块图23组态软件各模块结构关系图从图23中可以看出,脚本功能在组态软件中起着举足轻重的作用,是连接 数据库与图形界面开发以及运行环境的纽带1 31。
42、图中标号的含义女H-F:图形界面开发环境通过调用脚本配置模块对脚本进行编写配置。脚本配置模块调用脚本引擎模块的预编译接口函数,对配置的脚本进行 预编译排错。10山东大学硕士学位论文脚本引擎模块从数据库读取或者写入实时数据。数据库通过设备驱动模块来与底层的IO设备进行数据交换。图形界面运行环境显示脚本引擎模块周期执行的配置脚本141,或者脚本 引擎模块执行图形界面运行环境下发的控制命令,将处理过的数据写入 数据库。23软件开发模型正如任何事物一样,软件也有其孕育、诞生、成长、成熟和衰亡的生存过程, 该过程被称为软件生命周期。软件生命周期一般分为6个阶段,即制定计划、需 求分析、设计、编码、测试、
43、运行和维护。软件开发的各个阶段之间的关系不可 能是顺序且线性的,而应该是带有反馈的迭代过程。在软件工程中,这个复杂的 过程用软件开发模型来描述和表示。目前常见的软件开发模型有瀑布模型、增量 模型和螺旋模型等【151。1瀑布模型 瀑布模型将软件生命周期划分为指定计划、需求分析、软件设计、程序编写、软件测试和运行维护六个步骤,规定了各个阶段自上而下、相互衔接的固定次序, 如同瀑布流水,逐级下落。2增量模型 在增量模型中,软件被作为一系列的增量构件来设计、实现、集成和测试,每一个构件是由多种相互作用的模块所形成的提供特定功能的代码片段构成。首 先完成核心构件部分,通过测试运行此构件,取得反馈经验,开
44、始下一个构件的 开发过程,直到最终完善软件。3螺旋模型 螺旋模型将瀑布模型和增量模型结合起来,不仅体现了两个模型的优点,还强调了其它模型均忽略了的风险分析。这种模型的每一个周期都包括需求定义、 风险分析、工程实现和评审4个阶段,由这4个阶段进行迭代。软件开发过程每 迭代一次,软件开发又前进一个层次。采用螺旋模型的软件过程如图2-4所示。山东大学硕士学位论文图2-4螺旋模型设计流程螺旋模型由风险驱动,强调可选方案和约束条件从而支持软件的重用,有助 于将软件质量作为特殊目标融入产品开发之中。这种模型往往适应于内部的大规 模软件开发,且软件开发人员应该擅长寻找可能的风险,准确地分析风险。本文研究的课
45、题是集散控制系统组态软件设计,对软件安全性、稳定性等要 求较高,完成了对软件模块化划分,由研究小组开发设计实现,且有专家参与指 导,进行风险分析,具备每个阶段的评审工作条件。所以,组态软件设计采用螺 旋模型实现。24小结本章对组态软件进行系统分析与设计。首先给出了新型集散控制系统的结 构,对组态软件的应用环境进行了介绍;进而根据模块化的设计思想,对组态软 件结构进行了设计,论述了各结构模块的功能及它们之间的关系;最后对软件开 发模型进行了研究分析,选择螺旋模型作为本课题组态软件开发模型。12山东大学硕士学位论文第3章组态软件脚本模块的研究31几种面向对象脚本语言的综合评测依据第1章对脚本模块研究现状的分析,综合考虑脚本的易学性、易用性以 及易扩展性,本课题决定采用面向对象的脚本语言作为新型DCS组态软件的脚 本语言。面向对象的脚本语言种类很多,应用环境各不相同,下面综合评测几 种面向对象脚本的语言【16】。1VBScriptVBScript是一种轻量级的VB语言,通常被用于网页开发。VBScript从语 法角度来讲与VB相似,但它只是一种脚本语言,没有独立的集成开发环境,