模型在监控系统中的实现——力控HMI/SCADA监控组态软件eForceCo
2011-03-15北京三维力控科技有限公司
北京三维力控科技有限公司
软件是工业自动化系统的核心与灵魂,HMI/SCADA监控组态软件平台给工业自动化、社会信息化带来的影响是深远的。目前一些与信息化和工业自动化相关的技术,如 SOA、Web、.net、OPC、工业网络等技术的进步,给监控组态软件的发展提供了有力的支撑环境,在全集成自动化中,功能越强大的监控组态软件越能体现整体自动化系统的价值。系统化、模块化便是其发展方向之一,其中模型是一个典型的技术亮点。
1 模型的出现
在工控现场,尤其规模较大的工控环境中,常会使用大量同类型的设备,监控类似的流程参数。在界面上使用功能类似的图形元素来表示一类设备,如各类控制面板、模拟手操器、开关量手操器、PID手操器等,可以用一些图形元素组合形成具有特定功能的控制面板。如果现场同类设备多,需要同一类型的控制面板数量也多,每一个面板都重新组态会是件耗时费力的事,且系统的后期维护仍面临困难。这种情况下就不能很好地控制对工程维护的效果。复杂精确的控制环境对监控软件提出了更高的要求。
监控系统的发展要求监控软件更易于组态,并能方便地展现复杂的控制对象,尽量减少组态的工作量。模型化的组态是一个很好的实现方法。将类似的应用封装为模型,使用时只需将模型实例化为具体的对象,不但能方便实现系统的功能,而且可以减少系统资源的消耗,更大大降低了重复组态的工作量。
力控科技的eForceCon产品已经成功研发了模型功能,将现场中某一通用现实对象或功能抽象为模型,再通过模型的实例化来实现工程元素的重复利用,从而扩展工程应用,缩短工程开发周期,降低开发运维成本,提高总体运营效益。
2 力控eForceCon软件中的模型
力控eForceCon软件可以以界面、复杂对象来生成模板,模板中可固化任何界面元素——图形、画面布局、内部变量和内部脚本动作,只要建成符合实际应用的模型,便可以以此模型来批量生产实例对象,不需再对每一项重新组态,修改对象时既可以单独修改,也可以批量修改,省去了重复组态的麻烦。
eForceCon中有两种常用模型,分别是界面模板和对象模板。其作用都是以创建的模板来创建多个对象,模板中的对象布局、连接变量、显示文本等可以在创建后随时修改。通过修改模板可以控制多个模板生成对象的属性。
(1)界面模板
在力控监控软件中,以窗口为平台展示界面效果,窗口上可以放置曲线、报表、文本、按钮等各种组件。界面模板是以含有各个对象的窗口为模板,在软件运行时动态生成多个窗口。
界面模板可以由开发系统中任意存在的窗口直接生成,已生成的界面模板将包括原窗口中的所有内容,窗口的属性、动作、窗口中各对象的布局效果,各对象的属性方法事件,窗口中对象所使用的各种类型变量。而这些内容都可以在界面模板生成后继续修改。
以界面模板生成窗口,不是创建完全一样的窗口。界面模板中数据的来源,即变量,可以在创建窗口时指定使用不同的变量,包括全局变量、本窗口的窗口变量。窗口中的文本显示字样也可以改变。如此,运行时生成的窗口将整齐又有区别。
在一个工程中,模板和子模板都可以有多个。
(2)对象模板
对象模板将eForceCon中的智能单元保存为模板,在任意窗口上以此对象模板来创建类似的智能单元。
智能单元生成时包含多个对象的组合,各对象带有属性方法动作。智能单元保存为模板后将保存内部的所有属性动作。在以对象模板生成智能单元时,原智能单元内部的内容均被保留。当然,这些内容都是可以再次被修改的。
使用对象模板的重要作用,除了可以批量生成对象,还可以批量修改生成的对象的属性。以对象模板生成的智能单元与模板仍有关联,可以选择更新内部的变量、文本、自定义属性、容量。这样即可避免多次修改不同的对象。如果不想修改这个对象,可以取消对象与模板的关联,再使用模板对各对象进行强制同步时就与解除关联的对象无关了。
一个工程中可以建多个对象模板,用模板生成的对象也可以有多个。
3 模板的组态使用
eForceCon软件安装以后,系统自带界面模板和对象模板的功能,具体的使用方法可依照软件自带的在线帮助来进行。模板的使用都是以建立模板、编辑管理和调用实例化为线索进行操作的,以下略作介绍。
(1)界面模板的建立:首先建立窗口,按照实际工程要求设定窗口的属性信息,在窗口上建立需要的对象,组态完毕后,保存窗口,直接在窗口的右键菜单中点击生成界面模板即可。
(2)界面子模板的建立:在工程项目导航栏中找到“模板”/“界面模板”,打开界面模板编辑窗口,在模板编辑器中可以对一个生成的界面模板建立多个子模板,根据实际需要每个子模板可以使用不同的文本显示信息、关联变量等。在运行中将调用指定的子模板来实例化。
(3)界面子模板的调用:界面模板在运行系统中,通过调用系统函数来动态地产生模板实例,这两个函数是TemplateOpen和TemplateOpenEx,后者可以在生成历史窗口时指定窗口的位置。
(4)对象模板的建立:对象模板在智能单元基础上生成,因此首先建立含有适用功能逻辑的智能单元(eForceCon的智能单元可含有丰富的图形、变量、脚本内容),然后将此智能单元生成对象模板。
(5)对象模板的管理和编辑:在工程项目导航栏中找到对象模板,在对象模板上点击鼠标右键可以进入管理或编辑界面,对对象模板进行修改,修改内容包含文本、变量、图形外观等。
(6)对象模板的调用:对象模板调出方式有两种。
从对象菜单的对象模板中的管理对象模板选择要调用的对象模板,双击调用或从 “工具箱”/“对象模板”中选中要调用的对象模板,然后在界面上画出对象。
修改后可以选择是否更新以此模板生成的所有对象的变量、文本、自定义属性和容量。
4 典型应用
在工程项目的应用中,只要出现相同类型的设备、类似的数据展示要求、需要重复工作之处,都可以尝试用模板功能来节省工作时间。以下列出了界面模板和对象模板的两个应用。
(1)界面模板在工艺参数曲线展示中的应用
在一般的工艺流程中常会要求某一点的参数值以曲线的形式表现出来,一个工艺流程中要求展示的点会有很多,这时可以利用界面模板功能。将曲线及对曲线的操作放在同一窗口中,形成界面模板,如图1。
对要展示的不同变量建不同的子模板,子模板的文本等属性也可以不同。
在运行时,在界面合适的位置,使用函数templateopen或templateopenex动态调用子模板生成对应的实
例窗口。图2为在流程图的FIC102位置点击调用对应的模板。
(2)对象模板在工艺流程符号表示中的应用
在不同行业的工艺流程表示中常会有一些确定的表示方法,如DCS中对各个参数的表示,字母数字都有明确的含义,表现在监控软件界面上,通常会保证界面符号对各个系统操作员理解的一致,沿袭相同易理解的规则。
将它们打成智能单元,然后保存为模板,在画面中的多处使用该模板生成的对象。
如果需要对该模板生成的所有对象属性进行修改,如外观,只需在模板中修改,应用到所有对象即可。如调整模板颜色、增加边框。将此属性与大小应用到所有对象时,原使用了对象的画面对象全部改观。