《第6讲MCGS通用版组态软件高级教程综述课件》由会员分享,可在线阅读,更多相关《第6讲MCGS通用版组态软件高级教程综述课件(29页珍藏版)》请在金锄头文库上搜索。
1、第6讲 MCGSMCGS通用版组态软件高级教程通用版组态软件高级教程 6.16.1构造实时数据库构造实时数据库 6.2 6.2 动画制作动画制作 6.3 6.3 旋转动画的制作旋转动画的制作 6.4 6.4 设备窗口组态设备窗口组态 6.5 6.5 脚本程序脚本程序 6.6 6.6 数据后处理及报表数据后处理及报表 6.16.1构造实时数据库构造实时数据库o6.1.1 MCGS实时数据库的概述实时数据库的概述o在在MCGS中的数据不同于传统意义的数据或变量,它不只包含了中的数据不同于传统意义的数据或变量,它不只包含了变量的数值特征,还将与数据相关的其它属性(如数据的状态、变量的数值特征,还将与
2、数据相关的其它属性(如数据的状态、报警限值等)以及对数据的操作方法(如存盘处理、报警处理等)报警限值等)以及对数据的操作方法(如存盘处理、报警处理等)封装在一起,作为一个整体,以对象的形式提供服务。这种把数封装在一起,作为一个整体,以对象的形式提供服务。这种把数值、属性和方法定义成一体的数据称为数据对象。值、属性和方法定义成一体的数据称为数据对象。oMCGS用数据对象来表述系统中的实时数据,用对象变量代替传用数据对象来表述系统中的实时数据,用对象变量代替传统意义的值变量。把用数据库技术管理的所有数据对象的集合称统意义的值变量。把用数据库技术管理的所有数据对象的集合称为实时数据库。实时数据库是为
3、实时数据库。实时数据库是MCGS的核心,是应用系统的数据的核心,是应用系统的数据处理中心,如下图所示,系统各个部分均以实时数据库为公用区处理中心,如下图所示,系统各个部分均以实时数据库为公用区交换数据,实现各个部分协调动作。设备窗口通过设备构件驱动交换数据,实现各个部分协调动作。设备窗口通过设备构件驱动外部设备,将采集的数据送入实时数据库;由用户窗口组成的图外部设备,将采集的数据送入实时数据库;由用户窗口组成的图形对象,与实时数据库中的数据对象建立连接关系,以动画形式形对象,与实时数据库中的数据对象建立连接关系,以动画形式实现数据的可视化;运行策略通过策略构件,对数据进行操作和实现数据的可视化
4、;运行策略通过策略构件,对数据进行操作和处理。处理。 6.16.1构造实时数据库构造实时数据库o6.1.2 数据对象的类型数据对象的类型 o在在MCGS组态软件中,数据对象有开关型、数值型、字符型、事组态软件中,数据对象有开关型、数值型、字符型、事件型、组对象等五种类型。不同类型的数据对象,属性不同,用件型、组对象等五种类型。不同类型的数据对象,属性不同,用途也不同。在初级培训教材中我们已经学会定义开关型、数值型、途也不同。在初级培训教材中我们已经学会定义开关型、数值型、组对象三种类型。组对象三种类型。o1、 开关型数据对象开关型数据对象记录开关信号(记录开关信号(0或非或非0)的数据对象称为
5、开关型数据对象,通常)的数据对象称为开关型数据对象,通常与外部设备的数字量输入输出通道连接,用来表示某一设备当前与外部设备的数字量输入输出通道连接,用来表示某一设备当前所处的状态。开关型数据对象也用于表示所处的状态。开关型数据对象也用于表示MCGS中某一对象的状中某一对象的状态,如对应于一个图形对象的可见度状态。态,如对应于一个图形对象的可见度状态。开关型数据对象没有工程单位、最大值和最小值属性,没有限值开关型数据对象没有工程单位、最大值和最小值属性,没有限值报警属性,只有状态报警属性。报警属性,只有状态报警属性。 6.16.1构造实时数据库构造实时数据库o6.1.2 数据对象的类型数据对象的
6、类型 o2、数值型数据对象、数值型数据对象在在MCGS组态软件中,数值型数据对象的数值范围是:负数是从组态软件中,数值型数据对象的数值范围是:负数是从 -3.402823E38 到到 -1.401298E-45,正数是从,正数是从 1.401298E-45 到到 3.402823E38。数值型数据对象除了存。数值型数据对象除了存放数值及参与数值运算外,还提供报警信息,与外部设备的模拟放数值及参与数值运算外,还提供报警信息,与外部设备的模拟量输入输出通道连接。量输入输出通道连接。数值型数据对象有限值报警属性,可同时设置下下限、下限、上数值型数据对象有限值报警属性,可同时设置下下限、下限、上限、上
7、上限、上偏差、下偏差等六种报警限值,当对象的值超过限、上上限、上偏差、下偏差等六种报警限值,当对象的值超过设定的限值时,产生报警;当对象的值回到所有的限值之内时,设定的限值时,产生报警;当对象的值回到所有的限值之内时,报警结束。报警结束。6.16.1构造实时数据库构造实时数据库o6.1.2 数据对象的类型数据对象的类型 o3、字符型数据对象、字符型数据对象字符型数据对象是存放文字信息的单元,用于描述外部对象的状字符型数据对象是存放文字信息的单元,用于描述外部对象的状态特征,其值为多个字符组成的字符串,字符串长度最长可达态特征,其值为多个字符组成的字符串,字符串长度最长可达64KB。字符型数据对
8、象没有工程单位和最大、最小值属性,也。字符型数据对象没有工程单位和最大、最小值属性,也没有报警属性。没有报警属性。o4 、事件型数据对象、事件型数据对象事件型数据对象用来记录和标识某种事件产生或状态改变的时间事件型数据对象用来记录和标识某种事件产生或状态改变的时间信息。例如,开关量的状态发生变化,用户有按键动作,有报警信息。例如,开关量的状态发生变化,用户有按键动作,有报警信息产生等,都可以看作是一种事件发生。事件发生的信息可以信息产生等,都可以看作是一种事件发生。事件发生的信息可以直接从某种类型的外部设备获得,也可以由内部对应的功能构件直接从某种类型的外部设备获得,也可以由内部对应的功能构件
9、提供。提供。6.16.1构造实时数据库构造实时数据库o6.1.2 数据对象的类型数据对象的类型 事件型数据对象的值是事件型数据对象的值是19个字符组成的定长字符串,用来保留当个字符组成的定长字符串,用来保留当前最近一次事件所产生的时刻:前最近一次事件所产生的时刻:“年,月,日,时,分,秒年,月,日,时,分,秒”。年用四位数字表示,月、日、时、分、秒分别用两位数字表示,年用四位数字表示,月、日、时、分、秒分别用两位数字表示,之间用逗号分隔。如之间用逗号分隔。如“1997,02,03,23,45,56”,即表示该事件产,即表示该事件产生于生于1997年年2月月3日日23时时45分分56秒。当相应的
10、事件没有发生时,秒。当相应的事件没有发生时,该对象的值固定设置为该对象的值固定设置为“1970,01,01,08,00,00”。事件型数据对象没有工程单位、最大值和最小值属性,没有限值事件型数据对象没有工程单位、最大值和最小值属性,没有限值报警,只有状态报警,不同于开关型数据对象,事件型数据对象报警,只有状态报警,不同于开关型数据对象,事件型数据对象对应的事件产生一次,其报警也产生一次,且报警的产生和结束对应的事件产生一次,其报警也产生一次,且报警的产生和结束是同时完成的。是同时完成的。6.16.1构造实时数据库构造实时数据库o6.1.2 数据对象的类型数据对象的类型 o5、数据组对象、数据组
11、对象数据组对象是数据组对象是MCGS引入的一种特殊类型的数据对象,类似于一引入的一种特殊类型的数据对象,类似于一般编程语言中的数组和结构体,用于把相关的多个数据对象集合般编程语言中的数组和结构体,用于把相关的多个数据对象集合在一起,作为一个整体来定义和处理。例如:在初级教材中,描在一起,作为一个整体来定义和处理。例如:在初级教材中,描述一个水位控制系统的工作状态有液位述一个水位控制系统的工作状态有液位1、液位、液位2两个物理量,为两个物理量,为便于处理,定义便于处理,定义“液位组液位组”为一个组对象,用来表示为一个组对象,用来表示“液位液位”这这个实际的物理对象,其内部成员则由上述物理量对应的
12、数据对象个实际的物理对象,其内部成员则由上述物理量对应的数据对象组成,这样,在对组成,这样,在对“液位液位”对象进行处理(如:组态存盘、曲线对象进行处理(如:组态存盘、曲线显示、报警显示)时,只需指定组对象的名称显示、报警显示)时,只需指定组对象的名称“液位组液位组”,就包,就包括了对其所有成员的处理。括了对其所有成员的处理。 6.16.1构造实时数据库构造实时数据库o6.1.2 数据对象的类型数据对象的类型 组对象只是在组态时对某一类对象的整体表示方法,实际的操作组对象只是在组态时对某一类对象的整体表示方法,实际的操作则是针对每一个成员进行的。如在报警显示动画构件中,指定要则是针对每一个成员
13、进行的。如在报警显示动画构件中,指定要显示报警的数据对象为组对象显示报警的数据对象为组对象“液位组液位组”,则该构件显示组对象,则该构件显示组对象包含的各个数据对象在运行时产生的所有报警信息。包含的各个数据对象在运行时产生的所有报警信息。数据组对象是单一数据对象的集合,一般包含两个以上的数据对数据组对象是单一数据对象的集合,一般包含两个以上的数据对象,但不能包含其他的数据组对象。一个数据对象可以是多个不象,但不能包含其他的数据组对象。一个数据对象可以是多个不同组对象的成员。把一个对象的类型定义成组对象后,还必须定同组对象的成员。把一个对象的类型定义成组对象后,还必须定义组对象所包含的成员。如下
14、图所示,在义组对象所包含的成员。如下图所示,在“组对象属性设置组对象属性设置”对对话框内,专门有话框内,专门有“组对象成员组对象成员”窗口页,用来定义组对象的成员。窗口页,用来定义组对象的成员。图中左边为所有数据对象的列表,右边为组对象成员列表。利用图中左边为所有数据对象的列表,右边为组对象成员列表。利用属性页中的属性页中的“增加增加”按钮,可以把左边指定的数据对象增加到组按钮,可以把左边指定的数据对象增加到组对象成员中;对象成员中;“删除删除”按钮则把右边指定的组对象成员删除。组按钮则把右边指定的组对象成员删除。组对象没有工程单位、最大值、最小值属性,组对象本身没有报警对象没有工程单位、最大
15、值、最小值属性,组对象本身没有报警属性。属性。6.16.1构造实时数据库构造实时数据库o6.1.3 数据对象的定义数据对象的定义变量名称变量名称类类 型型注注 释释日期日期字符型字符型 显示系统日期显示系统日期时间时间字符型字符型 显示系统时间显示系统时间石屑石屑数值型数值型 配方操作中的材料之配方操作中的材料之碎石碎石数值型数值型 配方操作中的材料之配方操作中的材料之瓜子片瓜子片数值型数值型 配方操作中的材料之配方操作中的材料之粉煤灰粉煤灰数值型数值型 配方操作中的材料之配方操作中的材料之石灰石灰数值型数值型 配方操作中的材料之配方操作中的材料之配方库操作配方库操作数值型数值型 用于对配方库
16、进行操作如编辑、装载、查询用于对配方库进行操作如编辑、装载、查询等等配方号配方号字符型字符型 配方操作中用于配方查询的变量配方操作中用于配方查询的变量配方查询号配方查询号字符型字符型 配方操作中用于配方查询的变量配方操作中用于配方查询的变量角度角度数值型数值型 用于封面窗口动画的变量用于封面窗口动画的变量6.16.1构造实时数据库构造实时数据库o6.1.3 数据对象的定义数据对象的定义变量名称变量名称类类 型型注注 释释计数器计数器1号号数值型数值型 显示显示1号计数器的值号计数器的值姓名姓名字符型字符型 显示下拉框的选择显示下拉框的选择计数器计数器1号时间显号时间显示示字符型字符型 用于时钟
17、方式显示用于时钟方式显示1号计数器的值号计数器的值计数器计数器1号工作状号工作状态态开关型开关型 用于启动、停止用于启动、停止1号计数器号计数器计时器计时器1号最大值号最大值数值型数值型 用于限制用于限制1号计数器计数的最大值号计数器计数的最大值数据数据1至数据至数据5数值型数值型 用于数据提取时产生数据用于数据提取时产生数据数据显示数据显示1至至4数值型数值型 用于显示字符转换成用于显示字符转换成ASCII码用码用16进制的数进制的数数据输入数据输入数值型数值型 输入输入09999之间的数之间的数字符串显示字符串显示字符型字符型 用于显示输入数据转换成的字符串用于显示输入数据转换成的字符串字
18、符串分解字符串分解1至至4字符型字符型 用于显示字符串分解成的字符用于显示字符串分解成的字符6.16.1构造实时数据库构造实时数据库o6.1.4 数据对象的作用域数据对象的作用域 o实时数据库中定义的数据对象都是全局性的,实时数据库中定义的数据对象都是全局性的,MCGS各个部分都各个部分都可以对数据对象进行操作,通过数据对象来交换信息和协调工作。可以对数据对象进行操作,通过数据对象来交换信息和协调工作。数据对象的各种属性在整个运行过程中都保持有效。如在水位控数据对象的各种属性在整个运行过程中都保持有效。如在水位控制系统中的液位制系统中的液位1、液位、液位2,在实时曲线、实时报表、动画流程等,在
19、实时曲线、实时报表、动画流程等都是用的同一变量。都是用的同一变量。6.2 6.2 动画制作动画制作o6.2.1 封面制作封面制作 o封面窗口是工程运行后第一个显示的图形界面,演示工程的封面封面窗口是工程运行后第一个显示的图形界面,演示工程的封面窗口样式如下图所示:窗口样式如下图所示: 6.2 6.2 动画制作动画制作o6.2.1 封面制作封面制作 o建立一个文字标签框图,框图内输入文字,采用建立一个文字标签框图,框图内输入文字,采用“拷贝拷贝”的方法复的方法复制另一个文字框图,两个文字框图除设置不同的字体颜色之外,制另一个文字框图,两个文字框图除设置不同的字体颜色之外,其它属性内容的完全相同。
20、两个文本框重叠在一起,利用工具条其它属性内容的完全相同。两个文本框重叠在一起,利用工具条中的层次调整按钮,改变两者之间的前后层次和相对位置,使上中的层次调整按钮,改变两者之间的前后层次和相对位置,使上面的文字遮盖下面文字的一部分,形成立体的效果。如实现上图面的文字遮盖下面文字的一部分,形成立体的效果。如实现上图中的中的“MCGS组态软件演示工程组态软件演示工程”立体文字效果,可以按下图设置,立体文字效果,可以按下图设置,颜色为颜色为“黑色黑色”的放在下面,颜色为的放在下面,颜色为“白色白色”放在上面,然后通过上放在上面,然后通过上下左右键进行调整,下左右键进行调整,“欢迎使用欢迎使用”实现方法
21、也一样。实现方法也一样。6.2 6.2 动画制作动画制作o6.2.1 封面制作封面制作 o让让“MCGS组态软件演示工程组态软件演示工程”闪烁,增加动画效果,可以按下图闪烁,增加动画效果,可以按下图设置,表达式设为:设置,表达式设为:1,表示条件永远成立。,表示条件永远成立。6.2 6.2 动画制作动画制作o6.2.1 封面制作封面制作 o“封面窗口封面窗口”中左上侧有一个黑色无框的矩形,右上侧有一个白色中左上侧有一个黑色无框的矩形,右上侧有一个白色无框的矩形,这是用无框的矩形,这是用“工具箱工具箱”中的中的“标签标签”实现的,左上侧在运行实现的,左上侧在运行时显示当前日期,右上侧在运行时显示
22、当前时钟。日期属性设置时显示当前日期,右上侧在运行时显示当前时钟。日期属性设置如下图,时钟属性设置与日期属性设置相似,只需要把如下图,时钟属性设置与日期属性设置相似,只需要把“显示输出显示输出”的表达式中的的表达式中的“日期日期”改为改为“时间时间”即可。即可。6.2 6.2 动画制作动画制作o6.2.1 封面制作封面制作 o从从“工具箱工具箱”中选中中选中“椭圆椭圆”,拖放到桌面,把其大小调整为:,拖放到桌面,把其大小调整为:480200,“填充颜色填充颜色”为为“玫瑰红玫瑰红”。在。在 “查看查看” 菜单中单击菜单中单击“状态条状态条”打开状态条,可以根据右下角的大小调整。小球大小调整打开
23、状态条,可以根据右下角的大小调整。小球大小调整为:为:2828,位置位于椭圆的中心,位置位于椭圆的中心,“填充颜色填充颜色”选择为选择为“填充效填充效果果”样式,选中双色填充,颜色样式,选中双色填充,颜色1为海绿色,颜色为海绿色,颜色2为白色,底纹为白色,底纹样式为中心幅射,变形选择由颜色样式为中心幅射,变形选择由颜色2向颜色向颜色1从内而外幅射。其定从内而外幅射。其定位与属性设置如下图:其中角度是在实时数据库中定义的数值型位与属性设置如下图:其中角度是在实时数据库中定义的数值型数据对象。数据对象。 6.2 6.2 动画制作动画制作o6.2.1 封面制作封面制作 o在在MCGS组态软件开发平台
24、上,单击组态软件开发平台上,单击“运行策略运行策略”,再双击,再双击“循环策循环策略略”或选中或选中“循环策略循环策略”,单击,单击“策略组态策略组态”进入策略组态中。双击图进入策略组态中。双击图标进入标进入“策略属性设置策略属性设置”,将循环时间设为:,将循环时间设为:200ms。从工具条。从工具条中单击中单击“新增策略行新增策略行” 图标,新增加一个策略行。再从图标,新增加一个策略行。再从“策略工具策略工具箱箱”中选取中选取“脚本程序脚本程序”,拖到策略行上,单击鼠标左键。如图:,拖到策略行上,单击鼠标左键。如图:6.2 6.2 动画制作动画制作o6.2.1 封面制作封面制作 o进入脚本程
25、序编辑环境,输入下面的程序:进入脚本程序编辑环境,输入下面的程序: 角度角度=角度角度+3.14/180 IF 角度角度=2*3.14 THEN 角度角度=角度角度-2*3.14 ENDIF 日期日期=$Date 时间时间=$Time 把把“标注标注”改为:封面动画日期时间。改为:封面动画日期时间。6.2 6.2 动画制作动画制作o6.1.2 动画效果动画效果 o在在MCGS组态软件开发平台上,单击组态软件开发平台上,单击“主控窗口主控窗口”进入,选中进入,选中“主控主控窗口窗口”,单击,单击“系统属性系统属性”按钮,弹出按钮,弹出“主控窗口属性设置主控窗口属性设置”对话框,对话框,具体设置如
26、图,在具体设置如图,在“基本属性基本属性”中把中把“封面显示时间封面显示时间”设为设为30秒,秒,“封面窗口封面窗口”选中选中“封面窗口封面窗口”。6.3 6.3 旋转动画的制作旋转动画的制作o旋转动画是旋转动画是MCGS5.5通网版主要新增功能之一,它通过对多边通网版主要新增功能之一,它通过对多边形和折线构件在运行环境下任意角度的旋转,对其他简单图形、形和折线构件在运行环境下任意角度的旋转,对其他简单图形、图符构件在组态环境下任意角度的旋转、任意组合转化成多边形,图符构件在组态环境下任意角度的旋转、任意组合转化成多边形,使您轻松完成难度较大的图形组态工作。使用此功能,能够使您使您轻松完成难度
27、较大的图形组态工作。使用此功能,能够使您轻松地实现图形的旋转,也使工程更加生动、逼真。轻松地实现图形的旋转,也使工程更加生动、逼真。o在在MCGS组态软件下,可以旋转的动画构件具有多边形状态和旋组态软件下,可以旋转的动画构件具有多边形状态和旋转状态。多边形状态可以对动画构件进行编辑,包括调整形状,转状态。多边形状态可以对动画构件进行编辑,包括调整形状,属性设置等。旋转状态主要是对旋转属性进行设置,包括旋转表属性设置等。旋转状态主要是对旋转属性进行设置,包括旋转表达式、旋转位置、旋转圆心、旋转半径和旋转角度等的设置。达式、旋转位置、旋转圆心、旋转半径和旋转角度等的设置。 6.3 6.3 旋转动画
28、的制作旋转动画的制作o6.3.1 组态环境下的旋转设置组态环境下的旋转设置 o旋转动画窗口是由一个简单的旋转动画构件,以小人推车沿直线旋转动画窗口是由一个简单的旋转动画构件,以小人推车沿直线滚动来显示旋转动画功能的工程。运行后显示以下界面:滚动来显示旋转动画功能的工程。运行后显示以下界面: 6.3 6.3 旋转动画的制作旋转动画的制作o6.3.1 组态环境下的旋转设置组态环境下的旋转设置 o在在MCGS组态软件开发平台上,单击组态软件开发平台上,单击“用户窗口用户窗口”进入,再单击进入,再单击“新新建窗口建窗口”按钮,生成按钮,生成“窗口窗口0”,选中,选中“窗口窗口0”,单击,单击“窗口属性
29、窗口属性”按按钮,修改钮,修改“窗口名称窗口名称”为为“小人推车小人推车”。o双击双击“小人推车小人推车”窗口,进入此窗口的组态环境。单击窗口,进入此窗口的组态环境。单击“工具箱工具箱”中中的位图装载构件,鼠标变为的位图装载构件,鼠标变为“”字形后,拖动位图到窗口上,调字形后,拖动位图到窗口上,调整其适当位置。然后再点击鼠标右键,选中整其适当位置。然后再点击鼠标右键,选中“装载位图装载位图”子菜单。子菜单。 6.3 6.3 旋转动画的制作旋转动画的制作o6.3.1 组态环境下的旋转设置组态环境下的旋转设置 o在工具箱中选择在工具箱中选择“矩形矩形”、“圆形圆形”和和“直线直线”,构成一个小人推
30、小车,构成一个小人推小车的画面。如图:的画面。如图: 6.3 6.3 旋转动画的制作旋转动画的制作o6.3.1 组态环境下的旋转设置组态环境下的旋转设置 o首先定义车轮的运动变量。双击车轮的外圈,水平移动设置如下首先定义车轮的运动变量。双击车轮的外圈,水平移动设置如下图,对应的是图,对应的是“wheel”数值型数据对象。数值型数据对象。 6.3 6.3 旋转动画的制作旋转动画的制作o6.3.1 组态环境下的旋转设置组态环境下的旋转设置 o选中任意一个车轴单击鼠标右键,单击选中任意一个车轴单击鼠标右键,单击“转换为旋转多边形转换为旋转多边形”菜单菜单项。同理,设置其它二个车轴。然后分别双击车轮的
31、三个车轴,项。同理,设置其它二个车轴。然后分别双击车轮的三个车轴,设置它的水平移动和旋转动画变量和参数,如图:设置它的水平移动和旋转动画变量和参数,如图:6.3 6.3 旋转动画的制作旋转动画的制作o6.3.1 组态环境下的旋转设置组态环境下的旋转设置 o车轮的车轴不仅需要水平移动,而且要旋转变化车轮的车轴不仅需要水平移动,而且要旋转变化 。凡是具有旋转。凡是具有旋转变化属性的图符,必须先转换成变化属性的图符,必须先转换成“旋转多边行旋转多边行”后方能设置旋转动后方能设置旋转动画。画。o同理设置小人胳膊和车轮扶手的水平移动变量和参数,由于小人同理设置小人胳膊和车轮扶手的水平移动变量和参数,由于
32、小人胳膊和车轮扶手的运动方向和轨迹相同,所以它们设置也相同。胳膊和车轮扶手的运动方向和轨迹相同,所以它们设置也相同。如图设置:如图设置: 6.4 6.4 设备窗口组态设备窗口组态o6.4.1 概述概述 o6.4.2 支持硬件设备支持硬件设备 o6.4.3 设备在线调试设备在线调试 o6.4.4 网络数据同步网络数据同步 o6.4.5 数据前处理数据前处理 6.5 6.5 脚本程序脚本程序o6.5.1 脚本程序语言要素脚本程序语言要素 o6.5.2 脚本程序基本语句脚本程序基本语句 o6.5.3 脚本程序应用场合及样例脚本程序应用场合及样例 6.6 6.6 数据后处理及报表数据后处理及报表o6.6.1 数据后处理数据后处理o6.5.2 结合数据提取做复杂的报表结合数据提取做复杂的报表