upfiles\文件下载\组态课件

Download Report

Transcript upfiles\文件下载\组态课件

人机监控界面系统的构成





一般人机界面监控
系统的构成如右
操作员(User)面对
PC机
PC机利用各种通
讯手段与PLC建立
通讯
PC从PLC中获得
数据,并利用PC
的强大图形功能动
态显示这些数据
PLC完成对生产设
备的控制
User
PC
PLC
Pump
角色-用户-资源
Role(Sysmgr)
Role(Operator)(角色)
(用户)User
Port (端口)
(资源)
Resource
Resource
(设备) Device
Point
(点)
角色-用户-资源




角色(Role):一组使用监控计算机的人,这一组人具有
相同的操作权限
用户(User):要使用监控计算机的每一个人,每个用户
有自己的标识符(User ID)及登录密码,用户还可以有
自己的名字(User Name)
资源(Resource):由PLC控制的、被用户所监控的对象,
这是一个抽象的概念,它可以是一条生产线、也可以是
一台泵
在工程结构中,角色是让用户有权使用特许功能的机制,
每个用户被指定一种角色。相反地,一种角色可以分配
给几个用户。
端口 - 设备 - 点



端口(Port):计算机用来与 PLC 通讯的通讯端口,可以
是串行口(COM1、COM2),也可以是计算机上的以太
网卡、令牌环网卡、DDE通讯通道
设备(Device):与监控计算机通讯相连的 PLC,这些设
备挂在计算机的通讯端口下
点(Point):监控计算机从 PLC 中读取的变量、或者是
计算机内存中的虚拟变量(不对应于 PLC 中的某个变
量)
端口
设备
第一讲
组态软件概述
 一、MCGS组态软件的功能和特点
MCGS即“监视与控制通用系统”,英文全称为
Monitor and Control Generated System。MCGS是
为工业过程控制和实时监测领域服务的通用计算机
系统软件,具有功能完善、操作简便、可视性好、
可维护性强的突出特点。
MCGS工控组态软件的功能和特点可归纳如下:
1.概念简单,易于理解和使用。普通工程人员经
过短时间的培训就能正确掌握、快速完成多数简单
工程项目的监控程序设计和运行操作。
2.功能齐全,便于方案设计。MCGS从设备驱动
(数据采集)到数据处理、报警处理、流程控制、
动画显示、报表输出、曲线显示等各个环节,均有
丰富的功能组件和常用图形库可供选用。
3. 实时性与并行处理。MCGS充分利用了Windows
操作平台的多任务、按优先级分时操作的功能,
使PC机广泛应用于工程测控领域成为可能。
4. 建立实时数据库,便于用户分步组态,保证系统
安全可靠运行。MCGS组态软件由主控窗口、设
备窗口、用户窗口、实时数据库和运行策略五部
分构成。其中的“实时数据库”是整个系统的核
心。
5.设立“设备工具箱”,针对外部设备的特征,用
户从中选择某种“构件”,设置于设备窗口内,
赋予相关的属性,建立系统与外部设备的连接关
系,即可实现对该种设备的驱动和控制。
6. “面向窗口”的设计方法,增加了可视性和可操
作性。以窗口为单位,构造用户运行系统的图形
界面,使得MCGS的组态工作既简单直观,又灵
活多变。
7.利用丰富的“动画组态”功能,快速构造各种复
杂生动的动态画面。以图象、图符、数据、曲线
等多种形式,为操作员及时提供系统运行中的的
状态、品质及异常报警等有关信息。
8.引入“运行策略”的概念。复杂的工程作业,运
行流程都是多分支的。用传统的编程方法实现,
既繁琐又容易出错。MCGS开辟了“策略窗口”,
用户可以选用系统提供的各种条件和功能的“策
略构件”。
9.MCGS系统由五大功能部件组成,主要的功能部件
以构件的形式来构造。不同的构件有着不同的功能,
且各自独立。三种基本类型的构件(设备构件、动
画构件、策略构件)完成了MCGS系统三大部分
(设备驱动、动画显示和流程控制)的所有工作。
10.MCGS中数据的存储不再使用普通的文件,而是
用数据库来管理一切。
11.设立“对象元件库”,解决了组态结果的积累和重
新利用问题。所谓对象元件库,实际上是分类存储
各种组态对象的图库。
12.提供对网络的支持。考虑到工控系统今后的发展趋
势,MCGS充分运用现今发展的DCCW(Distributed
Computer Cooperator Work)技术,即分布式计算
机协同工作方式,来使分散在不同现场之间的采集
系统和工作站之间协同工作。
 二、MCGS组态软件的系统构成
1.MCGS组态软件的整体结构
MCGS组态软件(以下简称MCGS)由“MCGS组
态环境”和“MCGS运行环境”两个系统组成。两
部分互相独立,又紧密相关。
① MCGS组态环境是生成用户应用系统的工作环境,
用户在MCGS组态环境中完成全部组态工作。
②MCGS运行环境是用户应用系统的运行环境,在
运行环境中完成对工程的控制工作。
2. MCGS工程的五大部分
MCGS组态软件所建立的工程由主控窗口、设备窗
口、用户窗口、实时数据库和运行策略五部分构成,
每一部分分别进行组态操作,完成不同的工作,具
有不同的特性。
①主控窗口:是工程的主窗口或主框架。主要的组
态操作包括:定义工程的名称,编制工程菜单,设
计封面图形,确定自动启动的窗口,设定动画刷新
周期,指定数据库存盘文件名称及存盘时间等。
②设备窗口:是连接和驱动外部设备的工作环境。
在本窗口内配置数据采集与控制输出设备,注册设
备驱动程序,定义连接与驱动设备用的数据变量。
③用户窗口:本窗口主要用于设置工程中人机交互
的界面。诸如:生成各种动画显示画面、报警输出、
数据与曲线图表等。
④实时数据库:是工程各个部分的数据交换与处理
中心,它将MCGS工程的各个部分连接成有机的整
体。在本窗口内定义不同类型和名称的变量,作为
数据采集、处理、输出控制、动画连接及设备驱动
的对象。
⑤ 运行策略:本窗口主要完成工程运行流程的控制。
包括编写控制程序(if…then脚本程序),选用各种
功能构件,如:数据提取、历史曲线、定时器、配
方操作、多媒体输出等。
 三、MCGS组态软件的工作方式
1. MCGS如何与设备进行通讯:
MCGS通过设备驱动程序与外部设备进行数据交换。
包括数据采集和发送设备指令。MCGS负责在运行
环境中调用相应的设备驱动程序,将数据传送到工
程中各个部分,完成整个系统的通讯过程。每个驱
动程序独占一个线程,达到互不干扰的目的。
2. MCGS如何产生动画效果:
MCGS为每一种基本图形元素定义了不同的动画属
性,所谓动画属性,实际上是反映图形大小、颜色、
位置、可见度、闪烁性等状态的特征参数。如:一
个长方形的动画属性有可见度,大小变化,水平移
动等,每一种动画属性都会产生一定的动画效果。
思考:我们在组态环境中生成的画面都是静止的,如
何在工程运行中产生动画效果呢?
方法是:图形的每一种动画属性中都有一个“表达
式”设定栏,在该栏中设定一个与图形状态相联系
的数据变量,连接到实时数据库中,以此建立相应
的对应关系,MCGS称之为动画连接。
3. MCGS如何实施远程多机监控:
MCGS提供了一套完善的网络机制,可通过TCP/IP
网、Modem网和串口网将多台计算机连接在一起,
构成分布式网络测控系统,实现网络间的实时数据
同步、历史数据同步和网络事件的快速传递。
4.如何对工程运行流程实施有效控制:
MCGS开辟了专用的“运行策略”窗口,建立用户
运行策略。MCGS提供了丰富的功能构件,供用户
选用,通过构件配置和属性设置两项组态操作,生
成各种功能模块(称为“用户策略”),使系统能
够按照设定的顺序和条件,操作实时数据库,实现
对动画窗口的任意切换,控制系统的运行流程和设
备的工作状态。
第二讲

MCGS组态软件常用术语
一、MCGS组态软件常用术语
工程:用户应用系统的简称。在MCGS组态环境中
生成的文件称为工程文件,后缀为.mcg,存放于
MCGS目录的WORK子目录中。如:
“D:\MCGS\WORK\MCGS例程1.mcg”。
对象:操作目标与操作环境的统称。如窗口、构件、
数据、图形等皆称为对象。
选中对象:鼠标点击窗口或对象,使其处于可操作状
态,称此操作为选中对象,被选中的对象(包括窗
口),也叫当前对象。
组态:在窗口环境内,进行对象的定义、制作和编辑,
并设定其状态特征(属性)参数,将此项工作称为
组态。
属性:对象的名称、类型、状态、性能及用法等特征
的统称。
菜单:是执行某种功能的命令集合。位于窗口顶端
菜单条内的菜单命令称为顶层菜单,一般分为独立
的菜单项和下拉菜单两种形式,下拉菜单还可分成
多级,每一级称为次级子菜单。
构件:具备某种特定功能的程序模块,可以用VB,VC
等程序设计语言编写,通过编译,生成DLL、OCX等
文件。用户对构件设置一定的属性,并与定义的数
据变量相连接,即可在运行中实现相应的功能。
策略:是指对系统运行流程进行有效控制的措施和
方法。
启动策略:在进入运行环境后首先运行的策略,只
运行一次,一般完成系统初始化的处理。该策略由
MCGS自动生成,具体处理的内容由用户充填。
循环策略:按照用户指定的周期时间,循环执行策
略块内的内容,通常用来完成流程控制任务。
退出策略:退出运行环境时执行的策略。该策略由
MCGS自动生成,自动调用,一般由该策略模块完
成系统结束运行前的善后处理任务。
用户策略:由用户定义,用来完成特定的功能。用
户策略一般由按钮、菜单、其他策略来调用执行。
事件策略:当开关型变量发生跳变时(1到0,或0
到 1),执行的策略,只运行一次。
热键策略:当用户按下定义的组合热键(如:
Ctrl+D)时执行的策略,只运行一次。
可见度:指对象在窗口内的显现状态,即可见与不
可见。
变量类型:MCGS定义的变量有五种类型:数值型、
开关型、字符型、事件型和组对象。
事件对象:用来记录和标识某种事件的产生或状态
的改变。如开关量的状态发生变化。
组对象:用来存储具有相同存盘属性的多个变量的集
合,内部成员可包含多个其他类型的变量。组对象
只是对有关联的某一类数据对象的整体表示方法,
而实际的操作则均针对每个成员进行。
动画刷新周期:动画更新速度,即颜色变换、物体
运动、液面升降的快慢等,以毫秒为单位。
父设备:本身没有特定功能,但可以和其他设备一
起与计算机进行数据交换的硬件设备。如:串口父
设备。
子设备:必须通过一种父设备与计算机进行通讯的
设备。如:岛电SR25仪表、研华4017模块等。
模拟设备:在对工程文件测试时,提供可变化的数
据的内部设备,可提供多种变化方式。
 二、MCGS组态软件的操作方式
系统工作台面:是MCGS组态操作的总工作台面。鼠标双击
Windows95/98/NT工作台面上的“MCGS组态环境”图标,
或执行“开始”菜单中的“MCGS组态环境”菜单项,弹出
的窗口即为MCGS的工作台窗口。
组态工作窗口: 是创建和配置图形对象、数据对象和各种构
件的工作环境,又称为对象的编辑窗口。主要包括:主控窗
口,用户窗口,设备窗口,运行策略窗口,实时数据库窗口。
属性设置窗口:是设置对象各种特征参数的工作环
境,又称属性设置对话框。对象不同,属性窗口的
内容各异,但结构形式大体相同。
图形库工具箱: MCGS为用户提供了丰富的组态资
源。
工具按钮一览:工作台窗口的工具条一栏内,排列
标有各种位图图标的按钮,称为工具条功能按钮,
简称为工具按钮。
第三讲

建立新工程
一、组建工程的一般过程
工程项目系统分析:分析工程项目的系统构成、技术要求和
工艺流程,弄清系统的控制流程和测控对象的特征,明确监
控要求和动画显示方式,分析工程中的设备采集及输出通道
与软件中实时数据库变量的对应关系,分清哪些变量是要求
与设备连接的,哪些变量是软件内部用来传递数据及动画显
示的。
工程立项搭建框架:MCGS称为建立新工程。主要内容包括:
定义工程名称、封面窗口名称和启动窗口(封面窗口退出后
接着显示的窗口)名称,指定存盘数据库文件的名称以及存
盘数据库,设定动画刷新的周期。经过此步操作,即在
MCGS组态环境中,建立了由五部分组成的工程结构框架。
封面窗口和启动窗口也可等到建立了用户窗口后,再行建立。
设计菜单基本体系:为了对系统运行的状态及工作流程进行
有效地调度和控制,通常要在主控窗口内编制菜单。编制菜
单分两步进行,第一步首先搭建菜单的框架,第二步再对各
级菜单命令进行功能组态。在组态过程中,可根据实际需要,
随时对菜单的内容进行增加或删除,不断完善工程的菜单。
制作动画显示画面:动画制作分为静态图形设计和动态属性
设置两个过程。前一部分类似于“画画”,用户通过MCGS
组态软件中提供的基本图形元素及动画构件库,在用户窗口
内“组合”成各种复杂的画面。后一部分则设置图形的动画
属性,与实时数据库中定义的变量建立相关性的连接关系,
作为动画图形的驱动源。
编写控制流程程序:在运行策略窗口内,从策略构件箱中,
选择所需功能策略构件,构成各种功能模块(称为策略块),
由这些模块实现各种人机交互操作。MCGS还为用户提供了
编程用的功能构件(称之为“脚本程序”功能构件),使用
简单的编程语言,编写工程控制程序。
完善菜单按钮功能:包括对菜单命令、监控器件、操作按钮
的功能组态;实现历史数据、实时数据、各种曲线、数据报
表、报警信息输出等功能;建立工程安全机制等。
编写程序调试工程:利用调试程序产生的模拟数据,检查动
画显示和控制流程是否正确。
连接设备驱动程序:选定与设备相匹配的设备构件,连接设
备通道,确定数据变量的数据处理方式,完成设备属性的设
置。此项操作在设备窗口内进行。
工程完工综合测试:最后测试工程各部分的工作情况,完成
整个工程的组态工作,实施工程交接。
 二、建立新工程(以水位控制系统为例)
[1] 鼠标单击文件菜单中“新建工程”选项,如果MCGS安装在
D:盘根目录下,则会在D:\MCGS\WORK\下自动生成新
建工程,默认的工程名为:“新建工程X.MCG”(X表示新建
工程的顺序号,如:0、1、2等)
[2] 选择文件菜单中的“工程另存为”菜单项,弹出文件保存窗
口。
[3] 在文件名一栏内输入“水位控制系统”,点击“保存”按钮,
工程创建完毕。
第四讲 制作工程画面

一、建立画面 (以水位控制系统为例)
[1] 在“用户窗口”中单击“新建窗口”按钮,建立“窗口0”。
[2] 选中“窗口0”,单击“窗口属性”,进入“用户窗口属性设
置”。
[3] 将窗口名称改为:水位控制;窗口标题改为:水位控制;窗
口位置选中“最大化显示”,其它不变,单击“确认”。
[4] 在“用户窗口”中,选中“水位控制”,点击右键,选择下
拉菜单中的“设置为启动窗口”选项,将该窗口设置为运行
时自动加载的窗口。
 二、编辑画面
选中“水位控制”窗口图标,单击“动画组态”,进入动画
组态窗口,开始编辑画面。
制作文字框图
[1] 单击工具条中的“工具箱”按钮,打开绘图工具箱。
[2] 选择“工具箱”内的“标签”按钮,鼠标的光标呈“十
字”形,在窗口顶端中心位置拖拽鼠标,根据需要拉出一个
一定大小的矩形。
[3] 在光标闪烁位置输入文字“水位控制系统演示工程”,按回
车键或在窗口任意位置用鼠标点击一下,文字输入完毕。
[4] 选中文字框,作如下设置:
点击(填充色)按钮,设定文字框的背景颜色为:没有填充;
点击(线色)按钮,设置文字框的边线颜色为:没有边线。
点击(字符字体)按钮,设置文字字体为:宋体;字型为:粗
体;大小为:26
点击(字符颜色)按钮,将文字颜色设为:蓝色。
制作水箱
[1] 单击绘图工具箱中的(插入元件)图标,弹出对象元件管理
对话框。
[2] 从“储藏罐”类中选取罐17、罐53。
[3] 从“阀”和“泵”类中分别选取2个阀(阀58、阀44)、1
个泵(泵40)。
[4] 将储藏罐、阀、泵调整为适当大小,放到适当位置,参照效
果图。
[5] 选中工具箱内的流动块动画构件图标,鼠标的光标呈“十”
字形,移动鼠标至窗口的预定位置,点击一下鼠标左键,移
动鼠标,在鼠标光标后形成一道虚线,拖动一定距离后,点
击鼠标左键,生成一段流动块。再拖动鼠标(可沿原来方向,
也可垂直原来方向),生成下一段流动块。
[6] 使用工具箱中的图标,分别对阀,罐进行文字注释。依次为:
水泵、水罐1、调节阀、水罐2、出水阀。
[7] 选择“文件”菜单中的“保存窗口”选项,保存画面。
第五讲 定义数据对象

实时数据库是MCGS工程的数据交换和数据处理中心。数据
对象是构成实时数据库的基本单元,建立实时数据库的过程
也就是定义数据对象的过程。

定义数据对象的内容主要包括:
指定数据变量的名称、类型、初始值和数值范围 。
确定与数据变量存盘相关的参数,如存盘的周期、存盘的时
间范围和保存期限等。

在开始定义之前,我们先对所有数据对象进行分析。
(以水位控制系统为例)
下面以数据对象“水泵”为例,介绍一下定义数据对象的步骤:
[1] 单击工作台中的“实时数据库”窗口标签,进入实时数据库
窗口页。
[2] 单击“新增对象” 按钮,在窗口的数据对象列表中,增加
新的数据对象,系统缺省定义的名称为“Data1”、“Data2”、
“Data3”等(多次点击该按钮,则可增加多个数据对象)。
[3] 选中对象,按“对象属性”按钮,或双击选中对象,则打开
“数据对象属性设置” 窗口。
[4] 将对象名称改为:水泵;对象类型选择:开关型;在对象
内容注释输入框内输入:“控制水泵启动、停止的变量”,
单击“确认”。
按照此步骤,根据上面列表,设置其他9个数据对象。
第六讲

动画连接
由图形对象搭制而成的图形画面是静止不动的,需要对这些
图形对象进行动画设计,真实地描述外界对象的状态变化,
达到过程实时监控的目的。MCGS实现图形动画设计的主要
方法是将用户窗口中图形对象与实时数据库中的数据对象建
立相关性连接,并设置相应的动画属性。在系统运行过程中,
图形对象的外观和状态特征,由数据对象的实时采集值驱动,
从而实现了图形的动画效果。
以水位控制系统为例需要制作动画效果的部分包括:
Ⅰ水箱中水位的升降
Ⅱ水泵、阀门的启停
Ⅲ水流效果
Ⅰ水箱中水位的升降效果
水位升降效果是通过设置数据对象“大小变化”连接类型实
现的。
具体设置步骤如下:
[1] 在用户窗口中,双击水罐1,弹出单元属性设置窗口。
[2] 单击“动画连接”标签。
[3] 选中折线,在右端出现。
[4] 单击进入动画组态属性设置窗口。按照下面的要求设
置各个参数:
表达式:液位1;
最大变化百分比对应的表达式的值:10;
其它参数不变。
[5] 单击“确认”,水罐1水位升降效果制作完毕。
水罐2水位升降效果的制作同理。单击进入动画组态属性设
置窗口后,按照下面的值进行参数设置:
表达式:液位2;
最大变化百分比对应的表达式的值:6;
其它参数不变。
Ⅱ水泵、阀门的启停
水泵、阀门的启停动画效果是通过设置连接类型对应的数据
对象实现的。

设置步骤如下:
[1]双击水泵,弹出单元属性设置窗口。
[2]选中"数据对象"标签中的"按钮输入",右端出现浏览按钮 。
[3]单击浏览按钮 ,双击数据对象列表中的"水泵" 。
[4]使用同样的方法将“填充颜色”对应的数据对象设置为
“水泵”。
[5]单击"确认",水泵的启停效果设置完毕。
调节阀的启停效果同理。只需在数据对象标签页中,
将“按钮输入”、“填充颜色”的数据对象均设置为:
调节阀。
出水阀的启停效果,需在数据对象标签页中,将“按
钮输入”、“可见度”的数据对象均设置为:出水阀。
Ⅲ水流效果
水流效果是通过设置流动块构件的属性实现的。

实现步骤如下:
[1]双击水泵右侧的流动块,弹出流动块构件属性设置窗口。
[2]在流动属性页中,进行如下设置:
表达式:水泵=1;
选择当表达式非零时,流块开始流动。
水罐1右侧流动块及水罐2右侧流动块的制作方法与此相
同,只需将表达式相应改为:调节阀=1,出水阀=1即
可。

至此动画连接已完成,按F5或点击工具条中图标,进入运行
环境,看一下组态后的结果。前面“建立画面”一节中,我
们已将“水位控制”窗口设置为启动窗口,所以在运行时,
系统自动运行该窗口。

这时我们看见的画面仍是静止的。移动鼠标到“水泵”、
“调节阀”、“出水阀”上面的红色部分,鼠标指针会呈手
形。单击一下,红色部分变为绿色,同时流动块相应地运动
起来,但水罐仍没有变化。这是由于我们没有信号输入,也
没有人为地改变水量。我们可以用如下方法改变其值,使水
罐动起来。

利用滑动输入器控制水位
以水罐1的水位控制为例:
[1]进入“水位控制”窗口。
[2]选中“工具箱”中的滑动输入器图标,当鼠标呈“十”后,
拖动鼠标到适当大小。
[3]调整滑动块到适当的位置。
[4]双击滑动输入器构件,进入属性设置窗口。按照下面的值设
置各个参数:
“基本属性”页中,滑块指向:指向左(上);
“刻度与标注属性”页中,“主划线数目”:5,即能
被10整除;
“操作属性”页中,对应数据对象名称:液位1;滑块
在最右(下)边时对应的值:10;
其它不变。
[5]在制作好的滑块下面适当的位置,制作一文字标签
(制作方法参见“编辑画面”一节),按下面的要求进
行设置:
输入文字:水罐1输入
文字颜色:黑色
框图填充颜色:没有填充
框图边线颜色:没有边线
[6]按照上述方法设置水罐2水位控制滑块,参数设置为:
“基本属性”页中,滑块指向:指向左(上);
“操作属性”页中,对应数据对象名称:液位2;滑块在最
右(下)边时对应的值:6;
其它不变。
[7]将水罐2水位控制滑块对应的文字标签设置为:
输入文字:水罐2输入
文字颜色:黑色
框图填充颜色:没有填充
框图边线颜色:没有边线
[8]点击工具箱中的常用图符按钮,打开常用图符工具箱。
[9]选择其中的凹槽平面按钮,拖动鼠标绘制一个凹槽平面,
恰好将两个滑动块及标签全部覆盖。
[10]选中该平面,点击编辑条中“置于最后面”按钮 。
此时按“F5”,进入运行环境后,可以通过拉动滑动输入器
而使水罐中的液面动起来。

利用旋转仪表控制水位
在工业现场一般都会大量地使用仪表进行数据显示。MCGS
组态软件适应这一要求提供了旋转仪表构件。用户可以利用
此构件在动画界面中模拟现场的仪表运行状态。具体制作步
骤如下:
[1]选取“工具箱”中的“旋转仪表” 图标,调整大小放在
水罐1下面适当位置。
[2]双击该构件进行属性设置。各参数设置如下:
“刻度与标注属性”页中,主划线数目:5;
“操作属性”页中,表达式:液位1;最大逆时钟角度:
90,对应的值:0;最大顺时钟角度:90,对应的值:10
其它不变。
[3]按照此方法设置水罐2数据显示对应的旋转仪表。参数设
置如下:
“操作属性”页中,表达式:液位2;最大逆时钟角度:90,
对应的值:0;最大顺时钟角度:90,对应的值:6;
其它不变。
进入运行环境后,可以通过拉动旋转仪表的指针使整个画
面动起来。
水量显示
为了能够准确地了解水罐1、水罐2的水量,我们可以通过
设置标签的“显示输出”属性显示其值,具体操作如下:
[1]单击“工具箱”中的“标签” 图标,绘制两个标签,调
整大小位置,将其并列放在水罐1下面。
第一个标签用于标注,显示文字为:水罐1
第二个标签用于显示水罐水量
[2]双击第一个标签进行属性设置,参数设置如下:
输入文字:水罐1
文字颜色:黑色
框图填充颜色:没有填充
框图边线颜色:没有边线
[3] 双击第二个标签,进入动画组态属性设置窗口。将:
填充颜色设置为:白色
边线颜色设置为:黑色
[4] 在输入输出连接域中,选中“显示输出” 选项,在
组态属性设置窗口中则会出现“显示输出”标签。
[5] 单击“显示输出”标签,设置显示输出属性。参数设
置如下:
表达式:液位1;
输出值类型:数值量输出;
输出格式:向中对齐;
整数位数:0;
小数位数:1。
[6]单击“确认”,水罐1水量显示标签制作完毕。
水罐2水量显示标签与此相同,需做的改动:
第一个用于标注的标签,显示文字为:水罐2;
第二个用于显示水罐水量的标签,表达式改为:液位2。
第七讲
编写控制流程
 脚本程序简介

用户脚本程序是由用户编制的、用来完成特定操作
和处理的程序,脚本程序的编程语法非常类似于普
通的Basic语言,但在概念和使用上更简单直观,力
求做到使大多数普通用户都能正确、快速地掌握和
使用。

对于大多数简单的应用系统,MCGS的简单组态就
可完成。只有比较复杂的系统,才需要使用脚本程
序,但正确地编写脚本程序,可简化组态过程,大
大提高工作效率,优化控制过程。

脚本语言编辑环境

脚本程序编辑环境是用户书写脚本语句的地方。脚本程
序编辑环境主要由脚本程序编辑框、编辑功能按钮、
MCGS操作对象列表和函数列表、脚本语句和表达式4
个部分构成,分别说明如下:

脚本程序编辑框用于书写脚本程序和脚本注释,用户必
须遵照MCGS规定的语法结构和书写规范书写脚本程序,
否则语法检查不能通过。

编辑功能按钮提供了文本编辑的基本操作,用户使
用这些操作可以方便操作和提高编辑速度。比如,
在脚本程序编辑框中选定一个函数,然后按下帮助
按钮,MCGS将自动打开关于这个函数的在线帮助,
或者,如果函数拼写错误,MCGS将列出与所提供
的名字最接近函数的在线帮助。

脚本语句和表达式列出了MCGS使用的三种语句的
书写形式和MCGS允许的表达式类型。用鼠标单击
要选的语句和表达式符号,在脚本编辑处光标所在
的位置填上语句或表达式的标准格式。

MCGS对象和函数列表以树结构的形式,列出了工程中
所有的窗口、策略、设备、变量、系统支持的各种方法、
属性以及各种函数,以供用户快速的查找和使用。比如,
可以在用户窗口树中,选定一个窗口:”窗口0”,打开
窗口0下的”方法” ,然后双击Open函数,则MCGS自
动在脚本程序编辑框中,添加了一行语句:用户窗口.窗
口0.Open( ),通过这行语句,就可以完成窗口打开的工
作。
 脚本程序基本语句

由于MCGS脚本程序是为了实现某些多分支流程的
控制及操作处理,因此包括了几种最简单的语句:
赋值语句、条件语句、退出语句和注释语句,同时,
为了提供一些高级的循环和遍历功能,还提供了循
环语句。

所有的脚本程序都可由这五种语句组成,当需要在
一个程序行中包含多条语句时,各条语句之间须用
“:”分开,程序行也可以是没有任何语句的空行。
大多数情况下,一个程序行只包含一条语句,赋值
程序行中根据需要可在一行上放置多条语句。

1.赋值语句

赋值语句的形式为:数据对象 = 表达式。赋值语句用赋值
号(“=”号)来表示,它具体的含义是:把“=”右边表达式
的运算值赋给左边的数据对象。赋值号左边必须是能够读写
的数据对象,如:开关型数据、数值型数据以及能进行写操
作的内部数据对象

而组对象、事件型数据对象、只读的内部数据对象、系统函
数以及常量,均不能出现在赋值号的左边,因为不能对这些
对象进行写操作。

赋值号的右边为一表达式,表达式的类型必须与左边数据对
象值的类型相符合,否则系统会提示“赋值语句类型不匹配”
的错误信息。
条件语句
 条件语句有如下三种形式:
If 〖表达式〗 Then 〖赋值语句或退出语句〗
If 〖表达式〗 Then
〖语句〗
EndIf
If 〖表达式〗Then
〖语句〗
Else
〖语句〗
EndIf


条件语句中的四个关键字“If”、“Then”、“Else”、
“Endif”不分大小写。如拼写不正确,检查程序会提
示出错信息。

条件语句允许多级嵌套,即条件语句中可以包含新的
条件语句,MCGS脚本程序的条件语句最多可以有8
级嵌套,为编制多分支流程的控制程序提供了可能。

“IF”语句的表达式一般为逻辑表达式,也可以是值为数值型
的表达式,当表达式的值为非0时,条件成立,执行“Then”
后的语句,否则,条件不成立,将不执行该条件块中包含的
语句,开始执行该条件块后面的语句。

值为字符型的表达式不能作为“IF”语句中的表达式。

循环语句

循环语句为While和EndWhile,其结构为:
While 〖条件表达式〗
….
EndWhile

当条件表达式成立时(非零),循环执行While和
EndWhile之间的语句。直到条件表达式不成立(为
零),退出。

退出语句

退出语句为“Exit”,用于中断脚本程序的运行,停止执行其
后面的语句。一般在条件语句中使用退出语句,以便在某种
条件下,停止并退出脚本程序的执行。

注释语句

以单引号“’”开头的语句称为注释语句,注释语句在脚本
程序中只起到注释说明的作用,实际运行时,系统不对注释
语句作任何处理。

本讲主要目的是想通过编写一段脚本程序实现水位控制系
统的控制流程,从而使大家熟悉脚本程序的编写环境。

下面先对控制流程进行分析:
当“水罐1”的液位达到9米时,就要把“水泵”关闭,否
则就要自动启动“水泵”;
当“水罐2”的液位不足1米时,就要自动关闭“出水阀”,
否则自动开启“出水阀”;
当“水罐1”的液位大于1米,同时“水罐2”的液位小于6米
就要自动开启“调节阀”,否则自动关闭“调节阀”。

具体操作如下:
[1]在“运行策略”中,双击“循环策略”进入策略组态窗口。
[2]双击图标进入“策略属性设置”,将:循环时间设为:
200ms,按“确认”。
[3]在策略组态窗口中,单击工具条中的“新增策略行”图标,
增加一策略行。
如果策略组态窗口中,没有策略工具箱,请单击工具条中
的“工具箱” 图标,弹出“策略工具箱” 。
[4]单击“策略工具箱”中的“脚本程序”,将鼠标指针移到
策略块图标上,单击鼠标左键,添加脚本程序构件
[5]
双击进入脚本程序编辑环境,输入下面的程序:
IF 液位1<9 THEN
水泵=1
ELSE
水泵=0
ENDIF
IF 液位2<1 THEN
出水阀=0
ELSE
出水阀=1
ENDIF
IF 液位1>1 and 液位2<6 THEN
调节阀=1
ELSE
调节阀=0
ENDIF

第八讲 MCGS报警处理
 一、概述
重点:MCGS的报警处理机制
MCGS把报警处理作为数据对象的属性,
封装在数据对象内,由实时数据库在运
行时自动处理。
 当数据对象的值或状态发生改变时,实
时数据库判断对应的数据对象是否发生
了报警或已产生的报警是否已经结束,
并把所产生的报警信息通知给系统的其
它部分,同时,实时数据库根据用户的
组态设定,把报警信息存入指定的存盘
数据库文件中。
 实时数据库只负责报警的判断、通知和
存储三项工作,而报警产生后所要进行
的其它处理操作(即对报警动作的响
应),则需要设计者在组态时制定方案,
例如希望在报警产生时,打开一个指定
的用户窗口,或者显示和该报警相关的
信息等。
 二、定义报警
重点:MCGS报警的定义
各种数值对象的报警方式
数值型数据对象有六种报警:下下限、
下限、上限、上上限、上偏差、下偏差。
开关型数据对象有四种报警方式:开关
量报警,开关量跳变报警,开关量正跳
变报警和开关量负跳变报警。
事件型数据对象不用进行报警限值或状
态设置,当它所对应的事件产生时,报
警也就产生,对事件型数据对象,报警
的产生和结束是同时完成的。
 字符型数据对象和组对象不能设置报
警属性,但对组对象所包含的成员可
以单个设置报警。组对象一般可用来
对报警进行分类,以方便系统其它部
分对同类报警进行处理。
 当多个报警同时产生时,系统优先处理
优先级高的报警。当报警延时次数大于1
时,实时数据库只有在检测到对应数据
对象连续多次处于报警状态后,才认为
该数据对象的报警条件成立。我们在实
际应用中,适当设置报警延时次数,可
避免因干扰信号而引起的误报警行为。
 当报警信息产生时,我们还可以设置报
警信息是否需要自动存盘和自动打印,
如图所示,这种设置操作需要在数据对
象的存盘属性中完成。
 三、处理报警
重点:报警条件、报警应答和报警限值的
设置方法。
报警的产生、通知和存储由实时数据库
自动完成,对报警动作的响应由设计者
根据需要,在报警策略中组态完成。
 在工作台窗口中,鼠标单击“运行策略”
标签,在运行策略窗口中,单击“新建
策略”按钮,弹出选择策略类型的对话
框,选择“报警策略”,单击“确定”
按钮,系统就添加了一个新的报警策略,
缺省名为策略X(X表示数字)。
 1、报警条件
策略名称:输入报警策略的名称。
 策略执行方式:
对应数据对象:用于与实时数据库的数
据对象连接。
对应报警状态:对应的报警状态有三种:
报警产生时执行一次、报警结束时执行
一次、报警应答时执行一次。
确认延时时间:当报警产生时,延时一
定时间后,再检查数据对象是否还处在
报警状态,如是,则条件成立,报警策
略被系统自动调用一次。
 策略内容注释:用于对策略加以注释。
当设置的变量产生报警时,在和设定的
对应报警状态和确认延时时刻一致时,
系统就会调用此策略,用户可以在策略
中组态需要在报警时执行的动作,如打
开一个报警提示窗口或执行一个声音文
件等。
 2、报警应答
报警应答的作用是告诉系统,操作员已
经知道对应数据对象的报警产生,并作
了相应的处理,同时,MCGS将自动记
录下应答的时间(要选取数据对象的报
警信息自动存盘属性才有效)。
 在实际应用中,对重要的报警事件都
要由操作员进行及时的应急处理,报
警应答机制能记录下报警产生的时间
和应答报警的时间,为事后进行事故
分析提供实际数据。
 3、报警限值
 在策略工具箱中的数据对象策略构件,
在运行时可用来读取和设置数值型数据
对象的报警限值,如下图所示,设置指
定对象的报警下限为20,报警上限为300。
 “←”表示把右边编辑框内的常数值或
指定数据对象的值设定为对应的限值,
“→”表示把对应的报警限值读到右
边编辑框内的指定数据对象(此时,
不能是常量)。
 同时也可以在脚本程序中使用内部系统
函数!SetAlmValue(DatName,Value,Flag)
来设置数据对象的报警限值,使用内部
系统函
数!GetAlmValue(DatName,Value,Flag)
读取数据对象报警限值。
 4、显示报警信息
重点:MCGS动画构件“报警显示”的
属性设置
在用户窗口中放置报警显示动画构件,
并对其进行组态配置,运行时,可实现
对指定数据对象报警信息的实时显示。
如下图所示,报警显示动画构件显示的
一次报警信息包含如下内容:
 报警事件产生的时间
 产生报警的数据对象名称
 报警类型(限值报警、状态报警、事件
报警)
 报警事件(产生、结束、应答)
 对应数据对象的当前值(触发报警时刻
数据对象的值)
 报警界限值
 报警内容注释
 组态时,在用户窗口中双击报警显示构
件可将其激活,进入该构件的编辑状态。
在编辑状态下,用户可以用鼠标来自由
改变各显示列的宽度,对不需要显示的
信息,将其列宽设置为零即可。在编辑
状态下,再双击报警显示构件,将弹出
如下图所示的属性页。
 一般情况下,一个报警显示构件只用来
显示某一类报警产生时的信息。定义一
个组对象,其成员为所有相关的数据对
象,把属性页中的“报警对应的数据对
象”设置成该组对象,则运行时,组对
象包括的所有数据对象的报警信息都在
该报警显示构件中显示。
5.报警信息的存盘和实时打印
 报警信息的存盘和实时打印由MCGS的
实时数据库负责管理,但组态时,需要
在数据对象属性页的“存盘属性”页进
行设置,选取“自动保存产生的报警信
息”选项和“自动实时打印产生的报警
信息”选项,否则,系统不保存也不实
时打印报警信息。
6.报警信息浏览构件
 MCGS在策略构件工具箱中提供了报警
信息浏览构件,在系统运行时,通过执
行运行策略,可以将指定数据对象在指
定时间范围内的报警存盘信息以报表的
形式显示在窗口中,或是直接输出到打
印机上,打印成报表。
7.报警操作函数
MCGS报警操作函数是MCGS报警功能的
扩展,用户利用报警操作函数可以更加
方便、快捷的完成各种报警需要的功能,
报警函数列表如下 :
!AnswerAlm(DatName):应答数据对象
DataName所产生的报警。
!SetAlmValue(DatName,Value,Flag):设
置数据对象DatName对应的报警限值。
!GetAlmValue(DatName,Value,Flag):读
取数据对象DatName报警限值。
!EnableAlm(name,n):打开/关闭数据对象
的报警功能。
!SetAlmLinePrint(n):设置报警行式打印输
出。
!DelAlmDat(DatName,Num):删除数据对
象DataName对应的报警存储数据中最早
Num小时内的报警存储数据。
!DelAllAlmDat(DatName):删除数据对象
DatName对应的所有报警存储数据。
报警操作实例
 第一步,在实时数据库中完成变量Data00的
报警定义和自动存盘、自动打印设置 .
 第二步,建立报警显示窗口,在窗口中使用
报警显示构件实时的显示Data00报警信息 .
 第三步,建立报警策略,在策略属性中
连接Data00,在策略块中新建一个策略
行,在策略行使用数据对象操作构件打
开第二步中的报警窗口。
 第四步,显示和打印报警存盘信息,新
建一个用户策略,在策略块中新建一个
策略行,在策略行使用报警信息浏览构
件显示Data00的报警存盘信息,同时在
窗口中使用一个按钮来执行此策略或在
主控窗口中新建一个菜单项执行此策略。
 第五步,修改报警限值和打开/关闭报警
功能,在脚本程序构件中或按钮下的脚
本程序中使
用!SetAlmValue(DatName,Value,Flag)
来设置数据对象的报警限
值、!GetAlmValue(DatName,Value,Flag)
读取数据对象报警限值
和!EnableAlm(name,n)控制报警的开关
操作。
思考:
 1、为什么报警信息不能保存下来?
 2、怎样实现对带有小数位的数据进行四舍五
入的处理?
 3、组对象有什么用处?
 4、为何变量删不掉?
 1、一定是在数据对象属性页的“存盘属
性”页设置时,没有选取“自动保存产
生的报警信息”选项和“自动实时打印
产生的报警信息”选项。
 2、在数据对象属性页的“基本属性”页
设置时设定小数位数 。
 3、用来存储具有相同存盘属性的多个
变量的集合,内部成员可包含多个其
他类型的变量。组对象一般是作为数
据来源用于制作报表和进行数据的处
理,用户把变量加入到组对象后就只
要对其进行处理,而不需要处理每个
对象,不仅节省了大量的时间而且有
利于管理。
 4、先用“使用计数检查”命令检查变量
使用情况,然后就可以删除没有用到的
变量。如果,某变量删不掉,说明此变
量正在使用,不能删除。
第九讲 MCGS报表输出

一、概述
在实际工程应用中,大多数监控系统需要对数
据采集设备采集的数据进行存盘、统计分析,
并根据实际情况打印出数据报表,所谓数据报
表就是根据实际需要以一定格式将统计分析后
的数据记录显示并打印出来,以便对生产过程
中系统监控对象的状态进行综合记录和规律总
结。
 数据报表在工控系统中是必不可少
的一部分,是整个工控系统的最终
结果输出。实际中常用的报表形式
有实时数据报表和历史数据报表
(班报表、日报表、月报表)等。
 二、MCGS报表机制
 在大多数应用系统中,数据报表一般分
成两种类型,即实时数据报表和历史数
据报表。
 实时数据报表是实时地将当前时刻的数
据对象的值按一定的报告格式(用户组
态)进行显示和打印出来,它是对瞬时
量的反映。
 实时数据报表可以通过MCGS系统的自
由表格构件来组态显示实时数据报表并
将它打印输出。
 历史数据报表是从历史数据库中提取存
盘数据记录,把历史数据以一定的格式
显示和打印出来。
 为了能够快速方便地组态工程数据
报表,MCGS系统提供了灵活方便
的报表组态功能。系统提供了
“EXCEL报表输出”策略构件和
“历史表格”动画构件,两者均可
以用于报表组态。
 “Excel报表输出”策略构件用于对数据进
行处理并生成数据报表,通过调用Office
家族中Excel强大的数据处理能力,把
MCGS存盘数据库或其数据库中的数据
进行相应的处理,以Excel报表的形式保
存,并可以将报表进行实时显示和打印
输出。
 “历史表格”动画构件是MCGS系
统提供的内嵌的报表组态构件,用
户只需在MCGS系统下组态绘制报
表,通过MCGS的打印和显示窗口
即可打印和显示数据报表。
 MCGS自由表格是一个简化的历史表格,
它取消了与历史数据的连接,以及历史
表格中的统计功能。以及其与历史数据
报表制作有关的功能。但是具备与历史
表格一样的格式化和表格结构组态,可
以很方便的和实时数据连接,构造实时
数据报表。
 三、创建报表
 在MCGS的绘图工具箱中,选择自由表
格或历史表格,在用户窗口中,按下鼠
标左键就可以在用户窗口中绘制出一个
表格来。
 选择表格,使用工具条上的按钮对表格
的各种属性进行调节。
 也可以对表格的事件进行组态:在
表格上点击鼠标右键,在右键菜单
中选择事件编辑,弹出事件编辑对
话框,就可以对表格的事件进行编
辑。
 四、报表组态
 报表创建后,缺省为一张空表。需要对
表格进行组态,才能形成最终需要的报
表。
 表格的组态,不论是自由表格还是历史
表格,都分为两个层次来进行,这两个
层次在表格的组态中,体现为表格两种
状态组态:显示界面组态和连接方式组
态。
 显示界面的组态,包括表格单元是否合
并;表格单元内固定显示的字符串;如
果表格单元内连接了数据,使用什么样
的形式来显示这些数据(格式化字符
串);表格单元在运行时是否可以编辑;
是否需要把表格单元中的数据输出到某
个数据变量上去。
 数据连接的组态,在自由表格中,对每
个单元格进行数据连接;在历史表格中,
用户可以根据实际情况确定是否需要构
成一个单元区域以便连接到数据源中,
或是否对数据对象进行统计处理等等。

补充:

历史报表

历史报表通常用于从历史数据库中提取数据记
录,并以一定的格式显示历史数据。实现历史
报表有三种方式:

用策略构件中的“存盘数据浏览”构件;

用动画构件中的“历史表格”构件;

用动画构件中的“存盘数据浏览”构件。
 利用“存盘数据浏览”策略构件实现历
史报表

什么是嵌入式系统
嵌入式系统一般指非 PC 系统,有计算机功能
但又不称之为计算机的设备或器材。它是以应
用为中心,软硬件可裁减的,适应应用系统对
功能、可靠性、成本、体积、功耗等综合性严
格要求的专用计算机系统。
 简单地说,嵌入式系统集系统的应用软
件与硬件于一体,具有软件代码小、高
度自动化、响应速度快等特点,特别适
合于要求实时和多任务的体系。嵌入式
系统主要由嵌入式处理器、相关支撑硬
件、嵌入式操作系统及应用软件系统等
组成,它是可独立工作的“器件”。
 嵌入式系统的硬件部分,包括处理器
/
微处理器、存储器及外设器件和 I/O 端
口、图形控制器等。嵌入式系统有别于
一般的计算机处理系统,它不具备像硬
盘那样大容量的存储介质,而大多使用
EPROM 、 EEPROM 或闪存 (Flash
Memory) 作为存储介质。
 软件部分包括操作系统软件
( 要求
实时和多任务操作 ) 和应用程序编
程。应用程序控制着系统的运作和
行为;而操作系统控制着应用程序
编程与硬件的交互作用。
 1、如何使画面中的数字、文本显示等根
据值的不同用不同的颜色显示?
 2、动画的动作变化非常慢,为什么?
 3、脚本程序中添加赋值语句,?=?,
确定时弹出错误对话框。
 4、进行表格的打印时,字体非常小和屏
幕上显示的不一致?
 5、为什么用存盘数据浏览可以看到数据,
但是历史表格中却不显示数据?
 1、可以用多个图形或文本叠加的
方法实现,例如:某个测量值value
在0-100内用蓝色表示,大于100时
用红色表示,就可以用两个同样大
小的显示框.
 一个字体颜色选为蓝色,设置其属性
中的可见度表达式为value>100,对应
图符不可见。另一个用红色,设置其
属性中的可见度表达式为value>100,
对应图符可见。
 2、在“主控窗口——系统属性——系统
参数”,可以修改闪烁周期和动画刷新周
期时间,适当减小时间可以加快变化速度。
 3、亲自测试,采用微软拼音输入法
中文输入状态下采用=号,没有问题,
采用智能ABC输入法全角状态下加
入=号,会出错误,半角状态正常。
 4、表格打印时,跟显示的字体有关系,
有些打印机支持的字体较少,就会出现
显示正常,打印不正常的现象。
 5、检查历史表格的数据来源中的组对
象的存盘属性设置,需要设置一定的存
盘时间。
第十讲 MCGS曲线显示
 一、概述

在实际生产过程中,对实时数据、历史数据的
查看、分析是不可缺少的工作,但对大量数据
仅做定量的分析还远远不够,必须根据大量的
数据信息,绘制出趋势曲线,从趋势曲线的变
化中发现数据的变化规律。因此,趋势曲线处
理在工控系统中成为一个非常重要的部分。
 MCGS组态软件能为用户提供功能强大
的趋势曲线。通过众多功能各异的曲线
构件,包括历史曲线、实时曲线、计划
曲线,以及相对曲线和条件曲线,用户
能够组态出各种类型的趋势曲线,从而
满足工程项目的不同需求。
 二、MCGS
的趋势曲线机制
 MCGS共提供了五种用于趋势曲线
绘制的构件,分别是:历史曲线、
实时曲线、条件曲线、相对曲线和
计划曲线。每种曲线构件的功能各
不相同:
 1、历史曲线:
 历史曲线是将历史存盘数据从数据库中读
出,以时间为横坐标,数据值为纵坐标进
行曲线绘制。同时,历史曲线也可以实现
实时刷新的效果。历史曲线主要用于事后
查看数据分布和状态变化趋势以及总结信
号变化规律。
 2、实时曲线:
 实时曲线是在MCGS系统运行时,从
MCGS实时数据库中读取数据,同时,
以时间为X轴进行曲线绘制。X轴的时间
标注,可以按照用户组态要求,显示绝
对时间或相对时间。
 3、条件曲线:

条件曲线构件用于把历史存盘数据库中,满足
一定条件的数据以曲线的形式显示出来,和历
史曲线不同的是,条件曲线没有实时刷新功能,
条件曲线处理的数据不是整个历史数据库,而
只是其中满足一定条件的数据集合。同时,条
件曲线构件的X轴可以为绝对时间、相对时间
或数值型变量等多种形式。
 4、相对曲线:
 相对曲线构件能以实时曲线的方式
显示一个或若干个变量与某一指定
变量的函数关系。例如:显示当温
度发生变化时,压力对应的变化情
况。
 5、计划曲线:

使用计划曲线构件,用户可以预先设置一段时
间内的数据变化情况,然后,在运行时,由构
件自动地对用户指定变量的值进行设置,使变
量的值与用户设置的值一致;同时,计划曲线
还可以在构件内显示最多16条实时曲线,以及
计划曲线的上偏差和下偏差线,从而与用户设
定的计划曲线形成对比。
 三、MCGS

曲线操作
虽然,每种曲线构件分别实现了不同的功
能,但在MCGS中提供的曲线构件也有很
多相似之外,但对于MCGS组态软件中的
每一种曲线构件,都包括了如下部分:数
据来源、曲线坐标轴、曲线背景网格以及
曲线参数。
 1、定义曲线数据源
 趋势曲线是以曲线的形式,形象地反映
生产现场实时或历史数据信息。因此,
无论何种曲线,都需要为其定义显示数
据的来源。
 数据源一般分为两类,历史数据源和实
时数据源。
 历史数据源一般使用MCGS数据对
象的存盘数据库,但同时也可以是
普通的Access或ODBC数据库。
 实时数据源则使用MCGS实时数据
库作为数据来源。
 组态时,将曲线与MCGS实时数据库
中的数据对象相连接,运行时,曲线
构件即定时地从MCGS实时数据库中
读取相关数据对象的值,从而实现实
时刷新曲线的功能。
 2、定义曲线坐标轴

在每一个MCGS曲线构件中,都需要设置
曲线的X方向和Y方向的坐标轴及标注属性。

X轴标注属性设置

MCGS曲线构件的X轴类型大致可分为时
间和数值两种类型。

对于时间型X坐标轴,通常需要设置其对应的
时间字段、长度、时间单位、时间显示格式、
标注间隔以及X轴标注的颜色、字体等属性。

对于数值型X坐标轴,通常需要设置X轴对应
的数据变量名或字段名、最大值、最小值、小
数位数、标注间隔以及标注的颜色和字体等属
性。
 Y轴标注属性设置

在所有MCGS的曲线构件中,Y坐标轴只允许
连接类型为开关型或数值型的数据源。曲线的
Y轴数据通常可能连接很多个数据源,用于在
一个坐标系内显示多条曲线。对于每一个数据
源,可以设置的属性包括:数据源对应的数据
对象名或字段名、最大值、最小值、小数位数
据、标注间隔以及Y轴标注的颜色和字体等属
性。
 3、定义曲线网格

为了使趋势曲线显示更准确,MCGS提供的所
有曲线构件都可以自由地设置曲线背景网格的
属性。

曲线网格分为与X坐标轴垂直的划分线和与Y
坐标轴垂直的划分线;每个方向上的划分线又
分为主划分线与次划分线。

其中,主划分线用于划分整个曲线区域,次划
分线则在主划分线的基础上,将主划分线划分
好的每一个小区域,划分成若干个相同大小的
区域。

此外,X坐标轴及Y坐标轴的标注也依赖于各
个方向的主划分线,通常,坐标轴的标注文字
都只在相应的主划分线下,按照用户设定的标
注间隔依次标注。
 4、设置曲线参数

MCGS提供的趋势曲线构件中,通常还可以设
置曲线显示、刷新等属性,例如:历史曲线构
件在组态时可以设置是否显示曲线翻页按钮、
是否显示曲线放大按钮等选项;相对曲线中,
可以设置是否显示网格、边框以及是否显示X
轴或Y轴标注等。
第十一讲 MCGS安全机制
 一、概述
 MCGS组态软件提供了一套完善的安
全机制,用户能够自由组态控制菜单、
按钮和退出系统的操作权限,只允许
有操作权限的操作员才能对某些功能
进行操作。

MCGS还提供了工程密码、工程运行期
限等功能,来保护使用MCGS组态软件
开发所得的成果,开发者可利用这些功
能保护自己的合法权益。

MCGS系统的操作权限机制和Windows
NT类似,采用用户组和用户的概念来进
行操作权限的控制。

操作权限的分配是以用户组为单位来进
行的,即某种功能的操作哪些用户组有
权限。

MCGS系统按用户组来分配操作权限的
机制,使用户能方便地建立各种多层次
的安全机制。如:实际应用中的安全机
制一般要划分为操作员组、技术员组、
负责人组。
 注意:在MCGS中,操作权限的分
配是对用户组来进行的,某个用户
具有什么样的操作权限是由该用户
所隶属的用户组来确定。
 思考:
 一个用户可以隶属于多个用户组吗?
 二、定义用户和用户组

在MCGS中,固定有一个名为“管理员组”的用
户组和一个名为“负责人”的用户,它们的名
称不能修改。

管理员组中的用户有权利在运行时管理所有的
权限分配工作,管理员组的这些特性是由MCGS
系统决定的,其它所有用户组都没有这些权利。
 三、系统权限设置

为了更好的保证工程运行的安全、稳定可靠,
防止与工程系统无关的人员进入或退出工程系
统,MCGS系统提供了对工程运行时进入和退
出工程的权限管理。

打开MCGS组态环境,在MCGS主控窗口中设
置“系统属性”。

点击“权限设置”,设置工程系统的运行权限,
同时设置系统进入和退出时是否需要用户登录。

在通常情况下,退出MCGS系统时,系统会弹
出确认对话框,MCGS系统提供了两个脚本函
数在运行时控制退出时是否需要用户登录和弹
出确认对话框,!EnableExitLogon( )
和!EnableExitPrompt( )

!EnableExitLogon(FLAG),FLAG =1,工
程系统退出时需要用户登录成功后才能退
出系统,否则拒绝用户退出的请求;
FLAG =0,退出时不需要用户登录即可退
出,此时不管系统是否设置了退出时需要
用户登录,均不登录。

!EnableExitPrompt(FLAG),FLAG=1,工
程系统退出时弹出确认对话框;FLAG=0,
工程系统退出时不弹出确认对话框。

为了使上面两个函数有效,必须在组态时在
脚本程序中加上这两个函数,在工程运行时
调用一次函数运行。
 四、操作权限设置
 MCGS操作权限的组态非常简单,当
对应的动画功能可以设置操作权限时,
在属性设置窗口页中都有对应的“权
限”按钮,点击该按钮后弹出用户权
限设置窗口。

作为缺省设置,能对某项功能进行操作的为所
有用户,即:如果不进行权限组态,则权限机
制不起作用,所有用户都能对其进行操作。

在用户权限设置窗口中,把对应的用户组选中,
则该组内的所有用户都能对该项工作进行操作。
注意:一个操作权限可以配置多个用户组。
 五、工程安全管理
 使用MCGS工具菜单中工程安全管理菜
单项的功能可以实现对工程(组态所得
的结果)进行各种保护工作。该菜单项
包括:工程密码设置;锁定软件狗;工
程运行期限设置。
 工程密码

给正在组态或已完成的工程设置密码,可
以保护该工程不被其它人打开使用或修改。
当使用MCGS来打开这些工程时,首先弹
出输入框要求输入工程的密码,如密码不
正确则不能打开该工程,从而起到保护劳
动成果的作用。
 锁定软件狗

锁定软件狗可以把组态好的工程和软件狗锁定
在一起,运行时,离开所锁定的软件狗,该工
程就不能正常运行。随MCGS一起提供的软件
狗都有一个唯一的序列号,锁定后的工程在其
它任何MCGS系统中都无法正常运行,充分保
护开发者的权利。
 设置工程运行期限
 为了方便开发者的利益得到及时的回报,
MCGS提供了设置工程运行期限的功能,
到一定的时间后,如得不到应得的回报,
则可通过多级密码控制系统的运行或停
止。
第十二讲 设备窗口组态
 选择设备构件
 设置构件属性
 连接设备通道
 一、概述
 设备窗口是MCGS系统的重要组成部分,
在设备窗口中建立系统与外部硬件设备
的连接关系,使系统能够从外部设备读
取数据并控制外部设备的工作状态,实
现对工业过程的实时监控。
 在MCGS中,实现设备驱动的基本方法
是:在设备窗口内配置不同类型的设备
构件,并根据外部设备的类型和特征,
设置相关的属性,将设备的操作方法如
硬件参数配置、数据转换、设备调试等
都封装在构件之中,以对象的形式与外
部设备建立数据的传输通道连接。
 系统运行过程中,设备构件由设备窗口
统一调度管理,通过通道连接,向实时
数据库提供从外部设备采集到的数据,
从实时数据库查询控制参数,发送给系
统其它部分,进行控制运算和流程调度,
实现对设备工作状态的实时检测和过程
的自动控制。
 MCGS的这种结构形式使其成为一个
“与设备无关”的系统,对于不同的硬
件设备,只需定制相应的设备构件,放
置到设备窗口中,并设置相关的属性,
系统就可对这一设备进行操作,而不需
要对整个系统结构作任何改动。
 MCGS设备驱动程序的登记、删除登记
工作是非常重要的,在初次使用设备或
用户自己新加的设备之前,必须按下面
的方法完成设备驱动程序的登记工作,
否则,可能会出现不可预测的错误。设
备驱动程序的登记方法如下:
 在设备管理窗口中,用户只需在窗口左
边的列表框中选中需要使用的设备,单
击“增加”按钮即完成了设备的登记工
作,在窗口右边的列表框中选中需要删
除的设备按“删除”按钮即完成了设备
的删除登记工作。
 如果需要增加新的设备,单击“安装”
按钮,系统弹出对话框询问是否需要安
装新增的驱动程序,选择“是”,指明
驱动程序所在的路径,进行安装,安装
完毕,新的设备将显示在设备管理窗口
的左侧窗口“用户定制设备”目录下。
 二、设备构件的属性设置
 在设备窗口内配置了设备构件之后,接
着应根据外部设备的类型和性能,设置
设备构件的属性。不同的硬件设备,属
性内容大不相同,但对大多数硬件设备
而言,其对应的设备构件应包括如下各
项组态操作:
 设置设备构件的基本属性。
 建立设备通道和实时数据库之间的连接。
 设备通道数据处理内容的设置。
 硬件设备的调试。
 1、设备构件的基本属性
 MCGS中,设备构件的基本属性分为两
类,一类是各种设备构件共有的属性,
有设备名称、设备内容注释、运行时设
备初始工作状态、最小数据采集周期;
 另一类是每种构件特有的属性,如中泰
PC-6319模拟量输入接口板的特有的属
性有AD转换方式、AD前处理方式、IO
基地址、AD输入方式、AD输入量程、
AD重复采集次数。
 大多数设备构件的属性在基本属性页中
就可完成设置,而有些设备构件的一些
属性无法在基本属性页中设置,需要在
设备构件内部的属性页中设置,MCGS
把这些属性称为设备内部属性。
 2、设备构件的通道连接
 MCGS设备中一般都包含有一个或多个
用来读取或者输出数据的物理通道,
MCGS把这样的物理通道称为设备通道,
如:模拟量输入装置的输入通道、模拟
量输出装置的输出通道、开关量输入输
出装置的输入输出通道等等,这些都是
设备通道。
 设备通道只是数据交换用的通路,而数
据输入到哪儿和从哪儿读取数据以供输
出,即进行数据交换的对象,则必须由
用户指定和配置。
 MCGS各部分之间的数据交换均须通过
实时数据库。因此,所有的设备通道都
必须与实时数据库连接。
 所谓通道连接,也即是由用户指定设备
通道与数据对象之间的对应关系,这是
设备组态的一项重要工作。如不进行通
道连接组态,则MCGS无法对设备进行
操作。
 在实际应用中,开始可能并不知道系统
所采用的硬件设备,可以利用MCGS系
统的设备无关性,先在实时数据库中定
义所需要的数据对象,组态完成整个应
用系统,在最后的调试阶段,再把所需
的硬件设备接上,进行设备窗口的组态,
建立设备通道和对应数据对象的连接。
 一般说来,设备构件的每个设备通道及
其输入或输出数据的类型是由硬件本身
决定的,所以连接时,连接的设备通道
与对应的数据对象的类型必须匹配,否
则连接无效。
 3、设备构件的数据处理
 在实际应用中,经常需要对从设备中采
集到的数据或输出到设备的数据进行前
处理,以得到实际需要的工程物理量。
对通道数据可以进行八种形式的数据处
理,包括:多项式计算、倒数计算、开
方计算、滤波处理、工程转换计算、函
数调用、标准查表计算、自定义查表计
算。
 4、设备构件的调试
 使用设备调试窗口我们可以在设备组态
的过程中,能很方便地对设备进行调试,
以检查设备组态设置是否正确、硬件是
否处于正常工作状态,同时,在有些设
备调试窗口中,可以直接对设备进行控
制和操作,方便了设计人员对整个系统
的检查和调试。