技术论坛

 单个趋势控件的大量趋势曲线组态

返回主题列表
作者 主题
Fscosa
侠士

经验值: 1073
发帖数: 25
精华帖: 2
楼主    2021-08-20 00:19:46
主题:单个趋势控件的大量趋势曲线组态 精华帖 

    公司某个工序的设备有很多生产工艺数据需要记录,数据可能有100~200个不等。一般会用单独一个屏幕显示趋势图。操作上的主要诉求有以下几点:

1、 所有曲线趋势图在一个单独的页面显示

2、 能对数据进行分组,能方便的选择需要的曲线,隐藏暂时不需要的曲线

3、 能配置常用的数据曲线显示,在查看完其他曲线后快速恢复到该配置

    第一点是硬性要求,在归档数据很多的时候如果直接离线组态工作量非常大,耗时耗力,编辑到后面人也会很暴躁??;如果有新项目,再重复相同的工作,想想都可怕。因此,选择用脚本进行批量创建是必须得。

    第二点,Wincc的趋势控件中貌似是不支持分组的。在趋势曲线很多时,通过趋势控件的组态对话框勾选或者取消曲线的操作用起来真的非常难受。因此,考虑在趋势控件外做文章,使用“Treeview”控件可以同时满足分组和快捷选择的需求,使用父级节点作为分组目录,子级节点作为趋势曲线的选择栏。

    第三点,实际上来讲也算是对趋势曲线的在线组态需求了。在两百多个趋势数据中,工艺需要经常查看的关键数据可能只有20~30个左右。在进行数据追溯时,往往只需要同时查看4、5个数据,之后需要恢复显示预先设置好的关键数据曲线。这里就需要一个配置文件来保存设置,选择Excel来保存这些配置,因为方便编辑。

    总结起来,大致思路是:使用Excel表格保存趋势曲线的分组及具体曲线配置参数,使用treeview控件读取Excel表格中的树形结构,通过treeview子节点前的选择框来选择添加或删除相应的曲线显示。


-------------实施过程-----------


1、 创建一个pdl,里面添加一个treeview控件,再添加一个趋势控件。

2、 对treeview进行默认设置,激活显示checkbox即可,其他可以根据自己喜好设置

 

3、 对trendcontrol控件进行基本配置,新建一个趋势窗口,新建一个时间轴。由于归档数据太多,数值轴根据数据范围创建了4个数值轴,不用组态任何趋势。

4、 新建一个Excel文件,表格文件中创建了几个字段,每个字段意义如下:

1) Class 用于区分父节点和子节点。Father为父节点,Child为子节点。父节点表示分组,子节点表示该分组下的趋势曲线

2) Text 用于显示分组名称及趋势名称

3) Checked 用于配置对应的曲线是否显示

4) 归档变量 用于配置对应趋势的归档变量名称

5) 坐标系 用于配置趋势对应的数值轴,表格中名称需要与前述设置的名称相同

6) 颜色  用于配置趋势图的显示颜色

7) 类型  用于配置趋势显示的趋势线类型,是线性连接点、步进连接点还是显示值。

5、 配置好Excel文件后,下一步需要wincc运行系统读取到Excel的配置文件。

1) 在pdl的打开画面的事件中,读取Excel的配置,加载treeview节点,同时根据checked状态向趋势控件中动态添加趋势。Excel通过Ado方式访问。


2) 这样运行画面后,应该能得到一个根据excel配置好的趋势图,只显示了勾选过的趋势,其他趋势都没有加载。

6、 现在需要配置通过treeview子节点的checkbox的选择或取消来添加或删除趋势,在treeview控件的NodeCheck事件中编写脚本来实现该功能。部分代码如下。

    到这里,主要的功能应该都实现了。通过勾选树形控件子节点来显示和隐藏需要的趋势,效果应该是这样的。

7、 现在已经实现了前面要求的1、2点的主要功能。但是,对于单独查看自己关心的数据时,需要将自己不关心的趋势全部隐藏的话,在趋势过多时同样也不太方便;关于第3点的要求也没有实现。因此,添加了3个按钮

1)“重新加载”  该按钮用于实现快速恢复显示在excel中配置的趋势。实现方法也比较简单,只需要刷新显示该pdl文件就可以了

2)“保存设置” 该按钮用于将修改后的配置保存到excel文件中;这些配置包含趋势的显示与否,趋势名称的修改,趋势颜色和数值轴的更改等。其实比较偷懒的做法是直接修改Excel文件就可以了,但是对于工艺工程师,他是不可能去修改文件的,不太友好,所以还是用按钮动作实现比较好。

3)“清空曲线” 该按钮只是单纯的为了查看某些趋势时将所有趋势删除,将treeview控件的所有节点的checkbox取消,方便后续选择需要的趋势。


最终效果如下

重新加载,:


保存设置



    最后,画面组态完毕后pdl文件可以不用动了。使用的时候对趋势曲线的组态实际上转换为了对Excel文件的编辑,在大量趋势组态的需求时编辑表格当然是要比在wincc中编辑趋势控件方便多了。在下一个新项目中只需要修改Excel就能快速完成曲线的配置了。


TreeView.xls


RENHQ
至圣

经验值: 68546
发帖数: 12108
精华帖: 59
1楼    2021-08-20 00:37:48
主题:回复:单个趋势控件的大量趋势曲线组态


厉害厉害,效果非常好啊

Q群:https://jq.qq.com/?k=9BDuEgf6
ABBCCC
至圣

经验值: 24327
发帖数: 4843
精华帖: 6
2楼    2021-08-20 06:16:35
主题:回复:单个趋势控件的大量趋势曲线组态
树结构是清晰明了神来之笔!好主意,如果开放打赏我能来个666,小数点排于左2。
谨慎低调
不断攀登
至圣

经验值: 12543
发帖数: 1843
精华帖: 0
3楼    2021-08-20 08:00:01
主题:回复:单个趋势控件的大量趋势曲线组态


  感谢分享。

邮箱 yongquancun@126.com
城外之人
至圣

经验值: 17226
发帖数: 8449
精华帖: 18
4楼    2021-08-20 08:04:21
主题:回复:单个趋势控件的大量趋势曲线组态

思路清晰,录屏效果也好!

无论成与败,无论甜与苦,我还是我。
ZD_JY
至圣

经验值: 12929
发帖数: 1075
精华帖: 8
5楼    2021-08-20 08:41:02
主题:回复:单个趋势控件的大量趋势曲线组态

这个treeview控件是wincc自带的控件吗?第一次看到有人这么用,太厉害了

做最好的自己!活出自我!
yzm_cumt
至圣

经验值: 18166
发帖数: 2649
精华帖: 14
6楼    2021-08-20 08:42:48
主题:回复:单个趋势控件的大量趋势曲线组态

控件是神来之笔啊,这样确实对于多项目的操作复制,方便多了

sometimes you have to be your own hero!
Zaxife
至圣

经验值: 12573
发帖数: 2503
精华帖: 31
7楼    2021-08-20 08:48:32
主题:回复:单个趋势控件的大量趋势曲线组态

讲真,这样也很累的。

不同项目不同变量名称不同需求,只要量上去了就会产生质变,做大量变量的组态不比搬砖头一个一个砖头建房子好到哪里去,中控组态这就是 无双.真.苦力活 啊。

以前的WinCC6.0时代有VBA可以做外挂,效率高很多。

现在的WinCC太臃肿太迟钝了都不怎么想碰了。


城外之人
至圣

经验值: 17226
发帖数: 8449
精华帖: 18
8楼    2021-08-20 10:08:46
主题:回复:单个趋势控件的大量趋势曲线组态

创建百十条曲线,颜色设置就很繁:

1、不能跟趋势控件的背景色相同或相近,否则难以看清;

2、需要事先组态好,看整体效果。

无论成与败,无论甜与苦,我还是我。
Fscosa
侠士

经验值: 1073
发帖数: 25
精华帖: 2
9楼    2021-08-20 11:52:50
主题:回复:单个趋势控件的大量趋势曲线组态

数量大了之后确实都很累,创建变量和添加归档变量都要花费时间

然而需求摆在那里,只能尝试一种相对来说更方便的方式来完成工作。

画面组态很多时候在我看来就是体力活,能跳出这些工作当然最好

笨笨笨笨
奇侠

经验值: 7102
发帖数: 1022
精华帖: 2
10楼    2021-08-20 17:33:39
主题:回复:单个趋势控件的大量趋势曲线组态


干货啊,收藏了!谢谢分享

心有多远路就有多远
天芯
至圣

经验值: 18638
发帖数: 2092
精华帖: 0
11楼    2021-08-20 18:58:00
主题:回复:单个趋势控件的大量趋势曲线组态

感谢分享,真的是受益匪浅

黑猫警长W
至圣

经验值: 18274
发帖数: 2391
精华帖: 1
12楼    2021-08-20 20:52:36
主题:回复:单个趋势控件的大量趋势曲线组态

这个思路不错啊

AISHUISHUI
奇侠

经验值: 8894
发帖数: 374
精华帖: 0
13楼    2021-08-21 08:41:55
主题:回复:单个趋势控件的大量趋势曲线组态


真心不错啊

随心所欲
手机用户20181127620655
游民

经验值: 84
发帖数: 6
精华帖: 0
14楼    2021-08-21 09:53:05
主题:回复:单个趋势控件的大量趋势曲线组态

楼主,有源码吗

手机用户20181127620655
游民

经验值: 84
发帖数: 6
精华帖: 0
21楼    2021-08-22 15:55:13
主题:回复:单个趋势控件的大量趋势曲线组态

求源码,首次接触,网上内容较少

城外之人
至圣

经验值: 17226
发帖数: 8449
精华帖: 18
22楼    2021-08-23 08:16:56
主题:回复:单个趋势控件的大量趋势曲线组态

不要动不动就求源码!这也是知识产权吧?

况且,帖子里面已经将最主要的代码发上来了,你还要什么?

无论成与败,无论甜与苦,我还是我。
2022年应届生
侠客

经验值: 777
发帖数: 105
精华帖: 0
23楼    2021-08-23 09:35:07
主题:回复:单个趋势控件的大量趋势曲线组态

我们现在做的都是单个AI点击,跳出对应的独立曲线,使用一个公共曲线弹窗,效果也不错。

木头515
侠圣

经验值: 2151
发帖数: 251
精华帖: 0
27楼    2021-08-25 09:16:39
主题:回复:单个趋势控件的大量趋势曲线组态

这个需要学习,不同的工况使用不同的思路。赞

低头做事,抬头做人!!
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。