新型的工业自动控制系统正以标准的工业计算机软、硬件平台构成的集成系统取代传统的封闭式系统,其具有适应性强、开放性好、易于扩展、比较经济、开发周期短等明显优点。通常可以把这样的系统划分为控制层、监控层、管理层三个层次结构。
其中监控层对下连接控制层,对上连接管理层,它不但
组态软件:一般英文简称有三种分别为HMI/MMI/SCADA,对应全称为Human and Machine Interface/Man and Machine Interface /Scan Control Alarm Database,中文翻译为:人机界面软件/扫描报警控制数据库软件。指一些数据采集与过程控制的专用软件,它们是在自动控制系统监控层一级的软件平台和开发环境,能以灵活多样的组态方式(而不是编程方式)提供良好的用户开发界面和简捷的使用方法,其预设置的各种软件模块可以非常容易地实现和完成监控层的各项功能,并能同时支持各种硬件厂家的计算机和I/O产品,与高可靠的工控计算机和网络系统结合,可向控制层和管理层提供软、硬件的全部接口,进行系统集成。目前世界上有不少专业厂商包括专业软件公司和硬件/系统厂商生产和提供各种组态软件产品。
一.组态软件的特点
组态软件最突出的特点就是实时多任务。数据的输入输出,数据的处理,显示,存储,及管理等多个任务需在同一个系统中同步快速的运行。
组态软件的用户是自动化工程设计人员,组态软件的目的是让用户迅速开发出适合自己需要的应用系统。因此,组态软件一般具备一下特点:
1.使用简单,用户只需编写少量自己所需要的控制算法代码,甚至可以不写代码。
2.运行可靠,用户在组态软件平台上开发出的应用系统可以长时间的连续可靠运行,运行期间实现免维护。
3.提供数据采集设备的驱动程序,以把控制现场的数据采集到计算机中,并把运算的控制结果送回到控制现场的执行机构。
4.提供自动化应用系统所需的通用监控软件的组件。
5.强大的图形设计工具。
二、组态软件产生的背景
“组态”的概念是伴随着集散型控制系统(DistributedControlSystem简称DCS)的出现才开始被广大的生产过程自动化技术人员所熟知的。在工业控制技术的不断发展和应用过程中,PC(包括工控机)相比以前的专用系统具有的优势日趋明显。这些优势主要体现在:PC技术保持了较快的发展速度,各种相关技术已臻成熟;由PC构建的工业控制系统具有相对较低的拥有成本;PC的软件资源和硬件资丰富,软件之间的互操作性强;基于PC的控制系统易于学习和使用,可以容易地得到技术方面的支持。在PC技术向工业控制领域的渗透中,组态软件占据着非常特殊而且重要的地位。
组态软件是指一些数据采集与过程控制的专用软件,它们是在自动控制系统监控层一级的软件平台和开发环境,使用灵活的组态方式,为用户提供快速构建工业自动控制系统监控功能的、通用层次的软件工具。组态软件应该能支持各种工控设备和常见的通信协议,并且通常应提供分布式数据管理和网络功能。对应于原有的HMI(人机接口软件,HMI)的概念,组态软件应该是一个使用户能快速建立自己的HMI的软件工具,或开发环境。在组态软件出现之前,工控领域的用户通过手工或委托第三方编写HMI应用,开发时间长,效率低,可靠性差;或者购买专用的工控系统,通常是封闭的系统,选择余地小,往往不能满足需求,很难与外界进行数据交互,升级和增加功能都受到严重的限制。组态软件的出现,把用户从这些困境中解脱出来,可以利用组态软件的功能,构建一套最适合自己的应用系统。随着它的快速发展,实时数据库、实时控制、SCADA、通讯及联网、开放数据接口、对I/O设备的广泛支持已经成为它的主要内容,随着技术的发展,监控组态软件将会不断被赋予新的内容。
三、组态软件的系统构成
在组态软件中,通过组态生成的一个目标应用项目在计算机硬盘中占据唯一的物理空间(逻辑空间),可以用唯一的一个名称来标识,就被称为一个应用程序。在同一计算机中可以存储多个应用程序,组态软件通过应用程序的名称来访问其组态内容,打开其组态内容进行修改或将其应用程序装入计算机内存投入实时运行。
组态软件的结构划分有多种标准,这里以使用软件的工作阶段和软件体系的成员构成两种标准讨论其体系结构。
组态软件的结构划分
①以使用软件的工作阶段划分
也可以说是按照系统环境划分,从总体上讲,组态软件是由两大部分构成的:
系统开发环境:是自动化工程设计工程师为实施其控制方案,在组态软件的支持下进行应用程序的系统生成工作所必须依赖的工作环境。通过建立一系列用户数据文件,生成最终的图形目标应用系统,供系统运行环境运行时使用。
系统开发环境由若干个组态程序组成,如图形界面组态程序、实时数据库组态程序等。
系统运行环境:在系统运行环境下,目标应用程序被装入计算机内存并投入实时运行。系统运行环境由若干个运行程序组
化编程语言、指令助记符、模块化功能块。使用者一般都习惯于使用模块化功能块,根据控制方案进行组态,结束后系统将保存组态内容并对组态内容进行语法检查、编译。
编译生成的目标策略代码即可以与图形界面同在一台计算机上运行,也可以下装(Download)到目标设备(如PC/104、Windows CE系统等PC-Based设备)上运行。
·策略运行程序
组态的策略目标系统被装入计算机内存并执行预定的各种数据计算、数据处理任务,同时完成与实时数据库的数据交换。
·实用通讯程序组件
实用通讯程序极大地增强了组态软件的功能,可以实现与第三方程序的数据交换,是组态软件价值的主要表现之一。通讯实用程序具有以下功能:
可以实现操作站的双机冗余热备用;
实现数据的远程访问和传送;
通讯实用程序可以使用以太网、RS485、RS232、PSTN等多种通讯介质或网络实现其功能。实用通讯程序组件可以划分为Server和Client两种类型,Server是数据提供方,Client是数据访问方,一但Server和Client建立起了连接,二者间就可以实现数据的双向传送。
四.组态软件的功能分析&n
五.组态软件的发展和现状
在二十世纪80年代后期,由于个人计算机的普及,PC机开始走上工业监控的历史舞台,与此同时开始出现基于PC总线的各种数据I/O板卡,加上软件工业的迅速发展,开始有人研究和开发通用的PC监控软件——组态软件。世界上第一个把组态软件作为商品进行开发,销售的专业软件公司是美国Wonderware公司,它于80年代末率先推出第一个商品化监控组态软件Intouch。此后组态软件得到了迅猛发展。目前世界上的组态软件有几十种之多,国际上较知名的监控组态软件有:Fix,Intouch,Wince,LadView,Citech等。
在当前的工业自动化领域,监控软件是一个热点,据统计,在国内,从事组态软件开发的公司达几十家之多,从事组态软件的工作的人员达两千人之多,而且,这些厂家都在高速的发展,不断的扩大。在工控组态软件行业,真可谓是:百家争鸣,百花齐放。
六、组态软件在我国的发展
组态软件产品于80年代初出现,并在80年代末期进入我国。但在90年代中期之前,组态软件在我国的应用并不普及。究其原因,大致有以下几点:
①国内用户还缺乏对组态软件的认识,项目中没有组态软件的预算,或宁愿投入人力物力针对具体项目做长周期的繁冗的上位机的编程开发,而不采用组态软件;
②在很长时间里,国内用户的软件意识还不强,面对价格不菲的进口软件(早期的组态软件多为国
外厂家开发),很少有用户愿意去购买正版。
③当时国内的工业自动化和信息技术应用的水平还不高,组态软件提供了对大规模应用、大量数据进行采集、监控、处理并可以将处理的结果生成管理所需的数据,这些需求并未完全形成。
随着工业控制系统应用的深入,在面临规模更大、控制更复杂的控制系统时,人们逐渐意识到原有的上位机编程的开发方式。对项目来说是费时费力、得不偿失的,同时,MIS(管理信息系统,ManagementInformationSystem)和CIMS(计算机集成制造系统,ComputerIntegratedManufacturingSystem)的大量应用,要求工业现场为企业的生产、经营、决策提供更详细和深入的数据,以便优化企业生产经营中的各个环节。因此,在1995年以后,组态软件在国内的应用逐渐得到了普及。
七、组态软件的功能特点发展方向
目前看到的所有组态软件都能完成类似的功能:比如,几乎所有运行于32位Windows平台的组态软件都采用类似资源浏览器的窗口结构,并且对工业控制系统中的各种资源(设备、标签量、画面等)进行配置和编辑;都提供多种数据驱动程序;都使用脚本语言提供
二次开发的功能,等等。但是,从技术上说,各种组态软件提供实现这些功能的方法却各不相同。从这些不同之处,以及PC技术发展的趋势,可以看出组态软件未来发展的方向。
1.数据采集的方式
大多数组态软件提供多种数据采集程序,用户可以进行配置。然而,在这种情况下,驱动程序只能由组态软件开发商提供,或者由用户按照某种组态软件的接口规范编写,这为用户提出了过高的要求。由OPC基金组织提出的OPC规范基于微软的OLE/DCOM技术,提供了在分布式系统下,软件组件交互和共享数据的完整的解决方案。在支持OPC的系统中,数据的提供者作为服务器(Server),数据请求者作为客户(Client),服务器和客户之间通过DCOM接口进行通信,而无需知道对方内部实现的细节。由于COM技术是在二进制代码级实现的,所以服务器和客户可以由不同的厂商提供。在实际应用中,作为服务器的数据采集程序往往由硬件设备制造商随硬件提供,可以发挥硬件的全部效能,而作为客户的组态软件可以通过OPC与各厂家的驱动程序无缝连接,故从根本上解决了以前采用专用格式驱动程序总是滞后于硬件更新的问题。同时,组态软件同样可以作为服务器为其他的应用系统(如MIS等)提供数据。OPC现在已经得到了包括Interllution、Simens、GE、ABB等国外知名厂商的支持。
随着支持OPC的组态软件和硬件设备的普及,使用OPC进行数据采集必将成为组态中更合理的选择。
2.脚本的功能
脚本语言是扩充组态系统功能的重要手段。因此,大多数组态软件提供了脚本语言的支持。具体的实现方式可分为三种:一是内置的类C/Basic语言;二是采用微软的VBA的编程语言;三是有少数组态软件采用面向对象的脚本语言。类C/Basic语言要求用户使用类似高级语言的语句书写脚本,使用系统提供的函数调用组合完成各种系统功能。应该指明的是,多数采用这种方式的国内组态软件,对脚本的支持并不完善,许多组态软件只提供IF…THEN…ELSE的语句结构,不提供循环控制语句,为书写脚本程序带来了一定的困难。微软的VBA是一种相对完备的开发环境,采用VBA的组态软件通常使用微软的VBA环境和组件技术,把组态系统中的对象以组件方式实现,使用VBA的程序对这些对象进行访问。由于VisualBasic是解释执行的,所以VBA程序的一些语法错误可能到执行时才能发现。而面向对象的脚本语言提供了对象访问机制,对系统中的对象可以通过其属性和方法进行访问,比较容易学习、掌握和扩展,但实现比较复杂。
3.组态环境的可扩展性
可扩展性为用户提供了在不改变原有系统的情况下,向系统内增加新功能的能力,这种增加的功能可能来自于组态软件开发商、第三方软件提供商或用户自身。增加功能最常用的手段是ActiveX组件的应用,目前还只有少数组态软件能提供完备的ActiveX组件引入功能及实现引入对象在脚本语言中的访问。
4.组态软件的开放性
随着管理信息系统和计算机集成制造系统的普及,生产现场数据的应用已经不仅仅局限于数据采集和监控。在生产制造过程中,需要现场的大量数据进行流程分析和过程控制,以实现对生产流程的调整和优化。现有的组态软件对大部分这些方面需求还只能以报表的形式提供,或者通过ODBC将数据导出到外部数据库,以供其他的业务系统调用,在绝大多数情况下,仍然需要进行再开发才能实现。随着生产决策活动对信息需求的增加,可以预见,组态软件与管理信息系统或领导信息系统的集成必将更加紧密,并很可能以实现数据分析与决策功能的模块形式在组态软件中出现。
5.对Inter net的支持程度
现代企业的生产已经趋向国际化、分布式的生产方式。Internet将是实现分布式生产的基础。组态软件能否从原有的局域网运行方式跨越到支持Internet,是摆在所有组态软件开发商面前的一个重要课题。限于国内目前的网络基础设施和工业控制应用的程度,笔者认为,在较长时间内,以浏览器方式通过Internet对工业现场的监控,将会在大部分应用中停留于监视阶段,而实际控制功能的完成应该通过更稳定的技术,如专用的远程客户端、由专业开发商提供的ActiveX控件或Java技术实现。
6.组态软件的控制功能
随着以工业PC为核心的自动控制集成系统技术的日趋完善和工程技术人员的使用组态软件水平的不断提高,用户对组态软件的要求已不像过去那样主要侧重于画面,而是要考虑一些实质性的应用功能,如软件PLC,先进过程控制策略等。
软PLC产品是基于PC机开放结构的控制装置,它具有硬PLC在功能、可靠性、速度、故障查找等方面的特点,利用软件技术可将标准的工业PC转换成全功能的PLC过程控制器。软PLC综合了计算机和PLC的开关量控制、模拟量控制、数学运算、数值处理、通信网络等功能,通