面向工控领域的组态软件的画面组态实现
2014-04-04左娇
左娇
摘 要:组态是为了使工业控制系统现场工作站按照预定设置自动执行相应任务,使用软件对工作站的各种资源进行配置。组态软件是面向工业自动化领域监控与数据采集系统的软件平台工具,工程师可以根据不同的工控项目预置组态工程以供操作员灵活使用。组态软件的功能结构主要包括组态工程管理、组态参数配置、组态画面运行等部分。组态配置中主要包含图形组态、报表设置、报警设置、变量设置、趋势设置、用户管理、主控卡设置等。文中主要讲述了图形组态的实现方法,包含组态画面的生成和组态软件的动画连接。
关键词:组态软件;图形组态;画面生成;动画连接
中图分类号:TP399 文献标识码:A 文章编号:2095-1302(2014)03-0079-03
0 引 言
组态软件是一种面向工业自动化领域的通用监控与数据采集系统的软件平台工具,具备对工业自动化系统的监视、控制、管理等功能,同时也提供丰富的、易于使用的手段和工具。
组态软件的出现,解决了以往过程控制系统中图形报表、控制回路设计、数据变量设置等功能只能依靠编程来实现的问题。组态软件能适应不同的应用对象,工程师针对不同的工程项目改变数据实体(包括控制回路、图形或报表文件等),而不改变系统的执行代码。组态软件具有实时多任务特征,满足工业控制系统中同时进行工业现场实时数据的采集、处理、存储、检索、显示、图形动画展示、报表报警显示和实时通信等多个并行任务。组态软件为用户提供数据访问安全机制,只允许有特定操作权限的工程师对组态软件中某些功能进行操作,防止未授权用户修改开发系统参数或者对工控现场数据进行更改等操作,防止意外或非法地关闭该系统。组态软件既提高了系统的运行速度,又保证了系统软件的成熟性、健壮性和可靠性,为操作员提供非常方便、灵活的操作方式,而且也便于工程师对系统进行修改、维护和扩展。
1 组态软件的功能结构
图1所示是组态软件的功能结构图。组态软件的功能结构主要包括工程管理、组态配置、组态运行几个部分,本文将重点介绍组态配置中图形组态的实现。
2 组态软件图形组态实现
图形组态可以模拟出生产过程中锅炉、水泵、管道等各个单元的实际形状,并将生产过程中的模拟量和开关量与画面中的图形连接起来,组成与工业控制系统现场匹配的动态画面。
图1 组态软件功能模块图
生产过程现场数据变量与画面中的图形元素是相互双向对应的,生产现场产生的模拟量和开关量可以通过通讯接口传送到组态画面中实时显示。同时,用户也可以操作运行画面中的图形元素,通过通讯接口向工业控制系统中的现场设备发送操作指令,这样使得操作员清晰、简单地监视和控制工业现场生产过程。
组态软件中的图形组态可分为两个步骤:第一步是利用组态参数配置模块提供的绘图工具编辑工业控制系统工艺流程画面,形成与工控现场相对应的静态背景图;二是绑定工艺流程画面中的某一图形元素对象和数据变量,通过实现动画连接,生成随实时数据变化而变化的动态画面。
2.1 组态软件的画面生成
组态软件运行时的各种显示画面是在图形组态参数配置环境中编辑而成的,这个环境提供了一个面向对象的图形编辑器,提供用户绘制矩形、直线、圆、文本对象和其他管道和矢量绘图工具,该环境为用户提供了一个面向目标的图形编辑器,为工程师提供了如矩形、工控设备示意图、线条、圆、管道以及文本等图元对象的矢量图编辑工具,每种图元类型均能分别设置其基本属性和动画属性[1]。矢量图保存的是图元各点的坐标,图形无论放大或缩小均不会变形和失真,并且所占用的存储空间也比其他图形格式(如bmp、jpeg等)小,图元的存取采用MFC(Microsoft Function Classes)的串行化技术,通过串行化可以方便地保存数据,简化程序操作流程。
图元绘制的实现需结合鼠标左键按下、鼠标移动和松开鼠标左键3个事件,其创建过程分为3个步骤[2]:
(1)创建组态画面图元示例(即鼠标左键按下动作)
创建画面图元时,首先选择确定图元所属类型,当工程师按下左键时,即创建了相应图元类型的类实例,并将该图元类型实例指针保存在成员m_objects中;
(2)跟踪鼠标移动修改图元,实现图元实时显示效果(即鼠标移动动作)
当鼠标移动时,图元大小将随之变化,该过程在图元编辑工具CDrawTool类的OnMouseMove事件(鼠标移动事件)程序中实现。该事件可实现图元创建所见即所得的效果,使工程师在绘制静态背景图时即时获取绘图效果,便于整体画面编辑和修改,并增强画面编辑的友好型和互动性;
(3)保存新建图元类型示例(即鼠标左键抬起动作)
当工程师抬起鼠标左键时,表示图元对象绘制完成。程序需保存该图元数据和更新视图显示,并恢复画面绘制前的相应程序设置。因此,需在CDrawTool中加入的鼠标释放事件OnLButtonUp。
2.2 组态软件动画连接
集散控制系统组态软件能够模拟工控现场系统的实际运行情况,要求图形界面友好,通过绑定工艺流程画面中的某一图形对象和数据变量,将数据变化在画面中实时形象地反应出来,即实现动画[3]。通过制作工艺流程图,操作员可以监视工业现场的情况,及时对紧急情况做出应急处理,防止灾难发生和造成损失。
对于画面组态中的工艺流程图,其图形元素分为两类,一类是为了画面完整的静态图,主要对画面起修饰作用;另一类是反映现场仪表检测量的变化或者工业现场开关、阀门等控制装置的状态的动态图形。
动态图形元素能实时反映检测量的变化,这就需要将这些动态图形元素和工业控制系统现场控制仪表的输出数据联系起来,即变量绑定。由于在组态画面参数设置时,已为每个现场检测量设置了唯一的变量名,现场数据采集设备的输出数据会根据工程师所设置的时间间隔传送到上位机数据库的对应变量中,进行变量绑定则是为动画图形元素添加数据驱动源,让工作站组态运行环境知道各个图形对象应该根据哪些变量值进行变化。组态软件在运行状态时会按设定时间间隔到读取实时数据,并通过动态图形元素的动画进行展示。
动画属性与相应设备的I/O变量相关,变量的变化表现为画面中动态图形元素的颜色变化、大小变化、位置变化、可见度变化和闪烁性变化,图形元素的存在形态随着所绑定的变量值的变化而变化。在组态软件运行环境下,画面中建立了动画连接的图形即根据数据变量或表达式的变化进行显示。
用户可选中画面中的图形元素进行动态图形元素的动画连接设置,双击图形元素,即弹出动画连接设置对话框,再选择该图形的动画类型,例如需要给该图形设置填充属性,则点击“填充属性”按钮,弹出填充属性设置对话框,在此对话框内,对图元填充动画进行设置。用户可根据生产运行实际情况设置相应图元对应的动画连接,利用动画连接,系统将生成一系列画面组态信息动画信息,并将他们保存在数据文件中,供组态运行程序调用。图2所示是动画连接设置界面,图3所示是其组态运行界面图。
图2 动画连接设置界面
图3 组态运行界面
2.3 画面编辑界面闪烁的解决方法
随着工业现场监测点增加,组态画面中的图形元素将越来越多,在对界面中图元进行添加、删除、修改等操作时会造成延迟,甚至是绘图界面闪烁,大大降低了用户的操作体验。
通常由OnPaint函数调用OnDraw函数,OnDraw和OnPaint函数完成绘图过程[4]。在MFC绘图处理机制中,重绘画面时会先清除显示区,使之成为背景色,然后再调用OnPaint函数进行绘制,而当窗口中图元颜色、位置等变化后均会重绘画面。为了画面元素易于识别,通常将画面背景色与图元颜色设置为不同颜色,当重绘画面时背景色与画面中的显示图形将在极短的时间内交替出现,造成画面窗口刷新闪烁,影响用户体验。因此,本文采用双缓冲机制来解决界面闪烁的问题。
双缓冲机制绘图的实现即在画面显示在屏幕上之前,在内存中创建一个缓冲区对象,该对象与组态画面绘图区域一致,将图形元素绘制到内存的这个对象上,再通过调用BOOLBitBlt(intx,inty,intnWidth,intnHeight,CDC*pSrcDC,intxSrc,intySrc,DWORDdwRop)函数,将这个对象上的图形一并拷贝到画面绘图区域中,由于绘图的速度较快,人眼无法感觉到闪烁,从而解决了绘图界面闪烁的问题。
其中:x为目标矩形区域的左上角x轴坐标点;y为目标矩形区域的左上角y轴坐标点;nWidth为在目标设备中绘制位图的宽度;nHight为在目标设备中绘制位图的高度;pSrcDC为源设备上下文对象指针;xSrc为源设备上下文的起点x轴坐标,函数从该起点复制位图到目标设备;ySrc为源设备上下文的起点y轴坐标,函数从该起点复制位图到目标设备;dwRop为光栅操作代码。
图4所示是采用双缓冲机制绘图的过程图。
3 结 语
通过组态软件中图形组态的实现,将生产过程中的实时数据动态展示在组态画面中,组成与生产过程现场相对应的动态画面,提高了工业控制系统项目管理的灵活性和扩展性,并为工程师和操作员执行权限范围内的操作提供了方便。
图4 采用双缓冲机制绘图过程
随着电力、石化、能源等领域控制系统规模的不断扩大,设备逐渐增多,工业控制系统现场环境也变得更复杂,因此对组态软件系统结构的功能要求、性能要求和安全要求也变得越来越高。同时,软件工程的理论和工控领域控制系统技术的不断发展,组态软件的整体设计要求也变得越来越高,对组态软件的扩充和完善将是工控领域长久的需求。
参 考 文 献
[1]王亚青,陈青,刘畅生,等.组态软件设计与开发[M].西安:西安电子科技大学出版社,2003.
[2]林伟.浅谈组态软件的发展趋势[J].自动化博览,2003,20(3):45-47.
[3]朱小菲.工控组态软件的设计与实现[D].长春:吉林大学,2005.
[4]王亚民.DCS组态软件实现方法研究[J].测控技术,2005(9): 50-53.
[5]周欣然. 组态软件的设计[D]. 长沙:中南大学,2003.
Configuration implementation of configuration software image face to the industrial areas
ZUO Jiao
(North China Computer Systems Engineering Institute, Beijing 100083, China)
Abstract: Configuration means using software tools to configure different kinds of resources, and make it works as reserved settings automatic to execute specific tasks. Configuration software is a platform tool for monitoring face to the industrial areas and data collection system. Engineers can preset configuration project according to different industrial control program for operator to use intelligently. The function structure of configuration software includes configuration project management, parameter configuration, and configuration running. The main parts of configuration are graph configuration, report form configuration, alarm configuration, variable setting, tendency setting, user management and master card setting. The implementation method of graph configuration is introduced, which includes the generation of configuration picture and animation connection of configuration software.
Keywords: configuration software; graphical configuration; screen generation; animation connection
动画属性与相应设备的I/O变量相关,变量的变化表现为画面中动态图形元素的颜色变化、大小变化、位置变化、可见度变化和闪烁性变化,图形元素的存在形态随着所绑定的变量值的变化而变化。在组态软件运行环境下,画面中建立了动画连接的图形即根据数据变量或表达式的变化进行显示。
用户可选中画面中的图形元素进行动态图形元素的动画连接设置,双击图形元素,即弹出动画连接设置对话框,再选择该图形的动画类型,例如需要给该图形设置填充属性,则点击“填充属性”按钮,弹出填充属性设置对话框,在此对话框内,对图元填充动画进行设置。用户可根据生产运行实际情况设置相应图元对应的动画连接,利用动画连接,系统将生成一系列画面组态信息动画信息,并将他们保存在数据文件中,供组态运行程序调用。图2所示是动画连接设置界面,图3所示是其组态运行界面图。
图2 动画连接设置界面
图3 组态运行界面
2.3 画面编辑界面闪烁的解决方法
随着工业现场监测点增加,组态画面中的图形元素将越来越多,在对界面中图元进行添加、删除、修改等操作时会造成延迟,甚至是绘图界面闪烁,大大降低了用户的操作体验。
通常由OnPaint函数调用OnDraw函数,OnDraw和OnPaint函数完成绘图过程[4]。在MFC绘图处理机制中,重绘画面时会先清除显示区,使之成为背景色,然后再调用OnPaint函数进行绘制,而当窗口中图元颜色、位置等变化后均会重绘画面。为了画面元素易于识别,通常将画面背景色与图元颜色设置为不同颜色,当重绘画面时背景色与画面中的显示图形将在极短的时间内交替出现,造成画面窗口刷新闪烁,影响用户体验。因此,本文采用双缓冲机制来解决界面闪烁的问题。
双缓冲机制绘图的实现即在画面显示在屏幕上之前,在内存中创建一个缓冲区对象,该对象与组态画面绘图区域一致,将图形元素绘制到内存的这个对象上,再通过调用BOOLBitBlt(intx,inty,intnWidth,intnHeight,CDC*pSrcDC,intxSrc,intySrc,DWORDdwRop)函数,将这个对象上的图形一并拷贝到画面绘图区域中,由于绘图的速度较快,人眼无法感觉到闪烁,从而解决了绘图界面闪烁的问题。
其中:x为目标矩形区域的左上角x轴坐标点;y为目标矩形区域的左上角y轴坐标点;nWidth为在目标设备中绘制位图的宽度;nHight为在目标设备中绘制位图的高度;pSrcDC为源设备上下文对象指针;xSrc为源设备上下文的起点x轴坐标,函数从该起点复制位图到目标设备;ySrc为源设备上下文的起点y轴坐标,函数从该起点复制位图到目标设备;dwRop为光栅操作代码。
图4所示是采用双缓冲机制绘图的过程图。
3 结 语
通过组态软件中图形组态的实现,将生产过程中的实时数据动态展示在组态画面中,组成与生产过程现场相对应的动态画面,提高了工业控制系统项目管理的灵活性和扩展性,并为工程师和操作员执行权限范围内的操作提供了方便。
图4 采用双缓冲机制绘图过程
随着电力、石化、能源等领域控制系统规模的不断扩大,设备逐渐增多,工业控制系统现场环境也变得更复杂,因此对组态软件系统结构的功能要求、性能要求和安全要求也变得越来越高。同时,软件工程的理论和工控领域控制系统技术的不断发展,组态软件的整体设计要求也变得越来越高,对组态软件的扩充和完善将是工控领域长久的需求。
参 考 文 献
[1]王亚青,陈青,刘畅生,等.组态软件设计与开发[M].西安:西安电子科技大学出版社,2003.
[2]林伟.浅谈组态软件的发展趋势[J].自动化博览,2003,20(3):45-47.
[3]朱小菲.工控组态软件的设计与实现[D].长春:吉林大学,2005.
[4]王亚民.DCS组态软件实现方法研究[J].测控技术,2005(9): 50-53.
[5]周欣然. 组态软件的设计[D]. 长沙:中南大学,2003.
Configuration implementation of configuration software image face to the industrial areas
ZUO Jiao
(North China Computer Systems Engineering Institute, Beijing 100083, China)
Abstract: Configuration means using software tools to configure different kinds of resources, and make it works as reserved settings automatic to execute specific tasks. Configuration software is a platform tool for monitoring face to the industrial areas and data collection system. Engineers can preset configuration project according to different industrial control program for operator to use intelligently. The function structure of configuration software includes configuration project management, parameter configuration, and configuration running. The main parts of configuration are graph configuration, report form configuration, alarm configuration, variable setting, tendency setting, user management and master card setting. The implementation method of graph configuration is introduced, which includes the generation of configuration picture and animation connection of configuration software.
Keywords: configuration software; graphical configuration; screen generation; animation connection
动画属性与相应设备的I/O变量相关,变量的变化表现为画面中动态图形元素的颜色变化、大小变化、位置变化、可见度变化和闪烁性变化,图形元素的存在形态随着所绑定的变量值的变化而变化。在组态软件运行环境下,画面中建立了动画连接的图形即根据数据变量或表达式的变化进行显示。
用户可选中画面中的图形元素进行动态图形元素的动画连接设置,双击图形元素,即弹出动画连接设置对话框,再选择该图形的动画类型,例如需要给该图形设置填充属性,则点击“填充属性”按钮,弹出填充属性设置对话框,在此对话框内,对图元填充动画进行设置。用户可根据生产运行实际情况设置相应图元对应的动画连接,利用动画连接,系统将生成一系列画面组态信息动画信息,并将他们保存在数据文件中,供组态运行程序调用。图2所示是动画连接设置界面,图3所示是其组态运行界面图。
图2 动画连接设置界面
图3 组态运行界面
2.3 画面编辑界面闪烁的解决方法
随着工业现场监测点增加,组态画面中的图形元素将越来越多,在对界面中图元进行添加、删除、修改等操作时会造成延迟,甚至是绘图界面闪烁,大大降低了用户的操作体验。
通常由OnPaint函数调用OnDraw函数,OnDraw和OnPaint函数完成绘图过程[4]。在MFC绘图处理机制中,重绘画面时会先清除显示区,使之成为背景色,然后再调用OnPaint函数进行绘制,而当窗口中图元颜色、位置等变化后均会重绘画面。为了画面元素易于识别,通常将画面背景色与图元颜色设置为不同颜色,当重绘画面时背景色与画面中的显示图形将在极短的时间内交替出现,造成画面窗口刷新闪烁,影响用户体验。因此,本文采用双缓冲机制来解决界面闪烁的问题。
双缓冲机制绘图的实现即在画面显示在屏幕上之前,在内存中创建一个缓冲区对象,该对象与组态画面绘图区域一致,将图形元素绘制到内存的这个对象上,再通过调用BOOLBitBlt(intx,inty,intnWidth,intnHeight,CDC*pSrcDC,intxSrc,intySrc,DWORDdwRop)函数,将这个对象上的图形一并拷贝到画面绘图区域中,由于绘图的速度较快,人眼无法感觉到闪烁,从而解决了绘图界面闪烁的问题。
其中:x为目标矩形区域的左上角x轴坐标点;y为目标矩形区域的左上角y轴坐标点;nWidth为在目标设备中绘制位图的宽度;nHight为在目标设备中绘制位图的高度;pSrcDC为源设备上下文对象指针;xSrc为源设备上下文的起点x轴坐标,函数从该起点复制位图到目标设备;ySrc为源设备上下文的起点y轴坐标,函数从该起点复制位图到目标设备;dwRop为光栅操作代码。
图4所示是采用双缓冲机制绘图的过程图。
3 结 语
通过组态软件中图形组态的实现,将生产过程中的实时数据动态展示在组态画面中,组成与生产过程现场相对应的动态画面,提高了工业控制系统项目管理的灵活性和扩展性,并为工程师和操作员执行权限范围内的操作提供了方便。
图4 采用双缓冲机制绘图过程
随着电力、石化、能源等领域控制系统规模的不断扩大,设备逐渐增多,工业控制系统现场环境也变得更复杂,因此对组态软件系统结构的功能要求、性能要求和安全要求也变得越来越高。同时,软件工程的理论和工控领域控制系统技术的不断发展,组态软件的整体设计要求也变得越来越高,对组态软件的扩充和完善将是工控领域长久的需求。
参 考 文 献
[1]王亚青,陈青,刘畅生,等.组态软件设计与开发[M].西安:西安电子科技大学出版社,2003.
[2]林伟.浅谈组态软件的发展趋势[J].自动化博览,2003,20(3):45-47.
[3]朱小菲.工控组态软件的设计与实现[D].长春:吉林大学,2005.
[4]王亚民.DCS组态软件实现方法研究[J].测控技术,2005(9): 50-53.
[5]周欣然. 组态软件的设计[D]. 长沙:中南大学,2003.
Configuration implementation of configuration software image face to the industrial areas
ZUO Jiao
(North China Computer Systems Engineering Institute, Beijing 100083, China)
Abstract: Configuration means using software tools to configure different kinds of resources, and make it works as reserved settings automatic to execute specific tasks. Configuration software is a platform tool for monitoring face to the industrial areas and data collection system. Engineers can preset configuration project according to different industrial control program for operator to use intelligently. The function structure of configuration software includes configuration project management, parameter configuration, and configuration running. The main parts of configuration are graph configuration, report form configuration, alarm configuration, variable setting, tendency setting, user management and master card setting. The implementation method of graph configuration is introduced, which includes the generation of configuration picture and animation connection of configuration software.
Keywords: configuration software; graphical configuration; screen generation; animation connection