liti1985
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 19 個
工控威望: 146 點
下載積分: 666 分
在線時間: 12(小時)
注冊時間: 2011-08-26
最后登錄: 2015-11-10
查看liti1985的 主題 / 回貼
樓主  發(fā)表于: 2015-01-26 16:36
PLC運行中,采集最近10分鐘內(nèi)的數(shù)據(jù),每1S采集1次數(shù)據(jù)(即累計最新的600次數(shù)據(jù)),求出600次數(shù)據(jù)平均值,如何編程?
kokoper
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 238 個
工控威望: 357 點
下載積分: 1335 分
在線時間: 144(小時)
注冊時間: 2014-07-23
最后登錄: 2018-09-17
查看kokoper的 主題 / 回貼
1樓  發(fā)表于: 2015-01-27 10:33
引用
引用第1樓gkrj20120815于2015-01-26 16:53發(fā)表的  :
用1秒周期定時器接通一次AI通道,再把當前AI的數(shù)據(jù)存在一個地址(A)里,下一秒鐘時間到后把A地址里的數(shù)據(jù)和當前一秒鐘的AI數(shù)據(jù)相加,一直加到600秒,600秒后,用A地址里的數(shù)據(jù)除以600

一樓說法有漏洞啊,要考慮怎么減去10min前的數(shù)據(jù)。
我覺得是不是可以用一個600的數(shù)組,用定時器中斷讀取AI,用移位指令輸入當前值的同時將10min前的值移出數(shù)組,然后對數(shù)組求均值