第5章 变量定义和管理2.docx

上传人:b****6 文档编号:8772887 上传时间:2023-02-01 格式:DOCX 页数:19 大小:850.19KB
下载 相关 举报
第5章 变量定义和管理2.docx_第1页
第1页 / 共19页
第5章 变量定义和管理2.docx_第2页
第2页 / 共19页
第5章 变量定义和管理2.docx_第3页
第3页 / 共19页
第5章 变量定义和管理2.docx_第4页
第4页 / 共19页
第5章 变量定义和管理2.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

第5章 变量定义和管理2.docx

《第5章 变量定义和管理2.docx》由会员分享,可在线阅读,更多相关《第5章 变量定义和管理2.docx(19页珍藏版)》请在冰豆网上搜索。

第5章 变量定义和管理2.docx

第5章变量定义和管理2

第五章变量定义和管理

(2)

5.6变量管理工具一——变量组

当工程中拥有大量的变量时,会给开发者查找变量带来一定的困难,为此组态王提供了变量分组管理的方式。

即按照开发者的意图将变量放到不同的组中,这样在修改和选择变量时,只需到相应的分组中去寻找即可,缩小了查找范围,节省了时间。

但它对变量的整体使用没有任何影响。

5.6.1如何建立变量组

在组态王工程浏览器框架窗口上放置有三个标签:

“系统”、“变量”和“站点”(如图5.28所示)。

选择“变量”标签,左侧视窗中显示“变量组”。

单击“变量组”,右侧视窗将显示工程中所有变量。

在“变量组”目录上单击鼠标右键,弹出快捷菜单,选择“建立变量组”。

则在“变量组”目录下出现一个编辑框,如图5.29所示。

在编辑框中输入变量组的名称。

如果按照默认项,系统自动生成名称并添加序号。

变量组定义的名称是唯一的,而且要符合组态王变量命名规则。

图5.28建立变量组

图5.29命名变量组

图5.30建立完成的变量组

变量组建立完成后,可以在变量组下直接新建变量,在该变量组下建立的变量属于该变量组。

变量组中建立的变量可以在系统中的变量词典中全部看到。

在变量组下,还可以再建立子变量组,如图5.31所示。

属于子变量组的变量同样属于上级变量组。

图5.31建立子变量组

选择建立的变量组,单击鼠标右键,在弹出的快捷菜单中选择“编辑变量组”,可以修改变量组的名称。

注意:

根变量组名称“变量组”是不允许修改和删除的。

 

5.6.2如何在变量组中增加变量

变量组建立完成后,就可以在里面增加变量了。

增加变量可以直接新建,如图5.31所示,双击“新建……”图标直接新建变量。

也可以从已定义的变量,包括其它变量组中移动到当前变量组来。

下面主要介绍后者。

图5.32选择要移动的变量

如图5.32所示,在某个变量组中选择要移动的变量,单击鼠标右键,在弹出的快捷菜单中选择“移动变量”,然后选择目标变量组,在右侧的内容区域中,单击鼠标右键,在弹出的快捷菜单中选择“放入变量组”,则被选择的变量就被移动到目标变量组中。

在系统变量词典中,属于变量组的变量图标与其它图标不相同。

在变量分组完成后,使用时,只需在变量浏览器中选择相应的变量组目录即可,如图5.33所示。

变量的引用不受变量组的影响,所以变量可以被放置到任何一个变量组下。

图5.33通过变量组选择变量

5.6.3如何在变量组中删除变量

如果不需要在变量组中保留某个变量时,可以选择从变量组中删除该变量,也可以选择将该变量移动到其它变量组中。

从变量组中删除的变量将不属于任何一个变量组,但变量仍然存在于数据词典中。

进入该变量组目录,选中该变量,单击鼠标右键,在弹出的快捷菜单中选择“从变量组删除”,如图5.34所示,则该变量将从当前变量组中消失。

如果选择“移动变量”,可以将该变量移动到其它变量组。

图5.34移动变量

5.6.4如何删除变量组

当不再需要变量组时,可以将其删除,删除变量组前,首先要保证变量组下没有任何变量存在,另外也要先将子变量组删除。

在要删除的变量组上单击鼠标右键,然后在快捷菜单上选择“删除变量组”,系统提示删除确认信息,如果确认,当前变量组将被永久删除。

5.7变量管理工具二

组态王中提供了很多变量管理和使用的工具和方法等。

如数据词典导入、导出;变量的更新、替换;获得变量的使用情况等。

5.7.1数据词典导出到Excel中

为了使用户更方便地使用、查看、定义或打印组态王的变量,组态王提供了数据词典的导入导出功能。

组态王的变量被导出到Excel格式的文件中,用户可以在Excel文件中查看、修改变量的一些属性,或直接在该文件中新建变量并定义其属性,然后导入到工程中(见5.7.2节)。

数据词典导出功能在工程管理器中。

打开工程管理器,关闭组态王开发和运行系统,在工程管理器的工程列表中选择要导出数据词典的工程。

点击工程管理器工具条上的“DB导出”按钮,或选择菜单“工具\数据词典导出”命令。

执行该命令后,系统弹出文件选择对话框,如图5.35所示。

图5.35输入数据词典导出的文件名

选择保存导出的数据词典文件的路径,并输入保存的文件名称,单击“保存”,工程管理器的状态栏上会出现当前进程的提示和进度条显示。

导出后的文件如图5.36所示。

图5.36数据词典导出文件

☞数据词典的导出规则:

数据词典导出后的Excel文件共有四页:

说明页、模板页、结构变量页和基本变量页。

Ø说明页:

为数据词典导入、导出的使用说明。

用户在导入、导出数据词典时,应参照该说明进行。

该页的内容不可修改。

Ø模板页:

模板页为工程中定义的所有结构模板的信息,其具体格式举例如下:

[模板]模板ID模板名称模板使用记数注释

1离散结构1

[成员]成员ID成员名称成员类型

1离散成员1离散型

2离散成员2离散型

……

模板ID模板名称模板使用记数注释

2整型结构1

[成员]成员ID成员名称成员类型

1整型成员1整型

2整型成员2整型

……

模板:

模板ID为在结构模板中定义的模板的序号;模板名称为结构模板中定义的模板的名称;模板记数为在定义结构变量时应用该模板的次数。

成员:

成员ID是在结构模板中定义的成员的序号;成员名称为结构模板中定义的该结构的成员的名称;成员类型为结构模板中定义的该结构成员的数据类型。

 

Ø结构变量页:

为用户定义的结构变量的信息。

如用户定义了一个结构变量名称为:

离散结构变量,则该页中的信息为:

[结构变量]

变量ID

变量名称

变量类型

变量使用记数

注释

1

离散结构变量

离散结构

0

[成员]

成员名称

成员基本变量ID

离散结构变量.离散成员1

41

离散结构变量1

离散结构变量.离散成员2

42

离散结构变量2

离散结构变量.成员3

43

离散结构变量3

变量ID:

该结构变量在定义的结构变量列表中的序号。

变量名称:

结构变量的名称,即定义基本变量为结构变量类型时基本变量的变量名称。

变量类型:

定义基本变量为结构变量类型时选择的结构模板名称。

变量使用计数:

该结构变量类型的基本变量在组态王中被引用的次数。

成员名称:

该结构变量类型的基本变量的每个成员在组态王中的名称。

成员基本变量ID:

该结构变量类型的基本变量的每个成员在基本变量中的ID号。

注释:

对于该结构变量的注释和基本变量的每个成员的注释。

Ø基本变量页:

将组态王的基本变量按照变量类型的不同分别列出。

导出的每个变量的内容为变量名称、ID号;变量是否记录数据、是否记录参数等选项的情况;变量各个域的值及其描述文本等。

建立基本变量时各有效属性值必须符合以下规则:

⏹模板成员类型有效值:

内存/IO整型、内存/IO实型、内存/IO离散型、内存/IO字符串型、报警窗口、历史趋势曲线、其它模板类型名称。

⏹变量名(名称):

由字母、数字、汉字组成,但不能以数字开头。

有效长度小于32。

⏹是否保存值:

有效值为是或否。

⏹是否保存参数:

有效值为是或否。

⏹报警组:

组态王中定义的报警组的名称。

⏹优先级:

1-999。

⏹报警文本(低低、低、高、高高、关、开、关到开、开到关):

文本有效长度小于16。

⏹变化率单位:

有效值为时、分、秒。

⏹扩展域1、扩展域2:

文本有效长度小于16。

⏹历史记录方式:

有效值为不记录、变化记录、定时记录。

⏹是否生成操作事件:

有效值为是或否。

⏹安全区:

组态王中用户配置中定义的关于安全区的名称(选其一)。

⏹注释:

文本有效长度小于40。

⏹是否产生报警:

有效值为是或否。

⏹报警类型:

有效值为开、关或变位。

⏹设备名称:

为组态王中定义的设备名称,有效长度小于32。

⏹读写属性:

有效值为读写、只读或只写。

⏹是否允许DDE访问:

有效值为是或否。

⏹转换方式:

有效值为线性或开方。

⏹高级转换方式:

查表、直接累计或差值累计。

⏹线性表名称:

查表方式下,线性表的名称。

⏹最小累计值:

使用累计转换方式时,定义累计值的最小值。

⏹最大累计值:

使用累计转换方式时,定义累计值的最大值。

……

其余各项与组态王变量定义相同。

5.7.2从Excel中导入数据词典

数据词典的导入是将Excel中定义好的数据或将由组态王工程导出的数据词典导入到组态王工程中。

打开工程管理器,关闭组态王开发和运行系统,在工程管理器的工程列表中选择要导入数据词典的工程。

点击工程管理器工具条上的“DB导入”按钮,或选择菜单“工具\数据词典导入”命令。

执行该命令,首先弹出“导入数据词典”提示信息框,如下图所示,提示用户在导入数据词典之前是否备份工程。

 

图5.37导入数据词典提示信息框

Ø单击“是”按钮,进行工程备份

Ø单击“取消”按钮,取消导入数据词典操作

Ø单击“否”按钮,进行数据词典的导入。

弹出文件选择对话框,如图5.38所示。

图5.38选择导入数据词典文件

数据词典既可以导入到原工程中,也可以导入到其它工程中。

下面就这两种方式详细说明。

5.7.2.1将数据词典导入到原工程

数据词典导入前,请先关闭组态王的开发和运行系统。

否则系统会提示用户,如图所示。

选择要导入数据词典的工程(导出该数据词典的工程),执行“工具\导入数据词典”菜单命令。

如图5.38所示,从弹出的文件选择对话框中选择要导入的数据词典文件,单击“打开”,将开始导入数据词典。

导入时,工程浏览器的状态条上有导入进度提示信息和导入进度条。

如果在导入前,用户在工程中添加了结构变量模板、结构变量或基本变量,则导入时不能删除和修改引用计数大于0的结构模板、结构变量和基本变量。

导入时,如果Excel文件有错,系统会提示导入失败,用户须按照以上一系列规则仔细检查Excel文件。

5.7.2.2将数据词典导入到其它工程

选择要导入数据词典的工程(非导出该数据词典的工程),执行“工具\导入数据词典”菜单命令。

如图5.38所示,从弹出的文件选择对话框中选择要导入的数据词典文件,单击“打开”,将开始导入数据词典。

导入时,工程浏览器的状态条上有导入进度提示信息和导入进度条。

在系统对Excel文件校验完成后,弹出提示信息,如图所示。

图5.39导入数据词典提示信息

Ø单击“是”导入数据词典

Ø单击“否”停止数据词典的导入

如果用户在工程中添加了结构变量模板、结构变量或基本变量,则导入数据词典时,不能删除和修改引用计数大于0的结构模板、结构变量和基本变量。

导入时,如果Excel文件有错,系统会提示导入失败,如图所示。

用户须按照以上一系列规则仔细检查Excel文件。

图5.40导入数据词典失败信息

5.7.2.3数据词典导入校验

数据词典导入时,会对报警组、变量安全区、变量连接的设备信息等进行校验,如果校验不能通过的话,数据词典将不能导入。

1、报警组校验:

如果导入的数据词典文件中变量的报警组信息错误、或导入目标工程不存在该变量组的话,系统将弹出错误提示信息框,如图所示:

图5.41报警组校验错误信息提示

◆单击“取消”按钮取消数据词典导入的操作。

弹出导入失败信息框,如图所示。

图5.42导入失败信息提示

◆单击“确定”按钮弹出当前工程报警组选择列表框,如图所示。

图5.43报警组选择列表框

在列表框中选择一个适合的报警组,单击“确定”按钮确认,并继续数据词典的导入。

数据词典文件中的每一个导入的变量都要经过校验。

2、安全区校验:

如果导入的数据词典文件中变量的安全区名称信息错误的话,系统将弹出错误提示信息框,如图所示:

图5.44安全区校验错误信息提示

◆单击“取消”按钮取消数据词典导入的操作。

◆单击“确定”按钮弹出当前工程安全区名称选择列表框,如图所示。

图5.45报警组选择列表框

在列表框中选择一个适合的安全区,单击“确定”按钮确认,并继续数据词典的导入。

数据词典文件中的每一个导入的变量都要经过校验。

3、连接设备信息校验:

如果导入的数据词典文件中变量的连接设备信息错误的话,系统将弹出错误提示信息框,如图所示:

图5.46设备校验错误信息提示

◆单击“取消”按钮取消数据词典导入的操作。

◆单击“确定”按钮忽略数据类型的校验,继续数据词典导入。

弹出警告信息框,如图所示。

图5.47警告信息框

◆单击“取消”按钮取消数据词典导入的操作。

弹出导入数据词典失败信息框。

◆单击“确定”按钮忽略数据类型的校验,继续数据词典导入。

$数据词典的导入是一件很危险的事情,所以建议用户:

1、先将工程进行备份,然后导入数据词典,以防不测。

2、在导入之前,系统会严格对Excel文件进行校验,如果有一项未通过,系统将拒绝导入。

为防止重复,导入前,用户应仔细检查该文件,确保正确。

3、导入时,组态王数据词典中引用记数为0的变量将被删除或修改。

4、数据词典导入后,应及时修改连接设备名称错误的变量,防止运行时出现无法运行的情况。

5、对于系统变量的报警组和安全区不做校验。

5.7.3如何获取变量使用情况信息和删除变量

工程人员往往需要知道工程中变量的使用情况,如变量在哪些地方被引用了,有哪些变量没有被工程所使用等。

组态王中都一一提供了相应的工具。

5.7.3.1如何得到变量使用信息

变量在工程中可能被多处引用,组态王提供了“变量使用报告”功能,为用户准确提供变量引用情况。

在选择工程浏览器中的菜单“工具\变量使用报告”,系统出现一个信息提示框,表明系统正在调入画面等,查找变量的引用。

当查找完成后,弹出“变量使用报告”对话框,如图5.48所示。

图5.48变量使用报告

在“变量使用报告”中使用树状结构列出了所有的变量的使用和未使用情况,变量在哪个命令语言中被使用了,在画面中被引用的位置(坐标)。

如果没有被引用,则在该变量的节点处没有含有子节点的标记。

在变量使用报告的状态栏中显示当前“可使用点数”,即使用的组态王加密锁点数;和“已使用点数”,即已经使用的变量数。

用户据此可以判断还可以使用的点数。

点击“保存”按钮,弹出文件保存对话框,可以将变量使用报告保存为.csv格式的文件。

5.7.3.2变量使用更新

使用变量使用更新,可以在增加变量,修改变量引用后,保证变量使用情况的确切信息。

在工程浏览器中选择“工具\更新变量计数”菜单,系统出现更新信息提示条,自动更新变量使用情况。

这样可以在查看变量使用报告时使引用情况更准确。

5.7.3.3删除未用的变量

如果某些变量在工程中未被使用,可以将其删除。

删除时,有两种方法:

直接在变量词典中删除;使用组态王提供的未使用变量列表中删除。

如果用户确定数据词典中的某个变量未被使用,可以在变量词典中直接选中该变量,单击鼠标右键,在快捷菜单中选择“删除”,系统提示是否确定,选择确定后,将直接永久性删除变量。

如果用户不能确定,可以选择工程浏览器中的“工具\删除未用变量”菜单,系统会弹出“删除未用变量”对话框,如图5.49所示,在列表中列出当前工程中定义的未被使用的变量,点击选择要删除的变量,按住键任意多选。

单击“确定”按钮,将永久性删除选中的变量。

如果确定要全部删除列表中的变量,直接单击“全选”按钮,所有列表中的变量将被选中,单击“确定”按钮删除。

图5.49删除未用变量

注意:

1、为保险起见,在删除变量时建议用户不要直接从数据词典中删除变量,而是使用第二种方法删除。

2、在删除未用变量之前,使用“更新变量计数”刷新系统中变量的使用情况。

 

5.7.4变量属性修改和变量替换

5.7.4.1查找数据库变量

进入工程浏览器中的数据词典,选择菜单“工具\查找数据库变量”,或直接在数据词典中单击鼠标右键,在快捷菜单中选择“查找数据库变量”,系统弹出“查找变量”对话框,如图5.50所示。

查找变量有两个选项:

“精确查找”、“模糊查找”,如果选择“精确查找”,则在查找的变量名编辑框中输入准确的变量名称,单击“确定”按钮开始查找。

如果选择“模糊查找”,则在查找的变量名编辑框中输入变量名称的头若干个字符,单击“确定”按钮开始查找。

如果选择了“找到后进行编辑”选项,则系统会在数据词典中从头开始查找与要查找的字符相匹配的变量,找到后,系统自动打开变量属性对话框。

用户可以编辑变量属性。

图5.50查找变量

5.7.4.2多选修改变量属性

组态王提供了允许用户同时选择多个变量(不包括结构变量)修改变量属性的功能。

如图5.51所示,在数据词典中选择要修改属性的变量,选择时,按住键任意多选,按住键选择相邻的多个变量。

单击鼠标右键,在快捷菜单中选择“编辑选种的变量”命令,系统弹出变量属性对话框,如图5.52所示。

相同的变量属性是允许用户进行编辑的,而不同的属性选项则为灰色,不允许编辑。

如果各变量的属性参数定义相同则在相应项中显示出来;如果相同的属性原来各变量定义的参数不相同,则系统在该项中不显示任何内容,如果用户不修改,则确认后,系统保留这些项原来的值,如果做了修改,则所有选中变量的对应属性都变成被修改的值。

图5.51多选变量

图5.52修改多选变量的属性

5.7.4.3变量替换

组态王中变量替换有:

变量名称替换、使用替换。

1、整个工程的变量名称替换

进入工程浏览器中的数据词典,选择菜单“工具\替换变量名称”,或直接在数据词典中单击鼠标右键,在快捷菜单中选择“变量名称替换”,系统弹出“名称替换”对话框,如下图所示。

在“旧变量”编辑框中输入或选择已定义的变量,在“替换为”编辑框中输入新的变量名称(注意:

该变量名称不能与现有数据词典中的变量名称相同)。

单击“替换”按钮开始替换。

如果选择“变量使用替换(不修改数据词典)”选项,则替换进行时,不修改数据词典中对应变量的名称,只修改工程中使用变量的名称。

这种情况多用于替换工程中变量节点名称。

在“旧变量”编辑框中输入原节点名称,在“替换为”编辑框中输入新的节点名称,单击“替换”按钮替换所有匹配的节点名称。

2、使用变量替换

使用替换是指替换画面命令语言中和画面中图素动画连接中的变量替换。

选择组态王画面开发系统的菜单“编辑\变量替换”,或在画面中选中要进行变量替换的图素,单击鼠标右键,在快捷菜单中选择“变量替换”,系统弹出变量“使用替换”对话框,如下图所示。

在对话框上的“替换范围”中选择替换要替换的对象

◆选中的图素:

当前画面中选中的图素

◆当前画面:

当前画面所有图素和画面命令语言

◆所有画面:

所有画面中的图素和画面命令语言

在“旧变量”编辑框中输入已定义连接的变量名称,在“替换为”编辑框中输入已定义的目标变量名,单击“替换”按钮,完成相应替换。

这个功能可以免去用户在替换变量时逐个打开相关的连接然后逐个修改的麻烦。

5.8关于自定义变量

为方便用户使用,组态王在命令语言中提供了用户自定义变量的功能。

用户在命令语言中声明变量类型和变量名称,然后同组态王变量一样,直接在命令语言中用于计算、赋值等操作。

自定义变量的作用区域为当前使用的命令语言模块,当命令语言执行完成后,系统将自动释放该命令语言中的自定义变量。

自定义变量有自定义基本变量和自定义结构变量两类。

5.8.1自定义变量

组态王中的数据类型有BOOL、LONG、FLOAT和STRING四种类型。

自定义变量的数据类型也有这几种。

在命令语言中定义变量如下图所示。

自定义变量在命令语言中使用前,先需要定义。

然后才可以使用。

自定义变量只有值,没有变量域的感念,所以自定义变量不能引用变量的域。

自定义变量可以与组态王变量进行数据交换,相互赋值。

可以作为自定义函数的参数使用,也可以作为组态王函数的参数使用。

自定义变量名称在使用时区分大小写。

图5.53自定义变量

自定义变量在命令语言中可以随时定义,随时使用,不占系统点数。

方便灵活。

如下图所示,为自定义变量在自定义函数中的一个应用。

图5.54自定义变量的使用

5.8.2自定义结构变量

如果工程中已经定义了结构模板,那么在命令语言中就可以使用自定义结构变量,其作用域是当前引用的命令语言模块。

与自定义变量不同的是,自定义结构变量无须在使用前定义其数据类型,因为引用结构的结构成员的数据类型已经在建立结构变量时定义了。

如在工程中建立结构:

Astru,其成员有:

Member1、Member2、Member3。

则在命令语言中使用时,用下面的方法:

Astrua;

a.Member1=10;

a.Member2=20;

……

下面以本章5.3节中所创建的结构变量为例,说明自定义结构变量的使用方法。

如下图所示为创建的结构变量。

图5.55自定义结构变量的使用

自定义结构变量也可以作为自定义函数的参数使用。

相同的结构可以做整体赋值。

 

在组态王中,除了以上介绍的各种变量外,还有一些特殊的变量:

Ø报警窗口名称:

即工程中每定义一个报警窗口,其名称就为组态王中的一个变量

Ø历史趋势曲线名称:

组态王工具箱中和图库中的历史趋势曲线定义后,其名称也将成为组态王中的一个变量

以上两种特殊类型的变量,在组态王数据词典中是无法看到的,但在变量浏览器中可以看到。

该变量也有属性,供用户引用,修改报警窗和历史趋势曲线的参数,具体属性请参见本章5.4节。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1