瀏覽單個文章
aston
*停權中*
 
aston的大頭照
 

加入日期: May 2004
文章: 79
引用:
作者老柏(第四)
我在做MODBUS時發現用同樣的時間週期送同樣的指令下,ASCII模式硬是比RTU模式容易漏,我想說應該是ASCII太慢了所以他還沒解碼完我就再丟


可是我看過設定後感到怪怪的,我的鮑率115200,ASCII起始符號是一個符號文字( : ),RTU的起始是等待10ms
如果以同樣的指令來說ASCII要傳送434位元,以鮑率115200來算相當於3.767ms;RTU模式雖然只要傳送99個位元(以鮑率115200來算相當於0.856ms),但是RTU要先等10ms,所以傳一次RTU要10.856ms


那為什麼ASCII比較容易出錯??還是說速度不是問題傳輸量大才是問題(容易有錯)??


首先你要先了解115200是bps(bits per second),再確認一下你的時間計算公式是否正確。

再來你文章中ASCII的434跟RTU的99是位元?還是位元組?

如果誠如你所說的
434位元(bit)=>54.25位元組(bytes)?
99位元(bit)=>12.375位元組(bytes)?

老實說,我寫這麼多年的Modbus Master & Slave傳送接收程式碼,還沒寫傳送過小數位的bytes啊!

可以教我嗎?
舊 2013-04-30, 05:24 PM #3
回應時引用此文章
aston離線中