Wincc-自定义对象简化实现阀门复杂控制要求_第1页
Wincc-自定义对象简化实现阀门复杂控制要求_第2页
Wincc-自定义对象简化实现阀门复杂控制要求_第3页
Wincc-自定义对象简化实现阀门复杂控制要求_第4页
Wincc-自定义对象简化实现阀门复杂控制要求_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、使用Wincc-自定义对象实现阀门复杂控制要求一、需求:阀门一般有5种状态:全开全关故障开关。控制:以wincc元件库的阀门为基础,全开的时候显示绿色,全关的时候显示红色,开过程显示闪烁绿色,关过程显示闪烁红色,故障显示闪烁黄色。二、实现:思路一直接在元件的属性写脚本,但是这个方法在不同的控制对象,需要修改变量时,必须进入脚本修改,万一不小心,可能会修改其他代码,而且修改不是很方便思路二建立wincc的自定义对象,可以解决上面问题。步骤1、在内部变量建立五个变量命名为bool1 bool2 bool3 bool4 bool5bool1对应全开bool2全关bool3开bool4关bool5故障

2、2、在画面编辑器中,从库中拖出一个阀门元件和5个静态文本,把阀门元件的符号外观属性修改为Shaded-1 如下图: 文本一对象名改为FullOpen文本二对象名改为FullClose文本三对象名改为Open文本四对象名改为Close文本五对象名改为Fault阀门元件对象名称为Control13、把文本对象叠在一起,并所有文本的显示属性改为否,放到阀门后面,使其看不见。4全选对象(注意阀门元件是否被选中,可能需要shift+单击来选中,右击>自定义对象>创建把UserDefined2名称修改为Script 用来放置需要修改脚本的属性,并将control1的前景色闪烁颜色闪烁样式加入到

3、Script属性组的下面。如下图: 5、回到选择的属性框,右击选择-主题选择并把userDefined3添加到已选主题框中(右移确定后,修改userDefined3为userDefined(这个属性组中存储的是在工程中我们要添加的变量名,分别把FullOpen FullClose Open Close Fault 5个文本变量的文本属性添加到userDefined下面,并右击修改属性的名称,确定完成修改。修改后如下。 6、添加脚本在Script下的ForeColor属性添加vbs脚本:Dim fullopen,fullclose,open,close,faultIf Item.FullOpen

4、<>"" Then '防止输入空字符fullopen=HMIRuntime.Tags (Item.FullOpen.Read( '获取阀门全开变量值End IfIf Item.FullClose<>"" Then '防止输入空字符fullclose=HMIRuntime.Tags (Item.FullClose.Read('获取阀门全关变量值End IfIf Item.Open<>"" Then '防止输入空字符open=HMIRuntime.Tags (It

5、em.Open.Read('获取阀门开变量值End IfIf Item.Close<>"" Then '防止输入空字符close=HMIRuntime.Tags (Item.Close.Read('获取阀门关变量值End IfIf Item.fault<>"" Then '防止输入空字符fault=HMIRuntime.Tags (Item.fault.Read('获取阀门故障变量值End IfIf fault=1 Then'当故障ForeColor_Trigger=RGB(255,

6、255,0'前景色黄色Item.BlinkColor=RGB(180,180,0'闪烁色淡黄色Item.BlinkMode=2 '闪烁模式选择(详见winccElseif fullopen =1 Then '当全开ForeColor_Trigger=RGB(0,255,0'前景色绿色Item.BlinkMode=0'闪烁模式选择(0为取消闪烁Elseif fullclose =1 Then '当全关ForeColor_Trigger=RGB(255,0,0'前景色红色Item.BlinkMode=0'闪烁模式选择(0为取消

7、闪烁ElseForeColor_Trigger=RGB(128,128,128'其他状态为灰色End If在BlinkColor属性中添加如下脚本:Dim fullopen,fullclose,open,close,faultIf Item.FullOpen<>"" Then '防止输入空字符fullopen=HMIRuntime.Tags (Item.FullOpen.Read( '获取阀门全开变量值End IfIf Item.FullClose<>"" Then '防止输入空字符fullclos

8、e=HMIRuntime.Tags (Item.FullClose.Read('获取阀门全关变量值End IfIf Item.Open<>"" Then '防止输入空字符open=HMIRuntime.Tags (Item.Open.Read('获取阀门开变量值End IfIf Item.Close<>"" Then '防止输入空字符close=HMIRuntime.Tags (Item.Close.Read('获取阀门关变量值End IfIf Item.fault<>"

9、;" Then '防止输入空字符fault=HMIRuntime.Tags (Item.fault.Read('获取阀门故障变量值End IfIf fullopen=0 And fullclose=0 And fault=0 ThenIf open=1 Then '阀门打开过程'实现灰色与绿色的交替闪烁Item.ForeColor=RGB(128,128,128BlinkColor_Trigger=RGB(0,255,0Item.BlinkMode=2Elseif close=1 Then '阀门关闭过程'实现灰色与红色的交替闪烁Item.ForeColor=RGB(128,128,128BlinkColor_Trigger=RGB(255,0,0Item.BlinkMode=2End IfEnd IfIf open=0 And close=0 And fault=0 ThenItem.BlinkMode=0'除了开关故障其余取消闪烁End If到这里我们需要实现的功能就已经实现

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论