1.4 认识MCGS组态软件
MCGS(Monitor and Control Generated System,通用监控系统)是一套用于快速构造和生成计算机监控系统的组态软件,它能够在Microsoft的各种Windows操作系统上运行,通过对现场数据的采集处理,以动画显示、报警处理、流程控制、报表输出等多种方式向用户提供解决实际工程问题的方案,它充分利用了Windows操作系统图形功能完备、界面一致性好、易学易用的特点,比以往使用专用机开发的工业控制系统具有更好的通用性,在自动化领域有着更广泛的应用。
1.4.1 MCGS组态软件的构成
1.MCGS组态软件的整体结构
MCGS组态软件(以下简称MCGS)由“MCGS组态环境”和“MCGS运行环境”两个部分组成,如图1-2所示。两部分互相独立,又紧密相关。
图1-2 MCGS组态软件的整体结构
MCGS组态环境是生成用户应用系统的工作环境,由可执行程序McgsSet.exe支持,其存放于MCGS目录的Program子目录中。用户在MCGS组态环境中完成动画设计、设备连接、编写控制流程、编制工程打印报表等全部组态工作后,生成扩展名为.mcg的工程文件,又称为组态结果数据库。其与MCGS运行环境一起构成了用户应用系统,统称为“工程”。
MCGS运行环境是用户应用系统的运行环境,由可执行程序McgsRun.exe支持,其存放于MCGS目录的Program子目录中。它在运行环境中完成对工程的控制工作。
2.MCGS工程的五大部分
MCGS组态软件所建立的工程由主控窗口、设备窗口、用户窗口、实时数据库窗口和运行策略窗口5部分构成。每一部分分别进行组态操作,完成不同的工作,具有不同的特性。
1)主控窗口。主控窗口是工程的主窗口或主框架。在主控窗口中可以放置一个设备窗口和多个用户窗口,负责调度和管理这些窗口的打开或关闭。主要的组态操作包括定义工程的名称、编制工程菜单、设计封面图形、确定自动启动的窗口、设定动画刷新周期、指定数据库存盘文件名称及存盘时间等。
2)设备窗口。设备窗口是连接和驱动外部设备的工作环境。本窗口内配置了数据采集与控制输出设备,注册设备驱动程序,定义连接与驱动设备的数据变量。
3)用户窗口。用户窗口主要用于设置工程中人机交互的界面,例如生成各种动画显示画面、报警输出和数据与曲线图表等。
4)实时数据库窗口。实时数据库窗口是工程各个部分的数据交换与处理中心,它将MCGS工程的各个部分连接成有机的整体。在本窗口内定义不同类型和名称的变量,作为数据采集、处理、输出控制、动画连接及设备驱动的对象。
5)运行策略窗口。运行策略窗口主要完成工程运行流程的控制,包括编写控制程序(例如if…then脚本程序),选用各种功能构件,如数据提取、配方操作、多媒体输出等。
组态工作开始时,系统只为用户搭建了一个能够独立运行的空框架,提供了丰富的动画部件与功能部件。
如果要完成一个实际的应用系统,应主要完成以下工作:首先,要像搭积木一样,在组态环境中用系统提供的或用户扩展的构件构造应用系统,配置各种参数,形成一个有丰富功能的可实际应用的工程;然后,把组态环境中的组态结果提交给运行环境。运行环境和组态结果一起构成了用户自己的应用系统。
3.MCGS组态软件的工作方式
(1)MCGS与设备进行通信
MCGS通过设备驱动程序与外部设备进行数据交换,其中包括数据采集和发送设备指令。设备驱动程序是由Visual Basic程序设计语言编写的DLL(动态链接库)文件,设备驱动程序中包含符合各种设备通信协议的处理程序,它将设备运行状态的特征数据采集进来或发送出去。MCGS负责在运行环境中调用相应的设备驱动程序,将数据传送到工程中的各个部分,完成整个系统的通信过程。每个驱动程序独占一个线程,以达到互不干扰的目的。
(2)MCGS产生动画效果
MCGS为每一种基本图形元素定义了不同的动画属性,如一个长方形的动画属性有可见度、大小变化、水平移动等,每一种动画属性都会产生一定的动画效果。所谓动画属性,实际上是反映图形大小、颜色、位置、可见度、闪烁性等状态的特征参数。然而在组态环境中生成的画面都是静止的,如何在工程运行中产生动画效果呢?方法是采用动画连接。当工业现场中控制对象的状态(如储油罐的液面高度等)发生变化时,通过设备驱动程序将变化的数据采集到实时数据库的变量中,该变量是与动画属性相关的变量,数值的变化,使图形的状态产生相应的变化(如大小变化)。现场的数据是连续被采集进来的,这样就会产生逼真的动画效果(如储油罐液面的升高和降低)。
(3)MCGS实施远程多机监控
MCGS提供了一套完善的网络机制,可通过TCP/IP网、Modem网和串口网将多台计算机连接在一起,构成分布式网络控制系统,实现网络间的实时数据同步、历史数据同步和网络事件的快速传递。同时,可利用MCGS提供的网络功能,在工作站上直接对服务器中的数据库进行读写操作。分布式网络控制系统的每一台计算机都要安装一套MCGS工控组态软件。MCGS把各种网络形式,以父设备构件和子设备构件的形式,供用户调用,并且用户可以进行工作状态、端口号、工作站地址等属性参数的设置。
(4)对工程运行流程实施有效控制
MCGS开辟了专用的运行策略窗口来建立用户运行策略。MCGS提供了丰富的功能构件,供用户选用。通过构件配置和属性设置两项组态操作,生成各种功能模块(称为“用户策略”),使系统能够按照设定的顺序和条件操作实时数据库,实现对动画窗口的任意切换,控制系统的运行流程和设备的工作状态。所有的操作均采用面向对象的直观方式,避免了烦琐的编程工作。
1.4.2 MCGS组态软件的基本操作
1.MCGS组态软件常用术语
1)工程:用户应用系统的简称。引入工程的概念,是为了使复杂的计算机专业技术更贴近普通工程用户。在MCGS组态环境中生成的文件称为工程文件,其扩展名为.mcg,存放于MCGS目录的WORK子目录中,如“D:\MCGS\WORK\MCGS例程1.mcg”。
2)对象:操作目标与操作环境的统称。如窗口、构件、数据、图形等,皆称为对象。
3)选中对象:单击窗口或对象,使其处于可操作状态,称此操作为选中对象,被选中的对象(包括窗口),也称为当前对象。
4)组态:在窗口环境内进行对象的定义、制作和编辑,并设定其状态特征(属性)参数,将此项工作称为组态。
5)属性:对象的名称、类型、状态、性能及用法等特征的统称。
6)菜单:是执行某种功能的命令集合。如系统菜单中的“文件”菜单命令,是用来处理与工程文件有关的执行命令。位于窗口顶端菜单条内的菜单命令称为顶层菜单,一般分为独立的菜单项和下拉菜单两种形式,下拉菜单还可分成多级,每一级称为次级子菜单。
7)构件:具备某种特定功能的程序模块,可以用Visual Basic、VC等程序设计语言编写,通过编译,生成DLL、OCX等文件。用户对构件设置一定的属性,并与定义的数据变量相连接,即可在系统运行中实现相应的功能。
8)策略:是指对系统运行流程进行有效控制的措施和方法。
9)启动策略:在进入运行环境后首先运行的策略,只运行一次,一般完成系统初始化的处理。该策略由MCGS自动生成,具体处理的内容由用户填充。
10)循环策略:按照用户指定的周期,循环执行策略块内的内容,通常用来完成流程控制任务。
11)退出策略:退出运行环境时执行的策略。该策略由MCGS自动生成,自动调用,一般由该策略模块完成系统结束运行前的善后处理任务。
12)用户策略:由用户定义,用来完成特定的功能。用户策略一般由按钮、菜单、其他策略来调用执行。
13)事件策略:当开关型变量发生跳变时(1到0,或0到1)执行的策略,只运行一次。
14)热键策略:当用户按下定义的快捷键(如〈Ctrl+D〉)时执行的策略,只运行一次。
15)可见度:指对象在窗口内的显现状态,即可见与不可见。
16)变量类型:MCGS定义的变量有5种类型,即数值型、开关型、字符型、事件型和组对象。
17)事件对象:用来记录和标识某种事件的产生或状态的改变,如开关量的状态发生变化。
18)组对象:用来存储具有相同存盘属性的多个变量的集合,其内部成员可包含多个其他类型的变量。组对象只是对有关联的某一类数据对象的整体表示方法,而系统实际的操作则均针对每个成员进行。
19)动画刷新周期:动画更新速度,即颜色变换、物体运动、液面升降的快慢等,以ms为单位。
20)父设备:本身没有特定功能,但可以和其他设备一起与计算机进行数据交换的硬件设备,如串口父设备。
21)子设备:必须通过一种父设备与计算机进行通信的设备,如岛电SR25仪表、研华4017模块等。
22)模拟设备:在对工程文件测试时,提供可变化的数据的内部设备,可提供多种变化方式。
23)数据库存盘文件:MCGS工程文件在硬盘中存储时的文件,为MDB文件,一般以工程文件的文件名+“D”进行命名,存储在MCGS目录的WORK子目录中。
2.MCGS组态软件的操作方式
(1)系统工作台面
系统工作台面是MCGS组态操作的总工作台面。双击“MCGS组态环境”图标,或执行“开始”→“程序”→“MCGS组态软件”→“MCGS组态环境”命令,弹出的窗口即为MCGS的工作台窗口,其中设有如下内容。
1)标题栏:显示“MCGS组态环境——工作台”标题、工程文件名称和所在目录。
2)菜单条:设置MCGS的菜单系统。
3)工具条:设有对象编辑和组态用的工具按钮。不同的窗口设有不同功能的工具条按钮。
4)工作台面:进行组态操作和属性设置。上部设有5个窗口标签,分别对应主控窗口、设备窗口、用户窗口、实时数据库窗口和运行策略窗口。单击这些标签,即可将相应的窗口激活,进行相应的组态操作;工作台右侧还设有创建对象和对象组态的功能按钮。
(2)组态工作窗口
组态工作窗口是创建和配置图形对象、数据对象和各种构件的工作环境,又称为对象的编辑窗口。它主要包括组成工程框架的5个窗口,即主控窗口、设备窗口、用户窗口、实时数据库窗口和运行策略窗口,分别完成工程命名和属性设置、设备连接、动画设计、定义数据变量、编写控制流程等组态操作。
(3)属性设置窗口
属性设置窗口是设置对象各种特征参数的工作环境,又称为属性设置对话框。对象不同,属性设置窗口的内容也各异,但结构形式大体相同。主要由下列几部分组成。
1)窗口标题:位于窗口顶部,显示“××属性设置”字样的标题。
2)窗口标签:不同的属性设置窗口分页排列,窗口标签作为分页的标记,各类窗口分页排列,单击窗口标签,即可将相应的选项卡激活,进行属性设置。
3)输入框:设置属性的输入框,左侧标有属性注释文字,框内输入属性内容。为了便于用户操作,许多输入框的右侧有“?”“▲”“…”等标志符号的选项按钮,单击该按钮,将弹出列表框,双击列表框中所需要的项目,即可将其设置于输入框内。
4)单选按钮:带有“○”标记的属性设定器件。同一设置栏内有多个单选按钮时,只能选择其一。
5)复选框:带有“□”标记的属性设定器件。同一设置栏内有多个复选框时,可以设置多个。
6)功能按钮:一般设有“检查”“确认”“取消”“帮助”4种按钮。“检查”按钮用于检查当前属性设置内容是否正确;“确认”按钮用于属性设置完毕,返回组态窗口;“取消”按钮用于取消当前的设置,返回组态窗口;“帮助”按钮用于查阅在线帮助文件。
(4)图形库工具箱
MCGS为用户提供了丰富的组态资源,包括如下几种。
1)系统图形工具箱:进入用户窗口,单击工具条中的“工具箱”按钮,打开图形工具箱,其中设有各种图元、图符、组合图形及动画构件的位图图符。利用这些最基本的图形元素,可以制作出任何复杂的图形。
2)设备工具箱:进入设备窗口,单击工具条中的“工具箱”按钮,打开设备工具箱,其中设有与工控系统经常选用的控制设备相匹配的各种设备构件。选用所需的构件,放置到设备窗口中,经过属性设置和通道连接后,该构件即可实现对外部设备的驱动和控制。
3)策略工具箱:进入运行策略窗口,单击工具条中的“工具箱”按钮,打开策略工具箱,工具箱内包含所有策略功能构件。选用所需的构件,生成用户策略模块,实现对系统运行流程的有效控制。
4)对象元件库:对象元件库是存放组态完好的并具有通用价值的动画图形的图形库,以便于对组态成果的重复利用。进入用户窗口的组态窗口,执行“工具”→“对象元件库管理”命令,或者打开系统图形工具箱,选择“插入元件”选项,可打开对象元件库管理窗口,进行存放图形的操作。
(5)工具按钮
工作台窗口的工具条内排列着标有各种位图图标的按钮,称为工具条功能按钮,简称工具按钮。许多按钮的功能与菜单条中的菜单命令相同,但操作更加简便,因此在组态操作中经常被使用。
3.组建用户工程的一般过程
(1)工程项目系统分析
分析工程项目的系统构成、技术要求和工艺流程,弄清系统的控制流程和控制对象的特征,明确监控要求和动画显示方式,分析工程中的设备采集及输出通道与软件中实时数据库变量的对应关系,分清哪些变量是要求与设备连接的,哪些变量是软件内部用来传递数据及动画显示的。
(2)工程立项搭建框架
它在MCGS中称为建立新工程。其主要内容包括定义工程名称、封面窗口名称和启动窗口(封面窗口退出后接着显示的窗口)名称,指定存盘数据库文件的名称及存盘数据库,设定动画刷新的周期。经过此步操作,即在MCGS组态环境中建立了由5部分组成的工程结构框架。封面窗口和启动窗口也可等建立了用户窗口后再建立。
(3)设计菜单基本体系
为了对系统运行的状态及工作流程进行有效的调度和控制,通常要在主控窗口内编制菜单。编制菜单分两步进行,第一步搭建菜单的框架,第二步对各级菜单命令进行功能组态。在组态过程中,可根据实际需要,随时对菜单的内容进行增加或删除,来不断完善工程的菜单。
(4)制作动画显示画面
动画制作分为静态图形设计和动态属性设置两个过程。前一部分类似于“画画”,用户通过MCGS组态软件提供的基本图形元素及动画构件库,在用户窗口内“组合”成各种复杂的画面。后一部分则是设置图形的动画属性,与实时数据库中定义的变量建立相关性的连接关系,作为动画图形的驱动源。
(5)编写控制流程程序
在运行策略窗口内,从策略构件箱中选择所需功能策略构件,构成各种功能模块(称为策略块),由这些模块实现各种人机交互操作。MCGS还为用户提供了编程用的功能构件(称为“脚本程序”功能构件),它可以使用简单的编程语言编写工程控制程序。
(6)完善菜单按钮功能
其包括对菜单命令、监控器件、操作按钮的功能组态;实现历史数据、实时数据、各种曲线、数据报表、报警信息输出等功能;建立工程安全机制等。
(7)编写程序调试工程
利用调试程序产生的模拟数据检查动画显示和控制流程是否正确。
(8)连接设备驱动程序
选定与设备相匹配的设备构件,连接设备通道,确定数据变量的数据处理方式,完成设备属性的设置。此项操作在设备窗口内进行。
(9)工程完工综合测试
最后测试工程各部分的工作情况,完成整个工程的组态工作,实施工程交接。