设为首页收藏本站积分获取及使用技巧附件上传须知[求助-wincc]WINCC的实现图形颜色的显示时,有多个变量的条件下··· ...

追梦工控论坛|工控论坛-专业的Intouch论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

总共8197条微博

动态微博

查看: 9641|回复: 2

[求助-wincc]WINCC的实现图形颜色的显示时,有多个变量的条件下··· ...

[复制链接]

升级  32.5%

该用户从未签到

发表于 2013-12-23 19:45:07 | 显示全部楼层 |阅读模式

上传分享工控资料得追梦点,下载积分获取办法点击进入 ☆追梦点充值入口
发帖回帖赚金币兑换下载积分。上传附件须知点击进入

×

马上注册,结交更多工控达人,分享经验,让你轻松玩转追梦工控论坛。

已有帐号?  点击登录   或者        

支付宝扫一扫领红包
您好!
WinCC中有一个小问题,一般某个图形的颜色的显示或可见度都可以在“动态对话框”选定一个变量然后选定条件即可,但是如果要实现多个变量的不同条件时实现该图形的颜色的显示或可见度时怎样实现?就例如:有个矩形的动态颜色有两个(Bool型),1时为绿色,0时为红色,条件为变量a=1且b=1时为绿色,其它情况为红色。这仅仅是一个比如,可见度也是一个道理,是不是这样做要自己编程序呢?</p>
让我们联手拒绝网络伸手党,下载积分获取办法&附件上传须知 ☆追梦点充值入口





+1
9643°C
2
  • uqaqgvc
  • tyr5507
过: 他们

升级  29%

该用户从未签到

发表于 2013-12-23 20:17:02 | 显示全部楼层
这个可以,如果你全是Bool类型变量的话,比如2个变量组合,你在动态对话框数据中组态:数据类型选择模拟量,表达式输入''NewTag''+2*''NewTag_1'',这样组合以后的结果就分成了0,1,2,3四种结果你想要怎么变色都可以。如果是3个变量就输入''NewTag''+2*''NewTag_1''+4*''NewTag_2'',这样的结果就为0-7共8种结果。想怎么组态颜色都可以。
                              
图片说明:1,  

                                                                                                                                                                                                                                
                                                        

升级  29%

该用户从未签到

发表于 2013-12-23 20:51:20 | 显示全部楼层
这就需要脚本变成了,你先连接一个变量A,然后转换成c脚本,复制define行,修改后面的变量名为变量B。后面的if条件为:
if 条件1
return 颜色代码1
else return 颜色代码2
修改为
if 条件1
return 颜色代码1
else if 条件2
return 颜色代码1
else return 颜色代码2
最后点击脚本的触发器,添加触发变量变量B。
                                                                                                                                                                                                                                                                                                                                   
                                                                                                                                                                                                            在plc处理合并好,再在软件中实现
                                                                                                                                                                                                                                                                                                                                   
                                                                                                                                                                                                            楼上三位高手说得都不错,这边常用第三种(&quot;mugui&quot;)的方法
                                                                                                                                                                                                                                                                                                                                   
                                                                                                                                                                                                            既然你用的是动态对话框,就继续用动态对话框实现。动态对话框有两种常用条件,一种是模拟量,一种是数字量,也就是Bool型。你说得就属于Bool型,对其理解可简化为,不管我们怎么运行,条件再怎么复杂,由于其只可能为1或者0,那么我们就可以把需要的结果列举出来,这就很荣易做了。你的比如条件是a=1,b=1,则执行1,否则都执行2,两者同时为1则执行,简单的相加是不能实现的,因为1+1=1,与0+1=1的结果是一样的,这就判断不出来,所以通常需要改变某一项系数。如1+2*1=3,但是1+0*=1,这就实现要求了。
*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

请珍惜自己的ID,严禁发布垃圾水贴,诸如adsf......顶......纯表情......多次重复回帖刷积分......轻则删帖警告,重则封禁!★请分享资料、经验或者赞助论坛,贡献一份力量★

关闭

最新活动上一条 /1 下一条

小黑屋|手机版|追梦工控论坛|工控论坛-专业的Intouch论坛 ( 皖ICP备10012005号 )|网站地图

GMT+8, 2025-5-5 06:03 , Processed in 0.124147 second(s), 21 queries , Gzip On, APCu On.

Powered by Dreamyiyi

© 2009-2025 工控论坛

快速回复 返回顶部 返回列表