第二章 MCGS 嵌入版快速入门 ? 27?
2.4 定义数据对象
前面我们已经讲过,实时数据库是 MCGS 嵌入版工程的数据交换和数据处理中心。数 据对象是构成实时数据库的基本单元,建立实时数据库的过程也就是定义数据对象的过程。
定义数据对象的内容主要包括:
??指定数据变量的名称、类型、初始值和数值范围
??确定与数据变量存盘相关的参数,如存盘的周期、存盘的时间范围和保存期限
等。
在开始定义之前,我们先对所有数据对象进行分析。在本样例工程中需要用到以下数 据对象:
对象名称 水泵 调节阀 出水阀 液位1 液位2 液位 1 上限 液位1下限 液位2上限 液位2下限 液位组
类 型 注 释 开 关 型 控制水泵“启动”、“停止”的变量 开 关 型 控制调节阀“打开”、“关闭”的变量 开 关 型 控制出水阀“打开”、“关闭”的变量
数 值 型 水罐 1 的水位高度,用来控制1#水罐水位的变化 数 值 型 水罐 2 的水位高度,用来控制2#水罐水位的变化 数 值 型 用来在运行环境下设定水罐 1 的上限报警值 数 值 型 用来在运行环境下设定水罐1的下限报警值 数 值 型 用来在运行环境下设定水罐2的上限报警值 数 值 型 用来在运行环境下设定水罐2的下限报警值 组 对 象 用于历史数据、历史曲线、报表输出等功能构件
? 28? MCGS 嵌入版组态软件用户指南 下面以数据对象“水泵”为例,介绍一下定义数据对象的步骤: [1] 单击工作台中的“实时数据库”窗口标签,进入实时数据库窗口页。
[2] 单击“新增对象” 按钮,在窗口的数据对象列表中,增加新的数据对象,系统缺
省定义的名称为“Data1”、“Data2”、“Data3”等(多次点击该按钮,则可增 加多个数据对象)。
[3] 选中对象,按“对象属性”按钮,或双击选中对象,则打开“数据对象属性设置”
窗口。 [4] 将对象名称改为:水泵;对象类型选择:开关型;在对象内容注释输入框内输入:
“控制水泵启动、停止的变量”,单击“确认”。 按照此步骤,根据上面列表,设置其他 9 个数据对象。
定义组对象与定义其他数据对象略有不同,需要对组对象成员进行选择。具体步骤如 下:
[1] 在数据对象列表中,双击“液位组”,打开“数据对象属性设置” 窗口。 [2] 选择“组对象成员”标签,在左边数据对象列表中选择“液位1”,点击“增加”
按钮,数据对象“液位1”被添加到右边的“组对象成员列表”中。按照同样的方 法将“液位2”添加到组对象成员中。
[3] 单击“存盘属性”标签,在“数据对象值的存盘”选择框中,选择:定时存盘,
并将存盘周期设为:5秒。 [4] 单击“确认”,组对象设置完毕。
2.5 动画连接
由图形对象搭制而成的图形画面是静止不动的,需要对这些图形对象进行动画设计, 真实地描述外界对象的状态变化,达到过程实时监控的目的。MCGS 嵌入版实现图形动画 设计的主要方法是将用户窗口中图形对象与实时数据库中的数据对象建立相关性连接,并 设置相应的动画属性。在系统运行过程中,图形对象的外观和状态特征,由数据对象的实 时采集值驱动,从而实现了图形的动画效果。
本样例中需要制作动画效果的部分包括: ??水箱中水位的升降 ??水泵、阀门的启停 ??水流效果
第二章 MCGS 嵌入版快速入门 ? 29?
水位升降效果
水位升降效果是通过设置数据对象“大小变化”连接类型实现的。 具体设置步骤如下:
[1] 在用户窗口中,双击水罐1,弹出单元属性设置窗口。 [2] 单击“动画连接”标签,显示如图所示窗口:
[3] 选中折线,在右端出现 。
[4] 单击 进入动画组态属性设置窗口。按照下面的要求设置各个参数:
??表达式:液位1;
??最大变化百分比对应的表达式的值:10; ??其它参数不变。如图:
? 30? MCGS 嵌入版组态软件用户指南
[5] 单击“确认”,水罐1水位升降效果制作完毕。
水罐2水位升降效果的制作同理。单击 进入动画组态属性设置窗口后,按照下面的 值进行参数设置:
??表达式:液位2;
??最大变化百分比对应的表达式的值:6; ??其它参数不变。
水泵、阀门的启停
水泵、阀门的启停动画效果是通过设置数据对象“按钮动作”连接类型实现的。 设置步骤如下:
[1] 双击水泵,弹出单元属性设置窗口。 [2] 选择“动画连接”标签。
[3] 选中矩形,出现 。
[4] 单击 进入动画组态属性设置窗口。
[5] 在按钮对应的功能域中,选择数据对象值操作;操作方式为:取反;数据对象为:
水泵。
[6] 单击“可见度”标签,将表达式设置为:水泵=1;当表达式非零时,对应的图符
可见。
第二章 MCGS 嵌入版快速入门 ? 31?
[7] 单击“确认”,水泵的启停效果设置完毕。 阀门的启停效果同理。只需做如下设置即可:
??在按钮动作属性页中,将数据对象分别设置为:调节阀、出水阀; ??可见度属性页中,将表达式分别设置为:调节阀=1、出水阀=1; ??其它不变。
水流效果
水流效果是通过设置流动块构件的属性实现的。 实现步骤如下:
[1] 双击水泵右侧的流动块,弹出流动块构件属性设置窗口; [2] 在流动属性页中,进行如下设置:
??表达式:水泵=1;
??选择当表达式非零时,流块开始流动。
水罐1右侧流动块及水罐 2 右侧流动块的制作方法与此相同,只需将表达式相应改为: 调节阀=1,出水阀=1 即可。
至此动画连接已完成,按 F5 或点击工具条中 图标,进入运行环境,看一下组态后 的结果。前面“2.4.1 建立画面”一节中,我们已将“水位控制”窗口设置为启动窗口,所 以在运行时,系统自动运行该窗口。
这时我们看见的画面仍是静止的。移动鼠标到“水泵”、“调节阀”、“出水阀”上面的 红色部分,鼠标指针会呈手形。单击一下,红色部分变为绿色,同时流动块相应地运动起 来,但水罐仍没有变化。这是由于我们没有信号输入,也没有人为地改变水量。我们可以 用如下方法改变其值,使水罐动起来。
利用滑动输入器控制水位
以水罐 1 的水位控制为例: [1] 进入“水位控制”窗口。
[2] 选中“工具箱”中的滑动输入器 图标,当鼠标呈“十”后,拖动鼠标到适当大
小。