WinCC 中的 Visual Basic Sc​​ript 是什么?

VBScript 或 Visual Basic 脚本是一种用于开发和设计自动化和脚本任务的脚本语言。VB 脚本通常用于 HMI 环境中的脚本,以自动执行重复性任务,例如标签值、可视化任务、警报处理、网络错误处理、管理任务等。VBScript 是一种更加用户友好的脚本语言,因此主要用于工业控制系统。它基于 Microsoft 的 Visual Basic 编程语言,主要用于自动化任务。在 WinCC 中,VBScript 有助于设计更加用户友好的图形用户界面。WinCC HMI 也支持 VBScript。本文仅适用于 WinCC HMI 脚本。您可以在 WinCC 软件或 WinCC TIA Portal 中使用此脚本语言。

为脚本添加组件和标签

在 wincc Flexible 或 wincc TIA Portal 中打开或创建项目。选择 HMI 并将组件添加到您的 hmi 在本文中插入一个按钮和两个输入输出字段以及一个文本字段。插入这些组件后,添加 input1、input2 标签并在标签表中选择 UINT 数据类型。为输入输出字段分配 input1 和 input2 标签。

图片

如何在 wincc 中添加 vbscript

要在 wincc 中添加 vbscript,请转到项目树打开脚本,然后单击添加新 vbscript,下一步是为 hmi 编写脚本。在 wincc 中有两种类型的脚本函数可以添加

Sub:Sub 是子程序函数,用于执行不返回值的代码块。它执行一系列语句或操作。

函数:函数用于执行返回值的代码块。它通常用于需要执行某些计算或操作并返回结果的情况。

在 vb 脚本中打开属性以选择上述脚本类型。默认为 Sub 函数。第一个例子是 vbscript 中的子程序函数,第二个例子是没有参数的 vbscript 函数。

图片

如何在 wincc 中编写 vbscript

添加脚本后,在 wincc Flexible 中打开脚本并编写以下代码,在此脚本示例中,我们只需添加两个输入输出字段值。以下是脚本子程序 vb 脚本示例说明

图片

上述 wincc vbscript 的解释

子 VBFunction_3()

Sub :子程序函数

VBFunction_3() 是子程序函数名称,您可以根据程序进行更改。

Dim:声明用于存储数据的变量。

value1 和 value2 将保存智能标签的值。

结果将用于引用 HMI 中的屏幕项(例如,文本字段)。

SmartTag 关键字用于读取标签输入1 和标签输入2 的值。

Set:用于将对象引用赋给变量。此处的结果指的是特定的屏幕项。

HmiRuntime.Screens("Screen_2")访问 HMI 的“Screen_2”。您可以用您的屏幕名称替换根屏幕。

ScreenItems("Text field_1"):指的是“Screen_2”上的特定对象(文本字段)。“Text field_1”是将显示结果的屏幕项的名称。

result.Text:Text field_1 屏幕项的 Text 属性已更新。

创建脚本后,单击检查脚本错误,如果错误检查期间发生任何错误,请删除错误以进行下一步。

在 wincc 中的 hmi 组件中声明 vbscript

创建无错误脚本后选择按钮并打开按钮属性并在事件中选择事件选择按钮按下事件并选择脚本

图片

模拟期间检查脚本

在模拟中,您可以检查 HMI 中的实际工作情况。在按钮事件模拟程序中分配脚本后进行测试。当 wincc 模拟启动时,输入输出字段的值发生变化。假设输入字段值为 124,输入字段值为 124,然后按下添加按钮,这些输入输出字段的结果显示在文本字段中。

图片

wincc中vbscript函数的简单示例

在这个简单的 vb 脚本中,按下增量按钮时增量值。每次单击增量按钮,值都会增加 1。因此,首先添加按钮并将按钮重命名为增量,然后添加一个数字输入输出字段,我们在其中显示按下按钮时的增量值。添加一个脚本,然后在脚本编辑器中添加以下脚本。

图片

上面是 wincc 中不带参数的 vbscript 函数。此 VBScript 代码定义了一个名为 VBFunction_4 的函数,该函数将名为“tag1”的 SmartTag 的值增加 1,然后返回更新后的值。以下是 wincc 中 vbscript 的逐行解释

函数 VBFunction_4()

这声明了名为 VBFunction_4 的函数的启动。

VBScript 中的函数可以执行代码并且必须返回一个值。

SmartTags(“tag1”) = SmartTags(“tag1”) + 1

此行将存储在 SmartTag 中的键为“tag1”的值增加 1。

SmartTags(“tag1”):指的是与名为“tag1”的标签关联的值。

+ 1:将 SmartTags(“tag1”)的当前值加 1 并更新它。

VBFunction_4 = SmartTags(“tag1”)

这会将 SmartTags(“tag1”)的更新值分配给函数的名称 VBFunction_4。在 VBScript 中,这就是指定函数返回值的方式。

结束函数

标记函数的结束。

在 wincc 中声明 vbscript 函数

创建上述脚本后,将此 vbscript 函数定义为按钮,以便在单击按钮时可以使用此脚本。因此,首先转到按钮属性,打开按钮事件选项卡并选择脚本。然后在输入输出字段中在流程标签属性选项卡中声明 tag1。

图片