Modbus協(xié)議的ASCII模式和RTU模式有什么不同?(總結(jié))
Modbus是一種應(yīng)用層協(xié)議,它定義了與基礎(chǔ)網(wǎng)絡(luò)無(wú)關(guān)的數(shù)據(jù)單元(ADU),可以在以太網(wǎng)(TCP/IP)或串行鏈路上(RS232、RS485等)進(jìn)行通信(以太網(wǎng)ADU和串行ADU略有不同)。在串行鏈路上,Modbus協(xié)議有兩種傳輸模式——ASCII模式和RTU模式。其中,ASCII是英文“American Standard Code for Information Interchange”的縮寫(xiě),中文翻譯為“美國(guó)國(guó)家信息交換標(biāo)準(zhǔn)編碼”;RTU是英文“Remote Terminal Unit”的縮寫(xiě),中文翻譯為“遠(yuǎn)程終端設(shè)備”。今天這篇文章,我們來(lái)聊聊Modbus協(xié)議的ASCII傳輸模式和RTU傳輸模式有什么不同?

首先,讓我們來(lái)看看Modbus的工作原理。
Modbus采用主從(Master-Salve)通信模式,僅有主設(shè)備(Master)能對(duì)傳輸進(jìn)行初始化,從設(shè)備(Slave)根據(jù)主設(shè)備的請(qǐng)求進(jìn)行應(yīng)答。典型的主設(shè)備包括現(xiàn)場(chǎng)儀表和顯示面板,典型的從設(shè)備為可編程邏輯控制器(PLC)。
在串行鏈路的主從通信中,Modbus主設(shè)備可以連接一個(gè)或N(最大為247)個(gè)從設(shè)備,主從設(shè)備之間的通信包括單播模式和廣播模式。
在廣播模式中,Modbus主設(shè)備可同時(shí)向多個(gè)從設(shè)備發(fā)送請(qǐng)求(設(shè)備地址0用于廣播模式),從設(shè)備對(duì)廣播請(qǐng)求不進(jìn)行響應(yīng)。
在單播模式中,主設(shè)備發(fā)送請(qǐng)求至某個(gè)特定的從設(shè)備(每個(gè)Modbus從設(shè)備具有唯一地址),請(qǐng)求的消息幀中會(huì)包含功能代碼和數(shù)據(jù),比如功能代碼“01”用來(lái)讀取離散量線(xiàn)圈的狀態(tài)。從設(shè)備接到請(qǐng)求后,進(jìn)行應(yīng)答并把消息反饋主設(shè)備。
下圖是典型的主從設(shè)備的請(qǐng)求-應(yīng)答機(jī)制:

在主從設(shè)備的通信中,可以使用ASCII模式或者RTU模式。
在ASCII(American Standard Code for Information Interchange)傳輸模式下,消息幀以英文冒號(hào)(“:”,ASCII 3A Hex)開(kāi)始,以回車(chē)和換號(hào)(CRLF,ASCII 0D and 0A Hex)符號(hào)結(jié)束,允許的傳輸?shù)淖址癁槭M(jìn)制的0~9和A~F;網(wǎng)絡(luò)中的從設(shè)備監(jiān)視傳輸通路上是否有英文冒號(hào)(“:”),如果有的話(huà),就對(duì)消息幀進(jìn)行解碼,查看消息中的地址是否與自己的地址相同,如果相同的話(huà),就接收其中的數(shù)據(jù);如果不同的話(huà),則不予理會(huì)。
在ASCII模式下,每個(gè)8位的字節(jié)被拆分成兩個(gè)ASCII字符進(jìn)行發(fā)送,比如十六進(jìn)制數(shù)0xAF ,會(huì)被分解成ASCII字符“A”和“F”進(jìn)行發(fā)送,發(fā)送的字符量比RTU增加一倍。ASCII模式的好處是允許兩個(gè)字符之間間隔的時(shí)間長(zhǎng)達(dá)1s而不引發(fā)通信故障,該模式采用縱向冗余校驗(yàn)(Longitudinal Redundancy Check ,LRC))的方法來(lái)檢驗(yàn)錯(cuò)誤,下面是對(duì)ASCII模式的總結(jié):

在RTU(Remote Terminal Unit)模式下,每個(gè)字節(jié)可以傳輸兩個(gè)十六進(jìn)制字符,比如十六進(jìn)制數(shù)0xAF,直接以十六進(jìn)制0xAF(二進(jìn)制:10101111)進(jìn)行發(fā)送,因此它的發(fā)送密度比ASCII模式高一倍;RTU模式采用循環(huán)冗余校驗(yàn)(CRC),下面是對(duì)RTU模式的總結(jié):

好了,關(guān)于Modbus協(xié)議下ASCII模式和RTU模式的不同。
-
Origin(Pro):學(xué)習(xí)版的窗口限制【數(shù)據(jù)繪圖】 2020-08-07
-
如何卸載Aspen Plus并再重新安裝,這篇文章告訴你! 2020-05-29
-
CAD視口的邊框線(xiàn)看不到也選不中是怎么回事,怎么解決? 2020-06-04
-
教程 | Origin從DSC計(jì)算焓和比熱容 2020-08-31
-
CAD外部參照無(wú)法綁定怎么辦? 2020-06-03
-
CAD中如何將布局連帶視口中的內(nèi)容復(fù)制到另一張圖中? 2020-07-03
