组态软件:一般英文简称有HMI/MMI/SCADA三种,均为humanandmachineinterface/manandmachineinterface/supervisorycontrold

什么是组态软件,HMI/MMI/SCADA又是什么

目前组态软件发展迅速,已扩展到企业信息管理系统、管理与控制一体化、远程诊断与维护、网上一系列数据集成。

1 .配置软件背景

“配置”的概念随着集散型控制系统的出现,开始为广大生产过程自动化技术人员所熟知。

在工业控制技术的发展和应用过程中,PC与以前的专用系统相比优势越来越明显。

这些优势主要体现在PC技术保持了较快的发展速度,各种相关技术已经成熟; 用PC构建的工业控制系统具有较低的拥有成本; PC的软件和硬件资源丰富,

软件间互操作性高的基于PC的控制系统容易学习和使用,容易得到技术方面的支持。

在PC技术向工业控制领域的渗透中,配置软件占有十分特殊和重要的地位。

组态软件是指在自动控制系统监控层级软件平台和开发环境下,使用灵活的组态方式,为用户提供快速构建工业自动控制系统监控功能的通用级软件工具

配置软件应支持各种工程设备和常用的通信协议,通常应提供分布式数据管理和网络功能。

与传统的HMI概念相对应,配置软件必须是用户可以快速建立其HMI的软件工具或开发环境。

在组态软件问世之前,工程领域用户手工或委托第三方编写HMI APP,开发时间长、效率低、可靠性差; 或者购买专用的工控系统。 通常是封闭的系统,选择余地小,无法满足需求,往往难以与外部进行数据交换。

升级和功能添加受到严重限制。

配置软件的出现,使用户摆脱了这些困境,可以利用配置软件的功能,构建最适合自己的APP交流系统。

随着高速发展,对实时数据库、实时控制、SCADA、通信和网络、开放数据接口、I/O设备的广泛支持成为主要内容,随着技术的发展,监控配置软件成为了

2 .组态软件在中国的发展及国内外主要产品简介

配置软件产品出现于80年代初,80年代末期进入中国。

但是,直到90年代中期,配置软件在中国的应用还没有普及。

究其原因,大致有以下几点。

国内用户对配置软件认识还不够,项目没有配置软件预算,或投入人力物力对具体项目进行长周期复杂上位机编程开发,配置

长期以来,国内用户的软件意识还不强,相对于价格较高的进口软件,很少有用户购买正版。

当时国内工业自动化和信息技术应用的水平还不高,配置软件提供了大规模应用,可以收集、监控、处理海量数据,处理后生成管理所需的数据,但这些需求并未完全形成。

图1配置软件

随着工业控制系统应用的深入,在面对规模更大、控制更复杂的控制系统时,人们逐渐意识到传统上位机编程的开发方式。

对于项目来说,费时费力、得不偿失,同时MIS和CIMS的大量应用,要求工业现场为企业的生产、经营、决策提供更详细、深入的数据,以优化企业生产经营的各个环节。

因此,1995年以后,配置软件在国内的应用逐渐普及。

下面介绍几种配置软件。

InTouch:Wonderware的InTouch软件是最早进入我国的配置软件。

80年代后期、90年代初,基于Windows3.1的InTouch软件让我们大饱眼福。 另外,InTouch提供了丰富的画廊。

但是,早期的InTouch软件通过DDE方式与驱动程序进行通信,性能较差,最新的InTouch 7.0版完全基于32位Windows平台,还提供了OPC支持。

) Fix ) IntelLution公司起源于Fix组态软件,1995年被爱默生收购,现为爱默生集团全资子公司。 Fix6.x软件为工程人员提供熟悉的概念和操作界面,并提供完整的驱动程序。

Intellution将最新的产品系列命名为iFiX。 在iFiX上,Intellution提供了强大的配置功能,但新版本并不与以前的6.x版完全兼容。

将现有的脚本语言更改为VBA,并在内部集成了Microsoft的VBA开发环境。

遗憾的是,Intellution没有提供6.1版的脚本语言到VBA的转换工具。

在iFiX上,Intellution产品与Microsoft操作系统和网络紧密集成。

Intellution也是OPC组织的创始成员之一。

您还必须单独购买iFiX的OPC组件和驱动程序。

Citech:CiT公司的Citech也是很早就进入中国市场的产品。

Citech具有简洁的操作方法,但其操作方法是面向程序员而不是工程用户的。

Citech为二次开发提供了类似c语言的脚本语言,但与iFix不同,Citech的脚本语言不是面向对象的,而是类似于c语言,这无疑增加了用户进行二次开发的难度。

WinCC:Simens的WinCC也是完整的配置开发环境,Simens提供包含调试环境的c类语言脚本。

WinCC具有内置的OPC支持,可以配置分布式系统。

但是,WinCC的结构很复杂,用户最好接受Simens的训练以掌握WinCC的应用。

ForceControl :北京三维力控科技有限公司的ForceControl从时间的概念上来说,力控也是国内出现很久的组态软件之一。

只是,由于初期的力量控制作为正式商品没有广泛普及,所以很多人不知道。

大约在93年,力控制成为了最初的版本,但当时还是基于DOS和VMS的版本。

后来随着Windows3.1的流行,又开发出了16位Windows版的力控。

但直至Windows95版本的力控诞生之前,他主要用于公司内部的一些项目。

32位下的1.0版的力控,在体系结构上就已经具备了较为明显的先进性,其最大的特征之一就是其基于真正意义的分布式实时数据库的三层结构,而且其实时数据库结构可为可组态的活结构。

在1999~2000年期间,力控得到了长足的发展,最新推出的2.0版在功能的丰富特性、易用性、开放性和I/O驱动数量,都得到了很大的提高。

在很多环节的设计上,力控都能从国内用户的角度出发,即注重实用性,又不失大软件的规范。

另外,公司在产品的培训、用户技术支持等方面投入了较大人力,相信在较短时间内,力控软件产品将在工控软件界形成巨大的冲击。

其他常见的组态软件还有GE的Cimplicity,Rockwell的RsView,NI的LookOut,PCSoft的Wizcon以及国内一些组态软件通态软件公司的MCGS,也都各有特色。

图2

3. 组态软件的功能特点发展方向

目前看到的所有组态软件都能完成类似的功能:比如,几乎所有运行于32位Windows平台的组态软件都采用类似资源浏览器的窗口结构,

并且对工业控制系统中的各种资源进行配置和编辑;都提供多种数据驱动程序;都使用脚本语言提供二次开发的功能,等等。

但是,从技术上说,各种组态软件提供实现这些功能的方法却各不相同。

从这些不同之处,以及PC技术发展的趋势,可以看出组态软件未来发展的方向。

3.1数据采集的方式

大多数组态软件提供多种数据采集程序,用户可以进行配置。

然而,在这种情况下,驱动程序只能由组态软件开发商提供,或者由用户按照某种组态软件的接口规范编写,这为用户提出了过高的要求。

由OPC基金组织提出的OPC规范基于微软的OLE/DCOM技术,提供了在分布式系统下,软件组件交互和共享数据的完整的解决方案。

在支持OPC的系统中,数据的提供者作为服务器,数据请求者作为客户,服务器和客户之间通过DCOM接口进行通信,而无需知道对方内部实现的细节。

由于COM技术是在二进制代码级实现的,所以服务器和客户可以由不同的厂商提供。

在实际应用中,作为服务器的数据采集程序往往由硬件设备制造商随硬件提供,可以发挥硬件的全部效能,而作为客户的组态软件可以通过OPC与各厂家的驱动程序无缝连接,

故从根本上解决了以前采用专用格式驱动程序总是滞后于硬件更新的问题。

同时,组态软件同样可以作为服务器为其他的应用系统提供数据。

OPC现在已经得到了包括Interllution、Simens、GE、ABB等国外知名厂商的支持。

随着支持OPC的组态软件和硬件设备的普及,使用OPC进行数据采集必将成为组态中更合理的选择。

3.2脚本的功能

脚本语言是扩充组态系统功能的重要手段。

因此,大多数组态软件提供了脚本语言的支持。

具体的实现方式可分为三种:一是内置的类C/Basic语言;二是采用微软的VBA的编程语言;三是有少数组态软件采用面向对象的脚本语言。

类C/Basic语言要求用户使用类似高级语言的语句书写脚本,使用系统提供的函数调用组合完成各种系统功能。

应该指明的是,多数采用这种方式的国内组态软件,对脚本的支持并不完善,许多组态软件只提供IF…THEN…ELSE的语句结构,不提供循环控制语句,为书写脚本程序带来了一定的困难。

微软的VBA是一种相对完备的开发环境,采用VBA的组态软件通常使用微软的VBA环境和组件技术,把组态系统中的对象以组件方式实现,使用VBA的程序对这些对象进行访问。

由于VisualBasic是解释执行的,所以VBA程序的一些语法错误可能到执行时才能发现。

而面向对象的脚本语言提供了对象访问机制,对系统中的对象可以通过其属性和方法进行访问,比较容易学习、掌握和扩展,但实现比较复杂。

3.3组态环境的可扩展性

可扩展性为用户提供了在不改变原有系统的情况下,向系统内增加新功能的能力,这种增加的功能可能来自于组态软件开发商、第三方软件提供商或用户自身。

增加功能最常用的手段是ActiveX组件的应用,目前还只有少数组态软件能提供完备的ActiveX组件引入功能及实现引入对象在脚本语言中的访问。

3.4组态软件的开放性

随着管理信息系统和计算机集成制造系统的普及,生产现场数据的应用已经不仅仅局限于数据采集和监控。

在生产制造过程中,需要现场的大量数据进行流程分析和过程控制,以实现对生产流程的调整和优化。

现有的组态软件对大部分这些方面需求还只能以报表的形式提供,或者通过ODBC将数据导出到外部数据库,以供其他的业务系统调用,在绝大多数情况下,仍然需要进行再开发才能实现。

随着生产决策活动对信息需求的增加,可以预见,组态软件与管理信息系统或领导信息系统的集成必将更加紧密,并很可能以实现数据分析与决策功能的模块形式在组态软件中出现。

3.5对Internet的支持程度

现代企业的生产已经趋向国际化、分布式的生产方式。

Internet将是实现分布式生产的基础。

组态软件能否从原有的局域网运行方式跨越到支持Internet,是摆在所有组态软件开发商面前的一个重要课题。

限于国内目前的网络基础设施和工业控制应用的程度,笔者认为,在较长时间内,以浏览器方式通过Internet对工业现场的监控,将会在大部分应用中停留于监视阶段,而实际控制功能的完成应该通过更稳定的技术,

如专用的远程客户端、由专业开发商提供的ActiveX控件或Java技术实现。

3.6组态软件的控制功能

随着以工业PC为核心的自动控制集成系统技术的日趋完善和工程技术人员的使用组态软件水平的不断提高,用户对组态软件的要求已不像过去那样主要侧重于画面,而是要考虑一些实质性的应用功能,如软件PLC,

先进过程控制策略等。

软PLC产品是基于PC机开放结构的控制装置,它具有硬PLC在功能、可靠性、速度、故障查找等方面的特点,利用软件技术可将标准的工业PC转换成全功能的PLC过程控制器。

软PLC综合了计算机和PLC的开关量控制、模拟量控制、数学运算、数值处理、通信网络等功能,通过一个多任务控制内核,

提供了强大的指令集、快速而准确的扫描周期、可靠的操作和可连接各种/系统及网络的开放式结构。

所以可以这样说,软PLC提供了与硬PLC同样的功能,而同时具备了PC环境的各种优点。

国际上影响比较大的产品有:法国CJ International公司的ISaGRAF软件包、PCSoft International公司的WinPLC、美国Wizdom Control Intellution公司的Paradym-31、美国Moore Process Automation Solutions公司ProcessSuite、美国Wonder ware Controls公司的InControl、SoftPLC公司的SoftPLC等。

国内推出软PLC产品的组态软件还不见有,国内组态软件要想全面超过国外的竞争对手,就必须搞创新,推出类似功能的产品。

随着企业提出的高柔性、高效益的要求,以经典控制理论为基础的控制方案已经不能适应,以多变量预测控制为代表的先进控制策略的提出和成功应用之后,先进过程控制受到了过程工业界的普遍关注。

先进过程控制是指一类在动态环境中,基于模型、充分借助计算机能力,为工厂获得最大理论而实施的运行和控制策略。

先进控制策略主要有:双重控制及阀位控制、纯滞后补偿控制、解耦控制、自适应控制、差拍控制、状态反馈控制、多变量预测控制、推理控制及软测量技术、智能控制等,尤其智能控制已成为开发和应用的热点。

目前,国内许多大企业纷纷投资,在装置自动化系统中实施先进控制。

国外许多控制软件公司和DCS厂商都在竞相开发先进控制和优化控制的工程软件包。

据资料报道,一个乙烯装置投资163万美元实施先进控制,完成后预期可获得效益600万美元/年。

从上可以看出能嵌入先进控制和优化控制策略的组态软件必将受到用户的极大欢迎。

4.结束语

用户的需求促使技术不断进步,在组态软件上这种趋势体现得尤为明显。

未来的组态软件将是提供更加强大的分布式环境下的组态功能、全面支持ActiveX、扩展能力强、支持OPC等工业标准、控制功能强、并能通过Internet进行访问的开放式系统。

HMI是Human Machine Interface的简称。

HMI其实广义的解释就是“使用者与机器间沟通、传达及接收信息的一个接口”。

举个例子来说,在一座工厂里头,我们要搜集工厂各个区域的温度、湿度以及工厂中机器的状态

等等的信息透过一台监视并记录这些参数,并在一些意外状况发生的时候能够加以处理。

这便是一个很典型的SCADA/HMI的运用,一般而言,HMI系统必须有几项基本的能力:

实时的资料趋势显示——把撷取的资料立即显示在屏幕上。

自动记录资料——自动将资料储存至数据库中,以便日后查看。

历史资料趋势显示——把数据库中的资料作可视化的呈现。

报表的产生与打印——能把资料转换成报表的格式,并能够打印出来。

图形接口控制——操作者能够透过图形接口直接控制机台等装置。

警报的产生与记录——使用者可以定义一些警报产生的条件,

比方说温度过度或压力超过临界值,在这样的条件下系统会产生警报,通知作业员处理。