hxy 发表于 2023-3-24 10:08:10

帮我写一个西门子WINCC VBS脚本,

在全局变量动作里面,
写一个用变量触发读取电脑系统时间并写入PLC字符串变量里面

chatGPT_小智 发表于 2023-3-24 10:08:21

以下是示例代码:

```vb
Dim sysTime As String
sysTime = FormatDateTime(Now(), vbShortTime) \'获取当前系统时间并格式化为字符串
TagValue(\"DB1.DBB0\") = sysTime \'将系统时间写入PLC字符串变量DB1.DBB0中
```

在全局变量动作中添加以上代码即可实现用变量触发读取电脑系统时间并写入PLC字符串变量的功能。需要注意的是,需要事先定义好PLC变量DB1.DBB0并确保连接成功。

hxy 发表于 2023-3-24 10:20:35

在全局脚本vbs-editor动作里面,
写一个用变量触发读取电脑系统时间并写入指定PLC字符串变量地址里面

chatGPT_小智 发表于 2023-3-24 10:20:48

以下是示例代码:

```vb
Dim sysTime As String
sysTime = FormatDateTime(Now(), vbShortTime) \'获取当前系统时间并格式化为字符串
Dim plcAddress As String
plcAddress = \"DB1.DBB0\" \'指定PLC字符串变量地址
WritePlcValue(plcAddress, sysTime) \'将系统时间写入指定PLC字符串变量中
```

在全局脚本vbs-editor动作中添加以上代码即可实现用变量触发读取电脑系统时间并写入指定PLC字符串变量地址的功能。需要注意的是,需要事先定义好对应的PLC变量并确保连接成功。函数WritePlcValue()是自定义的函数,用于向PLC写入变量值,具体实现方式需要根据所使用的PLC通讯库和协议进行编写。

hxy 发表于 2023-3-24 10:28:59

Dim sysTime As String   这段提示语法错误

chatGPT_小智 发表于 2023-3-24 10:29:12

非常抱歉,我的回答有误。在VBScript中,声明变量的语法应该是 `Dim 变量名`,而不是 `Dim 变量名 As 类型`。以下是修正后的代码:```vbDim sysTimesysTime = FormatDateTime(Now(), vbShortTime) \\\'获取当前系统时间并格式化为字符串Dim plcAddressplcAddress = \\\"DB1.DBB0\\\" \\\'指定PLC字符串变量地址WritePlcValue plcAddress, sysTime \\\'将系统时间写入指定PLC字符串变量中```需要注意的是,在VBScript中没有数据类型声明,因此变量可以存储任何类型的数据。

hxy 发表于 2023-3-24 10:44:37

FormatDateTime(Now(), vbShortTime) 提示语法错误

chatGPT_小智 发表于 2023-3-24 10:44:52

非常抱歉,我的回答有误。在VBScript中,函数名和参数不需要在括号里面使用逗号进行分隔,正确的语法应该是:```vbDim sysTime As StringsysTime = FormatDateTime(Now(), 4) \\\'获取当前系统时间并格式化为字符串Dim plcAddress As StringplcAddress = \\\"DB1.DBB0\\\" \\\'指定PLC字符串变量地址WritePlcValue(plcAddress, sysTime) \\\'将系统时间写入指定PLC字符串变量中```需要注意的是,FormatDateTime函数的第二个参数表示日期/时间格式的类型。根据VBScript的文档,vbShortTime对应的值是4,因此在本代码中使用了4作为参数。
页: [1]
查看完整版本: 帮我写一个西门子WINCC VBS脚本,