1、如何将WINCC的外部变量(如PLC的变量)与WINCC内部变量联系起来?如外部变量可置内部变量为1,反过来亦可以?
2、WINCC中三个内部变量A、B、C,当A=1,对象的背景颜色为黄,当A=1 AND B=1,对象的背景颜色为绿,当A=0 AND B=0 AND=1,对象不显示或不允许操作员控制,请教C脚本的编写!
最佳答案
对于第二个问题,我在这就认为你A、B、C都为布尔量,这样在内部变量中分别定义A、B、C、bool1、bool2,5个二进制变量,在你对象背景颜色中组态动态对话框,当bool1为真时显示黄色,当bool1为假时颜色为绿。在对象的显示属性中同样组态动态对话框,当bool2为真时显示,当bool2为假时隐藏。然后通过全局C脚本对条件进行判断:
if(GetTagBit("B")&GetTagBit("A"))
SetTagBit("bool1",0);
if(GetTagBit("A"))
SetTagBit("bool1",1);
if(!GetTagBit("A")&!GetTagBit("B")&GetTagBit("C"))
SetTagBit("bool2",0)
这三条语句可以分别写三个全局脚本,然后周期触发,全局脚本务必要有触发,你试试吧!思想应该是正确的,如果调不好,自己琢磨一下
还有一种方法就是不要写全局脚本而是直接在对象的相应属性里定义C动作,语句基本上和全局脚本一样,只是不是给布尔量赋值而是返回一个颜色属性
提问者对于答案的评价:
谢谢你的支持
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc272785.html