新聞中心

當前頁面: 首頁 >新聞中心 >業界動態 >Modbus的ASCII模式和RTU模式是怎么回事?我來告訴你!

Modbus的ASCII模式和RTU模式是怎么回事?我來告訴你!

供稿:深圳市宇泰科技有限公司 2020/9/11 9:15:50
0 人氣:--

在工業互聯網領域,大家一定對Modbus協議并不陌生。前段時間“知識科普小能手”宇泰科技也為大家推送過一篇《幾分鐘帶你吃透Modbus協議》的文章,主要是從工作原理、通訊方式、特點等對Modbus協議進行了一個簡單的介紹。今天小編就接著上回和大家繼續聊一聊Modbus協議下的兩種模式--RTU和ASCII兩種模式。

Modbus協議在串行總線通信中的協議有RTU和ASCII兩種模式。RTU是Remote Terminal Unit的縮寫,意思是遠程終端單元。ASCII是American Standard Code for Information Interchanged的縮寫,意思是美國信息交換標準代碼,是將文字編輯符號、大小寫字母、數字和一些不可見的控制字符進行編碼的一種字符表示形式,除了空字符外,共127個字符編碼。

了解其含義之后,二者到底有哪些區別呢?小編從以下幾個方面進行了對比:

①二者作用不同

兩種協議的不同之處,最簡單的講就是RTU是直接發送數據,二進制代碼,其表示的物理意義,需要發送端和接收端進行約定;ASCII發送的數據是用于表示字符的二進制代碼。

②二者傳輸方式不同

在ASCII模式下,每個8位的字節被拆分成兩個ASCII字符進行發送,比如十六進制數0Xaf,會被分解成ASCII字符“A”和“F”進行發送,發送的字符量比RTU增加一倍;在RTU模式下,每個字節可以傳輸兩個十六進制字符,比如十六進制數0XAF,直接以十六進制0XAF(二進制:10101111)進行發送,因此它的發送密度比ASCII高一倍。

表一:RTU模式傳輸

1.png 

表二:ASCII模式傳輸

2.png 

③兩者的數據幀校驗方式不同。

從上面兩個表格中也可看出:RTU使用CRC校驗,即循環冗余檢驗;ASCII使用的是LRC,即縱向冗余校驗。

④兩者的數據域的長度不同。

RTU數據域的長度為252字符,而ASCII的是其兩倍。

⑤RTU是必須,ASCII是可選項

在Modbus協議標準中,RTU是必須要求的,而ASCII是可選項,即作為一個Modbus通信設備可以只支持RTU,也可以同時支持RTU和ASCII,但不能只支持ASCII。

3.png 

ASCII模式和RTU模式分別有什么優缺點呢?小編為大家做了一個表格,方便進行比較:

微信圖片_20200911084203.png

從上表的比較我們可以看到,Modbus的ASCII協議和RTU協議相比,Modbus ASCII協議擁有開始和結束標記,而Modbus RTU協議卻沒有,所以ASCII協議的程序中對數據包的處理能更加方便。

Modbus ASCII協議的DATA域傳輸的都是可見的ASCII字符,因此在調試階段就顯得更加直觀,另外它的LRC校驗程序也比較容易編寫,這些都是Modbus ASCII協議的優點。

Modbus ASCII的主要缺點是傳輸效率低,因為它傳輸的都是可見的ASCII字符,原來用RTU傳輸的數據每一個字節,用ASCII的話都要把這個字節拆分兩個字節,比如RTU傳輸一個十六進制數0xF9,ASCII就需要傳輸字符'F'和字符'9',對應的ASCII碼0x46和0x39兩個字節,這樣它的傳輸的效率肯定就比RTU低。所以一般來說,如果所需要傳輸的數據量較小可以考慮使用ASCII協議,如果所需傳輸的數據量比較大,最好能使用RTU協議。

 4.png

另外,由于ASCII協議有開始標志和結束標志,所以一個數據包之間的各字節間的傳輸間隔時間可以大于1秒,而RTU協議由于沒有規定開始和結束標記,所以協議規定每兩個字節之間發送或者接收的時間間隔不能超過3.5倍字符傳輸時間,如果兩個字符時間間隔超過了3.5倍的字符傳輸時間,就認為一幀數據已經接收,新的一幀數據傳輸開始,所以RTU協議下兩個字節間傳輸間隔有時間要求。這一區別也決定某些應用場合只能選用其中一種協議。

審核編輯(李娜)
更多內容請訪問 深圳市宇泰科技有限公司(http://c.gongkong.com/?cid=42345)

手機掃描二維碼分享本頁

工控網APP下載安裝

 

我來評價

評價:
一般
支付宝考试后赚钱 pc蛋蛋解封 体彩排列三专家预测号 配资平台哪个好优秀融创配资平台 吉林11选5遗漏 股票融资融券余额什么意思 辽宁11选5能打5码的网址 福彩快乐12玩法规则 黑龙江22选5杀号 赌场网上赌场 双色球最新走势图连线七星彩