北岛夜话
原创工业智能控制领域(PLC、单片机/嵌入式、机器人、通信、机器视觉)的技术及经验分享。
文章397 浏览3301975

西门子触摸屏VBScript编程系列教程(3)——变量

今天这篇文章我们来介绍下WinCC中的变量,并讲解怎样使用VBScript脚本访问变量,本文使用的编程软件是WinCC专业版。

cover.png

通常情况下,我们声明WinCC的变量是在左侧项目树的【HMI变量】中。变量需要声明在变量表中,可以是默认变量表,也可以根据需要添加新的变量表。比如下面这张图声明了一个conveySystem的变量表:

HMI变量.png

变量表中定义的变量均为全局变量,它们在全局范围内有效。一旦在变量表中声明了变量,就可以在画面组态或者VBScript脚本中直接使用。全局变量的名称在整个项目中必须是唯一的。WinCC中的变量不区分大小写,比如"startMotor"和"startmotor"表示同一个变量。

全局变量根据访问范围的不同,可分为内部变量和外部变量。

  • 外部变量是组态了PLC连接的变量,它与PLC中的变量相对应。对外部变量的修改会直接影响PLC中的变量;

  • 内部变量仅在WinCC内部使用,不直接影响PLC变量;

举个例子,下面这张图是conveySystem变量表中的变量,其中:

  • startMotor1和stopMotor1是外部变量,它的连接属性为"HMI_connection_1",与"PLC_1"中的startMotor1和stopMotor1变量相对应,修改WinCC中的变量会直接导致PLC中的变量被修改;

  • motorStarted和motorStopped是内部变量,可以在当前WinCC项目中使用;

全局变量.png

可以在VBScript脚本中使用SmartTags对象访问全局变量。比如下面的代码修改两个全局变量的值:

code1.PNG

一些高版本的WinCC RT也支持直接使用变量名访问全局变量,代码如下:

code2.PNG

除了在变量表中定义全局变量,我们还可以在VBScript脚本中使用"Dim"关键字声明变量,这种情况下声明的变量为局部变量。比如下面的代码:

code3.PNG

VBScript局部变量不区分大小写,在声明时也不需要指定数据类型。局部变量只在当前脚本内部有效。

好了,关于WinCC中的变量就先介绍到这里。

我的微信视频号分享一些工控小知识,欢迎扫描下面的二维码观看:

founderchip.png

取消

感谢您的支持,欢迎常来看看!

扫码支持
一点动力,多少随意

打开支付宝扫一扫,即可进行扫码打赏哦

发表评论

牛年到,祝福到!

祝愿大家在新的一年里,身体健康,工作顺利,财运滚滚,牛年大吉!

×