在WINCC中怎么样制作一个开关量按钮! 点击:14320 | 回复:2



PLC酷客

    
  • [版主]
  • 精华:9帖
  • 求助:31帖
  • 帖子:1460帖 | 7990回
  • 年度积分:457
  • 历史总积分:59176
  • 注册:2004年7月13日
发表于:2013-07-22 19:48:52
楼主

在WINCC中怎么样制作一个开关量按钮!


假设变量为:变量1,二进制变量
复位按钮
先在画面中新建一个按钮——右键属性——事件——鼠标——
按左键——C动作——代码:SetTagBit("变量1",1); //返回类型:BOOL
释放左键——C动作——代码:SetTagBit("变量1",0); //返回类型:BOOL
注意标点符号,不是“,”而是“,”,不然要报错的



楼主最近还看过



PLC酷客

  • [版主]
  • 精华:9帖
  • 求助:31帖
  • 帖子:1460帖 | 7990回
  • 年度积分:457
  • 历史总积分:59176
  • 注册:2004年7月13日
发表于:2013-07-22 19:49:22
1楼

wincc 开关量关联

问:目的:
1、为了节约wincc的点数,想用一个字(比如:vw206)分别控制16个位(比如:v206.0~v207.7其中的指定1个或2个)。
2、使用方法是在数据i/o域输入数字(比如5位数)完成后按回车键后产生一个对v206.0~v207.7其中的指定1个或2个位的控制接通或断开
现在:通过wincc、 pc access、plc200已经建立连接
结果:我在wincc的数字i/o域中输入5位数字后按回车键,plc中的v206.0~v207.7的位是按照我输入的5位数字的二进制值在变化,我想指定其中的1位采用什么办法?
plc中的程序是:LD V207.0
                             =Q0.0
以下是两位大侠的回答,意思就是这个意思,但是我试了,就是走不通,不知道问题在哪里?请大侠在指点指点。


一、在OPC中设置这个VW206为读写;在WINCC中按钮和指示灯都设置成位操作。你补充说明VW206想控制V103.1和V103.3,这个要在PLC中编程。假设用V206.1控制V103.1,在程序中假如用V206.1开点-->V103.0线圈,以此类推就可以了,需要进入WINCC的I点状态则是反过来,Ix.x-->V206.x。WINCC的指示灯则受VW206的这个位来控制颜色。不知道你能看明白吗?
二、如果按照你上面说的,比如,建立的变量地址是QW0(无符号16位),I/O域与QW0地址对应的变量关联,1,2,4,8,16.。。。。对应被赋值的位地址分别为Q0.0, Q0.1, Q0.2,Q0.3。。。。。
如果是用一个按钮去控制某个DB1.DBW0变量中的一个位,可以这样去尝试
圆---属性----背景颜色---动态对话框-----关联DB1.DBW0变量----数据类型选择:bit,然后点击bit,确定要关联的那个位,这样就可以通过一个变量的不同位去显示16个bool位的状态,但是只需要建立一个wincc变量。

答:比如变量:VW206,如果用输入/输出域控制的话:
v206.0置一就输入256
v206.1置一就输入512
.
.
v206.7置一就输入32768
v207.0置一就输入1
v207.1置一就输入2
.
.
v207.7置一就输入128
你要同时置位V206.0和V207.0就输入1+256,这样比较麻烦。
可以用按钮在置某一位时又不影响其它的位,先建个变量Vw206,按钮脚本:
dim tag1
set tag1=HmiRuntime.tags("VW206")
      tag1.read
      tag1.write tag1.valur or 256 ''置位V206.0
set tag1=nothing

如果置位V207.0就用tag1.write tag1.valur or 1,这样你想置哪个都行,又不影响其它的位。


PLC酷客

  • [版主]
  • 精华:9帖
  • 求助:31帖
  • 帖子:1460帖 | 7990回
  • 年度积分:457
  • 历史总积分:59176
  • 注册:2004年7月13日
发表于:2013-07-22 19:50:13
2楼

关于WINCC中的画面窗口问题


问:在应用画面窗口时我在"属性-其他-变量前缀"时应用变量动态对话框连接变量前缀,为什么变量变化时变量前缀也变化了,可是结构变量却连接不上呢?如果把该画面窗口显示隐藏一下,结构变量才能连上呢?如果我切换画面以后在回到该画面,结构变量又连接不上.还需要把该画面窗口显示隐藏一下结构变量才能连上,我该怎么处理呢?
答:使用SetPropChar("画面名","对象名","TagPrefix","你想设置的前缀")



热门招聘
相关主题

官方公众号

智造工程师