y_fx2000
級別: 家園?
|
西門子的1200系列cpu做模擬量累積(例如做流量的累積),瞬時流量準(zhǔn)確但累積流量不準(zhǔn)確,偏差非常大,感覺上是低端cpu時間基準(zhǔn)不準(zhǔn)確導(dǎo)致的,因?yàn)橛猛瑯拥木幊谭椒ㄔ赟7-300和1500系列下又是準(zhǔn)確的。不知道各位可否有什么好的解決辦法,請大神指導(dǎo)。 順便說一下我是OB30里面做累積的,循環(huán)中斷時間為100ms |
---|---|
|
eaglesence
eaglesence
級別: 家園常客
|
貼程序看一下,是否是ob設(shè)置的循環(huán)和程序中使用的不一致 |
---|---|
|
工控的淚
飛來山上千尋塔聞?wù)f雞鳴見日升不畏浮云遮望眼自緣身在最高層
級別: 家園?
|
程序累計量比實(shí)際累計量少50%。 |
|
---|---|---|
|
wanghuijun
級別: 探索解密
|
你這程序肯定不準(zhǔn),西門子浮點(diǎn)數(shù)的小數(shù)點(diǎn)位數(shù)有限制,你的流量除以36000整數(shù)部分肯定是零,估計小數(shù)點(diǎn)后還有很多零,那得舍去多少, |
---|---|
|
y_fx2000
級別: 家園?
|
1S累積一次沒用過,之前在300和1500上都是100ms這種做的,都沒有問題。 |
---|---|
|
y_fx2000
級別: 家園?
|
目前還沒有很好的解決方案,樓上說的小數(shù)位數(shù)的問題,應(yīng)該沒有關(guān)系,real值是32位的應(yīng)該不會存在截取的問題。很早以前在用S7-200的時候就遇到過這個問題,最后是通過設(shè)置一個修改系數(shù)來處理的,相當(dāng)于根據(jù)實(shí)際的累積量來對程序進(jìn)行系數(shù)修正,但這會出現(xiàn)一個問題是每一臺CPU均不一樣,需要不同的修改系數(shù),這在實(shí)際的使用過程中會非常不方便。因此在此把這個問題拋出來,希望有實(shí)際項目經(jīng)驗(yàn)的同仁能一起討論,希望能有一個很好的解決方案。 這種問題,只有有實(shí)際項目經(jīng)驗(yàn)的人才能感受得到,理論學(xué)者就不說了。像這種問題非常常見,比如工業(yè)上用的電子皮帶秤,也是一個很好的例子,問了很多設(shè)計人員都沒有很好的解決方案,最終都是直接用1500(S7-300)系列的cpu,提升plc檔次解決該問題,但這種就導(dǎo)致了成本的上升!小公司用不起,我們做的設(shè)備成本也高。 |
---|---|
|
gxtmdb82164
級別: 論壇先鋒
|
我覺得不太對,這是最基礎(chǔ)的定時中斷執(zhí)行問題,即使存在誤差也是us級別的,而且不存在累積誤差,幾塊錢的單片機(jī)都能完成的任務(wù),沒理由1200PLC做不到. 而且本身100ms這個周期也是非常容易做到了,如果懷疑硬件問題可以上示波器,沒示波器也可以同時接兩臺上去做AB測試.我傾向于是軟件問題,比如濾波 這個程序讓我寫我會選擇10ms的中斷里面采樣10次然后中值濾波后再進(jìn)行累積 |
---|---|
|