如何通过Windows 滚动条对象平滑地更改过程值?
操作指导:
滚动条变短是什么原因为了操作过程,需要画面对象以改变参数。窗口对象可用于设计简单直观的参数输入。这些对象可在图形设计器(Graphics Designer)中的对象选项板里的“窗口对象”中到。
可以通过滚动条这个标准的Windows 对象将整数传送到控制器中。
下图所示为“Slider”(滚动条)对象的动态化,目的是以0.1 为单位在-5.0 到 5.0 区间范围内改变变量“NewTag_1”(IEEE 754 32 位浮点数)的值:
可以使用一个变量触发器作为动态对话框的触发器。
“Slider”(滚动条)对象被释放后,设置的数值被写入WinCC 变量。
如何在WinCC 中创建和使用用户自定义颜?
颜值是按RGB(红-绿-蓝)规则汇编的24位的值。在WinCC 7.0 及以上版本,除了RGB 颜之外,用户可以指定透明。在WinCC 7.0,使用的是32位值。下表显示了24位值和32位值的结构。
24位颜值(color 24) 的计算(由3个单独的颜值-红、绿、蓝构成)基于以下的公式。32位颜值(color 32) 计算时额外为透明(Trans)添加了单独的颜值。
∙Color 24 = (2^16)*blue + (2^8)*green + (2^0)*red
∙Color 32 = (2^24)*Trans + (2^16)*blue + (2^8)*green + (2^0)*red
函数 (脚本)
以下文件包含用于计算用户自定义颜值的函数。
该函数由3个输入值(DWORD 类型)计算颜值,并返回RGB 颜值。
Function CreateRGBColor (Byval valRed, Byval valGreen, Byval valBlue, Byval valTrans)
Dim Color
'Calculate the color-value
Color = RGB(valRed,valGreen,valBlue)
Color = Color + valTrans * 2^24
CreateRGBColor = Color
End Function
将对应各颜值的变量名和RGB 颜值的变量名传入该函数。脚本将读取各颜值、计算RGB 颜值,并设置变量。
Function CreateRGBColor_Tag (Byval TagNameRed, Byval TagNameGreen, Byval TagNameBlue, Byval TagNameTrans, Byval TagNameColor)
Dim vColor, Red, Green, Blue, Trans
'Read Tags
Red = HMIRuntime.Tags(TagNameRed).Read
Green = HMIRuntime.Tags(TagNameGreen).Read
Blue = HMIRuntime.Tags(TagNameBlue).Read
If Len(TagNameTrans)>0 Then
Trans = HMIRuntime.Tags(TagNameBlue).Read
Else
Trans = 0
End If
'Calculate the color-value
vColor = RGB(Red,Green,Blue)
vColor = vColor+Trans*2^24
'Set the Color Tag
HMIRuntime.Tags(TagNameColor).Write(vColor)
CreateRGBColor_Tag = vColor
End Function
示例组态
为了从用户自定义的颜获取颜值,客户可以在WinCC 的画面中使用如下图所示的滑动条(仅针对于WinCC 7.0 )改变红、绿、蓝及透明的组成。下图中显示了颜及其计算出的十进制的颜值。可以使用“Gray”按钮设置颜值。
图 01
示例组态的注意事项:
∙滑动条直接连到相应的变量。
∙矩形的背景连接到“Color”变量。
∙当颜值(或透明)改变时,调用 C 动作。动作本身调用“CreateRGBColor_Tag”函数。
“Gray”按钮使用“CreateRGBColor”函数,设置“Color”变量到RGB 颜(128,128,128)。该示例的使用方法如下:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论