说明:
为了在 WinCC Runtime 中根据操作员命令显示/隐藏附加测量点信息,该条目描述了如何创建 WinCC 自定义对象。该功能可以让用户了解在过程画面的哪些地方包含了哪些测量点。该功能提供了描述过程画面的一个不错的选择。n
要求:
该条目中提供的样例基于下面的要求:n
- 测量点的附加信息 (变量名称和测量点注释) 存储在内部 WinCC 变量中。这些变量是测量点结构的一部分。数值的实际赋值是通过参数化变量的起始值来完成的。自定义对象只能显示 Runtime 中这些变量的内容。为了最小化创建和初始化这些变量所需的时间和精力,用户可以使用组态软件,比如 AS-OS Engineering 或者 WinCC Smart Tools “Export/Import Tags”和“WinCC Configuration Tool”。n
- 通过内部 WinCC 变量 (数据类型“Unsigned 16-bit value”的 控制变量“SWGTYP_XXX_QwTagInfo”),用户可以在 WinCC Runtime 中选择显示/隐藏附加信息。
编号 |
步骤 |
1 |
编辑自定义对象 (插入用于显示测量点信息的对象) 切换到 Edit User Object 模式。将下列图形单元添加到自定义对象: n
- 静态文本 (szTagName),用于显示测量点名称。n
- 静态文本 (szComment),用于显示测量点注释。n
- I/O 域 (QwTagInfo),用于操作员功能编程 (使用操作员命令显示/隐藏)。
完成自定义对象编辑模式。n
图 01n
注意事项:
- 分配有意义的对象名称
分配有意义的对象名称。使用圆括号中指定的对象名称-见步骤 2。
- 放置静态文本“szTagName”和“szComment”
静态文本“szTagName”和“szComment”是用于显示 Runtime 中的实际信息。用户应该在自定义对象的顶层组态这些对象,这样这些显示不会被其它对象覆盖。此时,用户不必组态这些静态文本的基本属性 (比如“Text”,“Adapt Border”,“Display”等),因为它们将被动态化处理。在自定义对象中为这些对象简单定义合适的位置。在自定义对象的左侧的各个对象下面定位对象还是很有用的。
- I/O 域“QwTagInfo”的属性
该对象只是用于组态操作员功能。因此,应该在最下层组态。“Display”属性应该永久地设成“no”。
|
2 |
组态自定义对象 (定义自定义对象的属性) 将下面的属性放置到自定义对象的接口上。对于“Attribute Name”和“Name of Property”,根据各种情况使用下圆括号中指定的名称: n
- szTagName .Text (szTagName)n
- szTagName .Visible (szTagName.Visible)n
- szTagName .AdaptBorder (szTagName.AdaptBorder)n
- szTagName .Height (szTagName.Height)n
- szTagName .Width (szTagName.Width)n
- szTagName .BackColor (TagInfo.BackColor)n
- szTagName .ForeColor (TagInfo.ForeColor)n
- szTagName .FillStyle (TagInfo.FillStyle)
- szComment .Text (szComment)n
- szComment .Visible (szComment.Visible)n
- szComment .AdaptBorder (szComment.AdaptBorder)n
- szComment .Height (szComment.Height)n
- szComment .Width (szComment.Width)n
- szComment .BackColor(TagInfo.BackColor)n
- szComment .ForeColor (TagInfo.ForeColor)n
- szComment .FillStyle(TagInfo.FillStyle)
- QwTagInfo .Flash Frequency Background (QwTagInfo)
注意事项:
|
3 |
用于显示/隐藏附加测量点信息的功能组态 n
用户可以使用内部 WinCC 变量“SWGTYP_XXX_QwTagInfo”控制显示/隐藏附加测量点信息。用户必须在一个合适的位置组态按钮 (例如页脚和页眉),通过这些按钮将变量设定为定义值。变量“SWGTYP_XXX_QwTagInfo”为数据类型“WORD”,各个位的意义如下:n
- 位 0:只有当这个位被置位的时候,才会显示变量名。n
- 位 1:只有当这个位被置位的时候,才会显示测量点注释。n
- 位 2 ...15:不使用。
属性“Properties > Stile > QwTagInfo”直接连接到下面这个变量。n
图 04n
“Events > Stile > QwTagInfo > Change > Change”是通过 C 函数“SWGTYP_XXX_QwTagInfo_OnChange()”进行动态操作的。n
图 05n
可以下载该函数。n
SWGTYP_PU_UMR1_UDO_QwTagInfo_OnChanged.zip ( 2 KB )
功能:
图 06
- 评价控制变量“SWGTYP_XXX_QwTagInfo”
在第一部分,判断控制变量的内容。决定是否将显示的变量名称 (位 0) 和测量点注释 (位 1) 置位。
- 为显示测量点信息设置属性
根据控制变量的当前值,显示变量名称或测量点注释 (属性“Visible”)。必须根据显示设置属性“AdaptBorder”,以使文本域足够宽可以显示信息。当显示关闭时,“AdaptBorder”属性也应该再次关闭。同时, 属性“Width”应该重设为“0”。
为保证下面的自定义对象 Runtime 性能,该步骤是必要的。 当显示附加信息功能打开时,自定义对象的突出显示表面会增大。当显示附加信息功能关闭时,为避免错误操作,突出显示表面应该返回原来的大小。下面的两个图片显示了该情况。
注意事项: 为了在画面中显示突出显示表面,在“Computer properties > Graphics Runtime > Cursor Control: Keys”中选择“Turn on during activation”复选框。
图 07
图 08
使用 C 函数的替代办法 原则上,没有 C 函数也是可以执行的。为了实现上面提到的操作,用户可以直接使用 Boolean 符号或变量链接对象 szTagName 和 szComment 的属性“Visible”,“AdaptBoarder”和“Width”。
图 09
图 09 中显示的组态可以实现下面的效果:一旦内部控制变量“SWGTYP_XXX_QwTagInfo”不等于“0”时,变量名称和测量点注释会尽快显示。
使用 C 函数具有下面的优点:
- 用户可以集中存储功能 (使用项目功能可以进行集中转换)。
- 用户只需将控制变量连接到一个属性。其它属性由 C 函数设置。
- 使用 C 函数,用户可以读出和显示已连接的实际自定义对象。
|
4 |
在过程画面中显示自定义对象,并把它连接到测量点 结合过程画面中的自定义对象,并连接“Process”主题的相关属性。
图 10
|
5 | 在 WinCC Runtime 中测试 在 WinCC Runtime 中测试功能 |
关键字:
用户自定义对象,UDO,测量点号,MID,系统ID,SID
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc337743.html