帮我写一个西门子WINCC VBS脚本
要求如下:1.当前值-目标值大于80自动选择微调1输出
2.当前值-目标值小于80大于30自动选择微调2输出
3.当前值-目标值小于30且大于10自动选择微调3输出
4.当前值-目标值小于10自动选择参数4输出
5.当前值/目标值×参数1+参数1+参数4 为=微调1
6.当前值/目标值×参数2+参数2+参数4 为=微调2
7.当前值/目标值×参数3+参数3+参数4 为=微调3
以下是一个参考代码:
\'获取当前值和目标值
currentValue = HMIRuntime.Tags(\"CurrentValue\").Read()
targetValue = HMIRuntime.Tags(\"TargetValue\").Read()
\'获取参数值
param1 = HMIRuntime.Tags(\"Parameter1\").Read()
param2 = HMIRuntime.Tags(\"Parameter2\").Read()
param3 = HMIRuntime.Tags(\"Parameter3\").Read()
param4 = HMIRuntime.Tags(\"Parameter4\").Read()
\'计算微调值
adjustment1 = currentvalue / targetValue * param1 + param1 + param4
adjustment2 = currentvalue / targetValue * param2 + param2 + param4
adjustment3 = currentvalue / targetValue * param3 + param3 + param4
\'根据条件选择输出
if currentValue - targetValue > 80 then
HMIRuntime.Tags(\"Output\").Write(adjustment1)
elseif currentValue - targetValue > 30 and currentValue - targetValue <= 80 then
HMIRuntime.Tags(\"Output\").Write(adjustment2)
elseif currentValue - targetValue > 10 and currentValue - targetValue <= 30 then
HMIRuntime.Tags(\"Output\").Write(adjustment3)
elseif currentValue - targetValue <= 10 then
HMIRuntime.Tags(\"Output\").Write(param4)
end if
请注意,此脚本仅为参考,具体实现可能需要根据您的实际情况进行调整。 缺少启动脚本条件 ygk12315 发表于 2023-04-08 15:09
缺少启动脚本条件
您好,确实在我的回答中缺少启动脚本的条件。一般情况下,WINCC VBS脚本可以在以下情况下启动:
1. 页面打开时:在页面的VBScript事件中添加你的脚本代码,然后当该页面被打开时,脚本就会被执行。
2. 值发生变化时:在Tag的VBScript事件中添加你的脚本代码,然后当该Tag的值发生变化时,脚本就会被执行。
3. 定时任务:使用WINCC提供的定时器功能,在定时器事件中添加你的脚本代码,然后根据定时器的配置,脚本会按照设定的时间周期性执行。
您可以根据您的实际需求,选择合适的启动方式来运行脚本。 在WINCC画面上做一个启动按钮1为脚本启动条件,循环执行程序0为脚本停止条件 ygk12315 发表于 2023-04-08 15:15
在WINCC画面上做一个启动按钮1为脚本启动条件,循环执 ...
好的,您可以按照以下步骤来实现:
1. 在WINCC画面上添加一个按钮控件,并将其命名为“启动按钮”;
2. 在按钮的点击事件中编写脚本代码,以启动和停止循环执行程序。具体代码如下:
Dim isRunning
isRunning = False
Sub StartProgram()
isRunning = True
Do While isRunning
' 这里添加你的循环执行程序的代码
' 例如:
' HMIRuntime.Tags("tag1").Write(1)
' Sleep(1000)
' HMIRuntime.Tags("tag1").Write(0)
' Sleep(1000)
Loop
End Sub
Sub StopProgram()
isRunning = False
End Sub
3. 将按钮的OnClick事件与StartProgram()和StopProgram()函数进行绑定,以便在按钮被点击时执行相应的函数。具体绑定方法如下:
- 单击启动按钮,在属性窗格中找到OnClick属性,然后双击其旁边的“=”符号。这将打开VBScript编辑器;
- 在编辑器中输入“StartProgram()”(不包括引号);单击“确定”保存脚本;
- 再次单击启动按钮,在属性窗格中找到OnClick属性,然后双击其旁边的“=”符号。这将再次打开VBScript编辑器;
- 在编辑器中输入“StopProgram()”(不包括引号);单击“确定”保存脚本。
完成上述步骤后,点击按钮后脚本将进入循环执行程序,并且在再次点击按钮之前将不会停止。同时,您可以根据实际情况修改StartProgram()函数中的代码,以适应您的需求。
页:
[1]