3. WinCC变量归档与趋势

0. 引言

表格与趋势图主要是显示变量的变化,这个功能与输入输出相类似,但是可以显示变量变化的值,比如温度的变化趋势,压力的变化趋势等等。实现固定时长检测一次变量的值。比如20分钟采集一次温度的值,最终采集所有的数值进行过程值归档,最后用图表的形式表现出来。采集的周期,采集的方式,归档的周期都可以进行改变。也可以设置采集触发/停止的条件,归档触发/停止的条件(也称开始事件与结束事件)。

1. 表格控件

双击变量记录———定时器(决定采集和归档的周期时间,可以是周期时间也可以是时序时间,比如设置每个月的1号记录和归档)。
以温度为例建立一个变量记录。
step1:在计算机——启动——打开变量记录运行系统
在这里插入图片描述step2:确保此时的wincc和PLC已经链接,可以获取变量的信息,建立风扇和温度两个变量。
在这里插入图片描述

step3:打开变量记录——定时器——选择时间
在这里插入图片描述
step4:在此界面中选择过程值归档——右键——新增过程值归档。如果记录一个变量就新增一个就好了。设置好变量的类型。
在这里插入图片描述
比如温度的归档就这样设置,改名字“温度”———选择这个变量,后面的信息,比如采集周期时间和归档周期时间都可以更改。
在这里插入图片描述
step5:我们的目的是为了让这些数据显示出来,因此回到图形编辑器——控件——wincc onlinetablecontrol——建立表格画面——常规——给该表格改名字。
在这里插入图片描述
设置表格的时间列信息,如果表格中两个变量,时间不一致的话也可添加新的时间列。
在这里插入图片描述
设置数值列的信息,主要是选择表格中显示数值的变量
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2. 趋势控件

与表格相似,控件——onlinetrendcontrol——分别设置风扇和温度的数值轴

在这里插入图片描述
在这里插入图片描述
因风扇与温度公用一个时间轴所以时间轴可以不改变,然后到趋势中添加变量。、

在这里插入图片描述
在这里插入图片描述
然后与PLC建立连接。
在这里插入图片描述

3. 单击实现窗口调用趋势控件并显示单一趋势

一般建立趋势窗口时都会在下方设置一个”wincc rulercontrol“控件实时显示趋势的值。该控件无需设置,只要拖拽过来即可使用。

  1. 首先建立一个画面文件trend1.pdl,里面放置online trend control趋势控件和wincc rulercontrol控件。只需要改变一下颜色粗细等属性设置即可,不要添加变量。
    在这里插入图片描述

然后修改这两个控件的名称分别为Control1和Control2,下面的控件Control2需要修改数据来源。然后在属性中取消勾选边框和标题。

在这里插入图片描述
在这里插入图片描述
2. 在显示画面中创建PIC_WINDOWS5窗口,然后单击要弹出的模拟量设置事件–鼠标–按左键,编辑C脚本:

#include "apdefap.h"
void OnRButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y)
{
#pragma option(mbcs)
SetPropChar ( lpszPictureName,"PIC_WINDOW5", "PictureName","trend1.PDL");//给弹出窗口设置内容	
SetPropChar ( lpszPictureName,"PIC_WINDOW5", "CaptionText","5#电机后轴振动1 VET_17E");//弹出趋势窗口的标题
SetPropBOOL (lpszPictureName,"PIC_WINDOW5","Visible",1);
SetPropChar ( "trend1.PDL","Control1", "TrendTagName","过程值归档\\VET_17E.OUT");//弹出趋势窗口的变量
}

设置完后运行,画面窗口小电视图标提示未连接则是因为该变量没有归档,需要在变量,过程值归档中将变量加入。

4.单击按钮实现画面调用趋势控件并显示不同趋势

就是在上述C脚本中增加一行代码,然后再控件中多添加一个趋势

#pragma option(mbcs)
SetPropChar ( lpszPictureName,"画面窗口3", "PictureName","trend1.PDL");//给弹出窗口设置内容	
SetPropChar ( lpszPictureName,"画面窗口3", "CaptionText","1号系统");//弹出趋势窗口的标题
SetPropBOOL (lpszPictureName,"画面窗口3","Visible",1);
SetPropWord("trend1.PDL","Control1","TrendIndex",0);  //趋势1
SetPropChar ( "trend1.PDL","Control1", "TrendTagName","过程值归档\\1_Motor_te");//给趋势1分配变量
SetPropWord("trend1.PDL","Control1","TrendIndex",1);  //趋势2
SetPropChar ( "trend1.PDL","Control1", "TrendTagName","过程值归档\\1_ventilator_te");//给趋势2分配变量
}

在这里插入图片描述

  • 29
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值