某一个数1s采集归档一次,但是每5s得到这组数据(前5个)的最大值最小值平均值和极值。我想要通过归档工具做这个数的极值,我看到这个归档底下,属性,参数下面有一个动作,这个动作C脚本怎么写?能达到这个功能吗?具体的规则是什么? 我试过拿最大值减去最小值,(通过归档工具反写回某变量里计算,结果再归档。)但是由于极值是这两个数计算的结果,导致极值在下一个5s才会出现,晚了一拍。
问题补充:
数据归档有计算平均值的功能,你设置某一个变量的采集周期1s,归档周期5s,参数设置平均值,他就自动通过前面的压缩数据计算出1~5秒的平均值,看帮助里是叫什么旋转门方法。
最佳答案
这个确实挺难实现的,建议你用connectivity pack 编程实现,connectivity pack手册:
http://support.automation.siemens.com/CN/view/zh/37436159
关于动作,你在帮助里搜“doValue”
提问者对于答案的评价:
西门子工程师给过我这个函数,但是说这个函数又不行。我后来自己想了一个办法。
由于极值是由最大最小值得到的,所以如果我直接显示最大最小值,极差会拖慢一拍计算出来。
那么我就设置最大最小值、平均值再回传到某相应变量(在变量归档窗口直接设定)。把这个相应变量再做归档,图表上直接显示最大最小值再做归档的趋势。这样最大最小极值和平均值就和极值同拍了,而且也不会拖慢wincc速度。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc199186.html