數(shù)值鎖存及比較
劉玉蓉
發(fā)布于2014-10-23 17:58
20
0
標(biāo)簽:
從液位計(jì)連續(xù)讀取的數(shù)值(MW208),用它去比較5秒鐘前的MW208,應(yīng)該用什么辦法?
目的是如果5秒后液位值還沒有變化,則給出報(bào)警。
如何鎖存5秒前的液位值?液位讀取是連續(xù)的,比較可以是連續(xù)的,也可以是1秒比較一次。
問題補(bǔ)充:
是每隔1秒采集一個數(shù)值,后的數(shù)值和5秒前的數(shù)值比較。
我是用了一個DB來存這5個數(shù)值,再通過5秒時間脈沖+MOVE兩個指令去實(shí)現(xiàn)。但是,我不能實(shí)現(xiàn)丟棄舊的數(shù)據(jù),因?yàn)楫?dāng)MOVE指令執(zhí)行時,那5個數(shù)值全部被更新為新的數(shù)值了。
佳答案
劃一塊區(qū)域用于保存近5秒的數(shù)據(jù),用先進(jìn)先出的方式保存,比如每秒比較一次,需要5個存儲位置,比較一次丟棄舊的數(shù)據(jù),然后添加一個新的數(shù)據(jù)。
————————————————————————————————————————
看來你沒明白我的意思,丟棄舊的數(shù)據(jù)是指丟棄近5個數(shù)據(jù)中舊的一個,并不是5個數(shù)據(jù)全部丟棄,添加一個新的數(shù)據(jù),始終保持存儲區(qū)域里有近5秒內(nèi)5個新的數(shù)據(jù)。
關(guān)于先進(jìn)先出FIFO的功能參考:
https://www.ad.siemens.com.cn/service/answer/solution.aspx?Q_ID=69343&cid=1029