前几天把系统的6.2版本wincc升级到了wincc7.0 sp1 结果发现 所有C脚本的变量触发器都不执行了。例如我有一个阀门 在画面上用一个静态文本 里的文本来显示阀门的状态,状态包括(全开,全关,正在打开,正在关闭),然后我就在C脚本里做个一个项目函数,获取这4个变量的位状态,然后又一个为true然后就返回0,1,2,3 来对应这4个状态,接着在静态文本的 “文本”里 连接一个动态对话框,选择刚才的那个函数。在触发器里分别选择I/O设备的那4个变量,“标准周期”设置成“有变化时”。就这样。在以前的6.2 里是可以正常工作的。可以很快的反应阀门的状态,可是升级7.0 之后 我试了下 函数本身没问题,手动调用可以执行,触发器设置成标准周期2秒的话也可以。就是弄成变量触发而且是多个变量触发就不行了。这是什么问题啊。请高手指教
问题补充:
我又试了下,在动态对话框中 不连接函数 即使连接一个 '1#阀门关'||'1#阀门开' 这样的表达式,在出发器里他会自动添加这两个变量的变量触发。但是这样在运行以后也他也不去判断那个表达式,这两个变量是通过OPC采集的数据。我测试的如果用内存变量来做这个过程的话是没问题的。
最佳答案
1.设置为单变量触发是否正常。
2.在 Global Script 中重新生成头文件试试。
补充:
1.使用内部变量触发可行,说明画面组态上没有问题,函数也没有问题。
2.问题可能出在 WinCC 对 OPC 的变量变化的判断,建议在 Tag Management 中对 OPC 通道、连接、变量的参数重新组态。
提问者对于答案的评价:
问题找到了。是因为我用的wincc是7.0 OPC是6.2 后来用了光盘里的2008 好了。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc266358.html