1、Chap 4Chap 4:让动画动起来让动画动起来 定义数据变量定义数据变量1 动画连接动画连接2 模拟设备模拟设备 31.定义数据变量定义数据变量n实时数据库是实时数据库是MCGSMCGS工程的数据交换和数据处理中工程的数据交换和数据处理中心。数据对象是构成实时数据库的基本单元,心。数据对象是构成实时数据库的基本单元,建建立实时数据库的过程就是定义数据对象的过程立实时数据库的过程就是定义数据对象的过程。n定义数据对象的内容主要包括:定义数据对象的内容主要包括:指定数据变量的指定数据变量的名称、类型、初始值和数值范围;确定与数据变名称、类型、初始值和数值范围;确定与数据变量存盘相关的参数,量存
2、盘相关的参数,如存盘的周期、存盘的时间如存盘的周期、存盘的时间范围和保存期限等。范围和保存期限等。n在开始定义之前,我们先对所有数据对象进行分析。在开始定义之前,我们先对所有数据对象进行分析。(以水位控制系统为例以水位控制系统为例)变量名称变量名称类类 型型注注 释释水泵水泵开开 关关 型型控制水泵控制水泵“启动启动”、“停止停止”的变量的变量调节阀调节阀开开 关关 型型控制调节阀控制调节阀“打开打开”、“关闭关闭”的变量的变量出水阀出水阀开开 关关 型型控制出水阀控制出水阀“打开打开”、“关闭关闭”的变量的变量液位液位1数数 值值 型型水罐水罐1的水位高度,用来控制的水位高度,用来控制1#水
3、罐水位的水罐水位的变化变化液位液位2数数 值值 型型水罐水罐2的水位高度,用来控制的水位高度,用来控制2#水罐水位的水罐水位的变化变化液位液位1上限上限数数 值值 型型用来在运行环境下设定水罐用来在运行环境下设定水罐1的上限报警值的上限报警值液位液位1下限下限数数 值值 型型用来在运行环境下设定水罐用来在运行环境下设定水罐1的下限报警值的下限报警值液位液位2上限上限数数 值值 型型用来在运行环境下设定水罐用来在运行环境下设定水罐2的上限报警值的上限报警值液位液位2下限下限数数 值值 型型用来在运行环境下设定水罐用来在运行环境下设定水罐2的下限报警值的下限报警值液位组液位组组组 对对 象象用于历
4、史数据、历史曲线、报表输出等功能用于历史数据、历史曲线、报表输出等功能构件构件 下面下面以数据对象以数据对象“水泵水泵”为例为例,介绍一下定,介绍一下定义数据对象的步骤:义数据对象的步骤:1 1 单击工作台中的单击工作台中的“实时数据库实时数据库”窗口标签,进窗口标签,进入实时数据库窗口页。入实时数据库窗口页。2 2 单击单击“新增对象新增对象”按钮,在窗口的数据对象按钮,在窗口的数据对象列表中,增加新的数据对象,系统缺省定义的列表中,增加新的数据对象,系统缺省定义的名称为名称为“Data1Data1”、“Data2Data2”、“Data3Data3”等等(多次点击该按钮,则可增加多个数据对
5、象)。(多次点击该按钮,则可增加多个数据对象)。3 3 选中对象,按选中对象,按“对象属性对象属性”按钮,或双击选中按钮,或双击选中对象,则打开对象,则打开“数据对象属性设置数据对象属性设置”窗口。窗口。4 4 将将对象名称改为:水泵;对象类型选择:开关对象名称改为:水泵;对象类型选择:开关型型;在对象内容;在对象内容注释输入框内输入:注释输入框内输入:“控制水控制水泵启动、停止的变量泵启动、停止的变量”,单击,单击“确认确认”。按照此步骤,根据上面列表,设置其他按照此步骤,根据上面列表,设置其他9 9个个数据对象。数据对象。2.动画连接动画连接n一、回顾一、回顾n静态画面设计静态画面设计n生
6、成图形界面的基本操作步骤:生成图形界面的基本操作步骤:n1 1、创建用户窗口、创建用户窗口n2 2、设置用户窗口属性、设置用户窗口属性n3 3、创建图形对象、创建图形对象n4 4、编辑图形对象、编辑图形对象n二、引入n由图形对象搭制而成的图形画面是静止不动的,需由图形对象搭制而成的图形画面是静止不动的,需要对这些图形对象进行动画设计,真实地描述外界要对这些图形对象进行动画设计,真实地描述外界对象的状态变化,达到过程实时监控的目的。对象的状态变化,达到过程实时监控的目的。nMCGS实现图形动画设计的主要方法实现图形动画设计的主要方法是将用户窗口是将用户窗口中图形对象与实时数据库中的数据对象建立相
7、关性中图形对象与实时数据库中的数据对象建立相关性连接,并设置相应的动画属性。在系统运行过程中,连接,并设置相应的动画属性。在系统运行过程中,图形对象的外观和状态特征,由数据对象的实时采图形对象的外观和状态特征,由数据对象的实时采集值驱动,从而实现了图形的动画效果。集值驱动,从而实现了图形的动画效果。n三、动态画面设计三、动态画面设计n1 1、定义动画连接、定义动画连接n定义动画连接,实际上是定义动画连接,实际上是将用户窗口内创建的图形将用户窗口内创建的图形对象与实时数据库中定义的数据对象建立对应连接对象与实时数据库中定义的数据对象建立对应连接关系关系,通过对图形对象在不同的数值区间内设置不,通
8、过对图形对象在不同的数值区间内设置不同的状态属性(如颜色、大小、位置移动、可见度、同的状态属性(如颜色、大小、位置移动、可见度、闪烁效果等),闪烁效果等),用数据对象的值的变化来驱动图形用数据对象的值的变化来驱动图形对象的状态改变对象的状态改变,使系统在运行过程中,产生形象,使系统在运行过程中,产生形象逼真的动画效果。逼真的动画效果。n因此,动画连接过程就归结为对图形对象的状态属因此,动画连接过程就归结为对图形对象的状态属性设置的过程。性设置的过程。n2 2、图元图符对象连接、图元图符对象连接n在在MCGSMCGS中,每个图元、图符对象都可以实现中,每个图元、图符对象都可以实现1111种动画连
9、接方式种动画连接方式。可以利用这些图元、图符对。可以利用这些图元、图符对象来制作实际工程所需的图形对象,然后再建象来制作实际工程所需的图形对象,然后再建立起与数据对象的对应关系,定义图形对象的立起与数据对象的对应关系,定义图形对象的一种或多种动画连接方式,实现特定的动画功一种或多种动画连接方式,实现特定的动画功能。这能。这1111种动画连接方式如下:种动画连接方式如下:n填充颜色连接填充颜色连接 边线颜色连接边线颜色连接n字符颜色连接字符颜色连接 水平移动连接水平移动连接n垂直移动连接垂直移动连接 大小变化连接大小变化连接n显示输出连接显示输出连接 按钮输入连接按钮输入连接n按钮动作连接按钮动
10、作连接 可见度连接可见度连接n闪烁效果连接闪烁效果连接n3 3、动画构件连接、动画构件连接n为了简化用户程序设计工作量,为了简化用户程序设计工作量,MCGSMCGS将工程控制与实时监将工程控制与实时监测作业中常用的物理器件,如按钮、操作杆、显示仪表和测作业中常用的物理器件,如按钮、操作杆、显示仪表和曲线表盘等,制成独立的图形存储于图库中,供用户调用,曲线表盘等,制成独立的图形存储于图库中,供用户调用,这些能实现不同动画功能的图形称为这些能实现不同动画功能的图形称为动画构件动画构件。n在组态时,只需要建立动画构件与实时数据库中数据对象在组态时,只需要建立动画构件与实时数据库中数据对象的对应关系,
11、就能完成动画构件的连接的对应关系,就能完成动画构件的连接,如对实时曲线构,如对实时曲线构件,需要指明该构件运行时记录哪个数据对象的变化曲线;件,需要指明该构件运行时记录哪个数据对象的变化曲线;对报警显示构件,需要指明该构件运行时显示哪个数据对对报警显示构件,需要指明该构件运行时显示哪个数据对象的报警信息。象的报警信息。四、实例四、实例以水位控制系统为例需制作动画效果的部分包括:以水位控制系统为例需制作动画效果的部分包括:水箱中水位的升降水箱中水位的升降 水泵、阀门的启停水泵、阀门的启停 水流效果水流效果水箱中水位的升降效果水箱中水位的升降效果 水位升降效果是通过设置数据对象水位升降效果是通过设
12、置数据对象“大小变化大小变化”连接类型实现的。连接类型实现的。具体设置步骤如下:具体设置步骤如下:1 1 在用户窗口中,双击水罐在用户窗口中,双击水罐1 1,弹出单元属性设,弹出单元属性设置窗口。置窗口。2 2 单击单击“动画连接动画连接”标签。选中折线,在右端出标签。选中折线,在右端出现现 。3 3 单击单击 进入动画组态属性设置窗口。按照下进入动画组态属性设置窗口。按照下面的要求设置各个参数:面的要求设置各个参数:表达式:表达式:液位液位1 1;最大变化百分比对应的表达式的值:最大变化百分比对应的表达式的值:1010;其它参数不变。其它参数不变。4 4 单击单击“确认确认”,水罐,水罐1
13、1水位升降制作完毕。水位升降制作完毕。水罐水罐2 2水位升降效果的制作同理。单击进入水位升降效果的制作同理。单击进入动画组态属性设置窗口后,按照下面的值进行参动画组态属性设置窗口后,按照下面的值进行参数设置:数设置:表达式:表达式:液位液位2 2;最大变化百分比对应的表达式的值:最大变化百分比对应的表达式的值:6 6;其它参数不变。其它参数不变。水泵、阀门的启停水泵、阀门的启停 水泵、阀门的启停动画效果是通过设置连水泵、阀门的启停动画效果是通过设置连接类型对应的数据对象实现的。接类型对应的数据对象实现的。设置步骤如下:设置步骤如下:11双击水泵,弹出单元属性设置窗口。双击水泵,弹出单元属性设置
14、窗口。22选中选中 数据对象数据对象 标签中的标签中的 按钮输入按钮输入,右端出现浏览按,右端出现浏览按钮钮 。33单击浏览按钮单击浏览按钮 ,双击数据对象列表中的,双击数据对象列表中的 水泵水泵 。44使用同样的方法将使用同样的方法将“填充颜色填充颜色”对应的数据对象设置为对应的数据对象设置为“水泵水泵”。55单击单击 确认确认,水泵的启停效果设置完毕。,水泵的启停效果设置完毕。调节阀的启停效果同理。只需在数据对象标调节阀的启停效果同理。只需在数据对象标签页中,将签页中,将“按钮输入按钮输入”、“填充颜色填充颜色”的数据的数据对象均设置为:调节阀。对象均设置为:调节阀。出水阀的启停效果,需在
15、数据对象标签页中,出水阀的启停效果,需在数据对象标签页中,将将“按钮输入按钮输入”、“可见度可见度”的数据对象均的数据对象均设置设置为:出水阀。为:出水阀。水流效果水流效果 水流效果是通过设置流动块构件的属性实现的。水流效果是通过设置流动块构件的属性实现的。n实现步骤如下:实现步骤如下:11双击水泵右侧的流动块,弹出流动块构件属性设置双击水泵右侧的流动块,弹出流动块构件属性设置窗口。窗口。22在流动属性页中,进行如下设置:在流动属性页中,进行如下设置:表达式:表达式:水泵水泵=1=1;选择选择当表达式非零时,流块开始流动当表达式非零时,流块开始流动。水罐水罐1 1右侧流动块及水罐右侧流动块及水
16、罐2 2右侧流动块的制作方法与右侧流动块的制作方法与此相同,只需将表达式相应改为:调节阀此相同,只需将表达式相应改为:调节阀=1=1,出水,出水阀阀=1=1即可。即可。n至此动画连接已完成,至此动画连接已完成,按按F5或点击工具条中图标,进入或点击工具条中图标,进入运行环境运行环境,看一下组态后的结果。前面,看一下组态后的结果。前面“建立画面建立画面”一节一节中,我们已将中,我们已将“水位控制水位控制”窗口设置为启动窗口,所以在窗口设置为启动窗口,所以在运行时,系统自动运行该窗口。运行时,系统自动运行该窗口。n这时我们看见的画面仍是静止的。移动鼠标到这时我们看见的画面仍是静止的。移动鼠标到“水
17、泵水泵”、“调节阀调节阀”、“出水阀出水阀”上面的红色部分,鼠标指针会呈上面的红色部分,鼠标指针会呈手形。手形。单击一下,红色部分变为绿色,同时流动块相应地单击一下,红色部分变为绿色,同时流动块相应地运动起来,但水罐仍没有变化。这是由于我们没有信号输运动起来,但水罐仍没有变化。这是由于我们没有信号输入,也没有人为地改变水量。入,也没有人为地改变水量。n*利用滑动输入器控制水位利用滑动输入器控制水位 以水罐以水罐1的水位控制为例:的水位控制为例:1进入进入“水位控制水位控制”窗口。窗口。2选中选中“工具箱工具箱”中的滑动输入器图标,当鼠标中的滑动输入器图标,当鼠标呈呈“十十”后,拖动鼠标到适当大
18、小。后,拖动鼠标到适当大小。3调整滑动块到适当的位置。调整滑动块到适当的位置。4双击滑动输入器构件,进入属性设置窗口。双击滑动输入器构件,进入属性设置窗口。按照下面的值设置各个参数:按照下面的值设置各个参数:“基本属性基本属性”页中,滑块指向:指向左(上);页中,滑块指向:指向左(上);“刻度与标注属性刻度与标注属性”页中,页中,“主划线数目主划线数目”:5,即能被,即能被10整除;整除;“操作属性操作属性”页中,对应数据对象名称:页中,对应数据对象名称:液位液位1;滑块在最右(下)边时对应的值:;滑块在最右(下)边时对应的值:10;其它不变。其它不变。5在制作好的滑块下面适当的位置,制作一文
19、在制作好的滑块下面适当的位置,制作一文字标签,按下面的要求进行设置:字标签,按下面的要求进行设置:输入文字:输入文字:水罐水罐1输入输入 文字颜色:文字颜色:黑色黑色 框图填充颜色:框图填充颜色:没有填充没有填充 框图边线颜色:框图边线颜色:没有边线没有边线 6 6按照上述方法设置水罐按照上述方法设置水罐2 2水位控制滑块,参数水位控制滑块,参数设置为:设置为:“基本属性基本属性”页中,滑块指向:页中,滑块指向:指向左(上)指向左(上);“操作属性操作属性”页中,对应数据对象名称:页中,对应数据对象名称:液位液位2 2;滑块在最右(下)边时对应的值:;滑块在最右(下)边时对应的值:6 6;其它
20、不变。其它不变。7将水罐将水罐2水位控制滑块对应的文字标签设置为:水位控制滑块对应的文字标签设置为:输入文字:输入文字:水罐水罐2输入输入文字颜色:文字颜色:黑色黑色框图填充颜色:框图填充颜色:没有填充没有填充框图边线颜色:框图边线颜色:没有边线没有边线8点击工具箱中的常用图符按钮,打开常用图符点击工具箱中的常用图符按钮,打开常用图符工具箱。工具箱。9选择其中的凹槽平面按钮,拖动鼠标绘制一个选择其中的凹槽平面按钮,拖动鼠标绘制一个凹槽平面凹槽平面,恰好将两个滑动块及标签全部覆盖。,恰好将两个滑动块及标签全部覆盖。10选中该平面,点击选中该平面,点击编辑条编辑条中中“置于最后面置于最后面”按钮按
21、钮。此时按此时按“F5”,进入运行环境后,可以通过拉,进入运行环境后,可以通过拉动滑动输入器而使水罐中的液面动起来。动滑动输入器而使水罐中的液面动起来。*利用旋转仪表控制水位利用旋转仪表控制水位 在工业现场一般都会大量地使用仪表进行数据在工业现场一般都会大量地使用仪表进行数据显示。显示。MCGS组态软件适应这一要求提供了旋转组态软件适应这一要求提供了旋转仪表构件。用户可以利用此构件在动画界面中仪表构件。用户可以利用此构件在动画界面中模拟现场的仪表运行状态。具体制作步骤如下:模拟现场的仪表运行状态。具体制作步骤如下:1选取选取“工具箱工具箱”中的中的“旋转仪表旋转仪表”图标,调整图标,调整大小放
22、在水罐大小放在水罐1下面适当位置。下面适当位置。2双击该构件进行属性设置。各参数设置如下:双击该构件进行属性设置。各参数设置如下:“刻度与标注属性刻度与标注属性”页中,主划线数目:页中,主划线数目:5;“操作属性操作属性”页中,表达式:页中,表达式:液位液位1;最大逆时;最大逆时钟角度:钟角度:90,对应的值:,对应的值:0;最大顺时钟角度:;最大顺时钟角度:90,对应的值:,对应的值:10 其它不变。其它不变。3按照此方法设置水罐按照此方法设置水罐2数据显示对应的旋转数据显示对应的旋转仪表仪表 “刻度与标注属性刻度与标注属性”页中,主划线数目:页中,主划线数目:6;“操作属性操作属性”页中,
23、表达式:液位页中,表达式:液位2;最大逆时钟;最大逆时钟角度:角度:90,对应的值:,对应的值:0;最大顺时钟角度:;最大顺时钟角度:90,对应的值:,对应的值:6;其它不变。其它不变。进入运行环境后,可以通过拉动旋转仪表进入运行环境后,可以通过拉动旋转仪表的指针使整个画面动起来。的指针使整个画面动起来。*水量显示水量显示 为了能够准确地了解水罐为了能够准确地了解水罐1 1、水罐、水罐2 2的水量,的水量,我们可以通过设置标签的我们可以通过设置标签的“显示输出显示输出”属性显示属性显示其值,具体操作如下:其值,具体操作如下:11单击单击“工具箱工具箱”中的中的“标签标签”图标,绘制两个图标,绘
24、制两个标签,调整大小位置,将其并列放在水罐标签,调整大小位置,将其并列放在水罐1 1下面。下面。第一个第一个标签用于标注,显示文字为:标签用于标注,显示文字为:水罐水罐1 1第二个第二个标签用于标签用于显示水罐水量显示水罐水量22双击第一个标签进行属性设置,参数设置如下:双击第一个标签进行属性设置,参数设置如下:输入文字:输入文字:水罐水罐1 1文字颜色:文字颜色:黑色黑色框图填充颜色:没有填充框图填充颜色:没有填充框图边线颜色:没有边线框图边线颜色:没有边线3 3 双击第二个标签,进入动画组态属性设置窗口。双击第二个标签,进入动画组态属性设置窗口。将:将:填充颜色设置为:填充颜色设置为:白色
25、白色边线颜色设置为:边线颜色设置为:黑色黑色4 4 在输入输出连接域中,选中在输入输出连接域中,选中“显示输出显示输出”选项,选项,在组态属性设置窗口中则会出现在组态属性设置窗口中则会出现“显示输出显示输出”标签。标签。5 5 单击单击“显示输出显示输出”标签,设置显示输出属性。参标签,设置显示输出属性。参数设置如下:数设置如下:表达式:表达式:液位液位1 1;输出值类型:输出值类型:数值量输出数值量输出;输出格式:输出格式:向中对齐向中对齐;整数位数:整数位数:0;小数位数:小数位数:1。6单击单击“确认确认”,水罐,水罐1水量显示标签制作完毕。水量显示标签制作完毕。水罐水罐2水量显示标签与
26、此相同,需做的改动:水量显示标签与此相同,需做的改动:第一个用于标注的标签,显示文字为:水罐第一个用于标注的标签,显示文字为:水罐2;第二个用于显示水罐水量的标签,表达式改为:液第二个用于显示水罐水量的标签,表达式改为:液位位2。n练习与思考练习与思考n1、如何使画面中的数字、文本显示等能根据值如何使画面中的数字、文本显示等能根据值的不同用不同的颜色显示?的不同用不同的颜色显示?n答:可以用多个图形或文本相叠加的方法实现,例如;答:可以用多个图形或文本相叠加的方法实现,例如;某个测量值某个测量值value在在0-100内用蓝色表示,大于内用蓝色表示,大于100时用时用红色表示,就可以用两个同样
27、大小的显示框,一个字体红色表示,就可以用两个同样大小的显示框,一个字体颜色选为蓝色,设置其属性中的可见度表达式为颜色选为蓝色,设置其属性中的可见度表达式为value100,对应图符不可见。另一个用红色,设置其属对应图符不可见。另一个用红色,设置其属性中的可见度表达式为性中的可见度表达式为value100,对应图符可见。这样对应图符可见。这样在系统运行时就会根据在系统运行时就会根据value值的不同显示不同的颜色。值的不同显示不同的颜色。n2、实现图形动画设计的主要方法是什么?、实现图形动画设计的主要方法是什么?nMCGS实现图形动画设计的主要方法实现图形动画设计的主要方法是将用户窗是将用户窗口中图形对象与实时数据库中的数据对象建立口中图形对象与实时数据库中的数据对象建立相关性连接,并设置相应的动画属性。在系统相关性连接,并设置相应的动画属性。在系统运行过程中,图形对象的外观和状态特征,由运行过程中,图形对象的外观和状态特征,由数据对象的实时采集值驱动,从而实现了图形数据对象的实时采集值驱动,从而实现了图形的动画效果。的动画效果。本本 讲讲 内内 容容 到到 此此 结结 束束