做个按钮按鼠标左键OP-D有输出为1,按鼠标右键OP-D输出为0。请各位老师帮我解答下,谢谢。
问题补充:
我想问下HMITUNTIME是表示的画面吗?就是在实现左右键功能之前,我还想做个按钮,只有点击它解锁后。这样再点击左右键这OP—D的功能才生效。感觉是要先设置一个变量,用IF选择语句请老师指点下。谢谢!
最佳答案
Wincc6包含了VBS脚本编程,对于我等熟悉VB编程的可谓带来的福音,但是,由于西门子的C脚本编程功能实在太强大,加上要保持以前版本的一致性和用户编程习惯的延伸性,所以对于VBS脚本并没有太多的介绍。
这里我先来介绍一下Wincc中对于控件引用的一般性论述。Wincc对于控件引用一般都采取定义变量-》使用Set 变量 =对象.(方法或属性)->引用变量来做的。
在变量读取或写入的过程中,我们要接触到一些属性和方法,例如,Read和Write方法,变量的Value属性,熟练掌握这些属性和方法相当重要。
下面解释一下Write和Read方法的语法:
Read data 其中data是读取变量的方法,如果data=1,直接从AS系统读取,相当于C脚本中的Get*****wait()函数,如果省略,则从Wincc变量管理器中建立的变量中读取。
Write data,1 其中data是需要写入变量的数值,1代表直接写入AS系统,相当于C脚本中的Set*****wait()函数,1省略,则写入到由Wincc变量管理器建立的变量中去。
实例:
读取变量的方法:
1 Dim objTag
Set objTag=HMIRunTime.Tags("变量名")
objTag.Read
2 HMIRunTime.Tags("变量名").Read
如果以上例程改成直接读取AS系统变量的话,程序为:
1 Dim objTag
Set objTag=HMIRunTime.Tags("变量名")
objTag.Read,1
2 HMIRunTime.Tags("变量名").Read,1
写变量的方法:
1 Dim objTag
Set objTag=HMIRunTime.Tags("变量名")
objTag.Write 1 '向变量写入数值1
'也可以写为 objTag.Write 10 向变量写入数值10
2 HMIRunTime.Tags("变量名").Write 1
'也可以写为 objTag.Write 10
除了以上方法外,你也可以将一个中间变量的值写入:
Dim objTag,val
Set objTag=HMIRunTime.Tags("变量名")
objTag.Read
val=objTag.Value '中间变量val存放了变量的值
objtag.Write val '写入变量中去
当然,其余的方法还有很多,这些都需要自己在编程过程中总结和灵活运用。
补充回答:
引用:我想问下HMITUNTIME是表示的画面吗?就是在实现左右键功能之前,我还想做个按钮,只有点击它解锁后。这样再点击左右键这OP—D的功能才生效。感觉是要先设置一个变量,用IF选择语句请老师指点下。谢谢!
HMIRUNTIME从字面上翻译是人机界面运行时 的对象,在面向对象设计方法中,对象有好多的属性与方法,Wincc即然给了你这么一个对象了,你就可以用这个对象将它的对应的属性与方法。HMIRuntime.tags("变量")就是一个属性用来取到你定义的变量。然后你取到的这个变量其实又是一个对象,它还有它自已的方法。比如读啦,写啦之类的。
你想做的那个按钮,对应一个变量。点击按钮后改变变量的值,然扣在你的左右键对应的函数前加入一个IF语句判断可以吗?
济南鲁控自动化有限公司
15069126366
赵锐剑
QQ:123003020
提问者对于答案的评价:
Thanks
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc269136.html