新聞中心
PRESS CENTER
在上個世紀(jì)70年代,工業(yè)自動化領(lǐng)域處于快速發(fā)展時期,不同設(shè)備商之間百舸爭流,但是他們的快速發(fā)展也帶來了一些問題。當(dāng)時不同廠商的設(shè)備使用的是不同的協(xié)議,這讓他們的設(shè)備之間無法進(jìn)行通信。為了解決這個問題,Modbus協(xié)議應(yīng)運而生。它是一種開放、標(biāo)準(zhǔn)化的協(xié)議,可以支持多種數(shù)據(jù)類型和功能碼,能夠滿足不同的通信需求。Modbus協(xié)議,包括ASCII、RTU和TCP三種類型。當(dāng)Modbus協(xié)議使用串口傳輸時,可以選擇前兩種類型,但是需要對數(shù)據(jù)進(jìn)行校驗。當(dāng)使用以太網(wǎng)傳輸時,就用到了TCP類型,這種類型是不需要進(jìn)行校驗的。由于Modbus ASCII的數(shù)據(jù)主要使用ASCII碼來傳輸?shù)?,傳輸效率較低,目前已經(jīng)較少被人使用。相比之下,Modbus RTU和Modbus TCP更適合對傳輸效率要求更高的現(xiàn)代工業(yè)環(huán)境使用。本文將淺析這兩個協(xié)議,介紹它們的工作原理和應(yīng)用場景,希望對你有所幫助。

Modbus通信是這樣的,它采用主從通信模式,就是指有主設(shè)備和從設(shè)備,主設(shè)備能對傳輸進(jìn)行初始化,然后發(fā)送請求給從設(shè)備,從設(shè)備不能主動應(yīng)答,只能根據(jù)主設(shè)備的請求進(jìn)行應(yīng)答。然后從設(shè)備執(zhí)行請求的操作,再向主設(shè)備發(fā)送響應(yīng)。主設(shè)備接收到響應(yīng)后,對它進(jìn)行解析響應(yīng),這樣就完成了一次通信過程。 一個主設(shè)備,可以同時連接一個或多個從設(shè)備,但是一次通信只能有1個主設(shè)備和1個從設(shè)備。主設(shè)備如果連接1個從設(shè)備,它們之間采用單播模式進(jìn)行通信;如果連接的是多個從設(shè)備,則選擇廣播模式進(jìn)行通信。
Modbus RTU支持多種電氣接口,如RS 232、RS 485和RS 422等。它的數(shù)據(jù)傳輸采用二進(jìn)制形式傳輸,每個字節(jié)包含兩個4位十六進(jìn)制數(shù)。RTU協(xié)議指令由地址碼、功能碼、起始地址、數(shù)據(jù)、校驗碼5個部分組成。例如發(fā)送指令: 01 03 76 83 00 0C AE 6F,其中,01是地址碼,代表從機(jī)地址;03是功能碼,表示“讀”;76 83是寄存器的地址;00 0C是讀取寄存器的個數(shù);AE 6F代表CRC校驗。

應(yīng)用場景
由于Modbus RTU是以二進(jìn)制形式進(jìn)行數(shù)據(jù)傳輸,簡單而穩(wěn)定,所以它非常適用于長距離通信、難以布線的場景或者設(shè)備分布較廣的場景,例如工業(yè)自動化場景、小型控制系統(tǒng)等。
Modbus TCP是為Modbus數(shù)據(jù)能在以太網(wǎng)上傳輸而產(chǎn)生的,使用了TCP502端口。Modbus TCP在Modbus RTU的基礎(chǔ)上,加上了MBAP報文頭,由于TCP基于可靠連接的服務(wù),所以不再使用CRC校驗,而是依賴于TCP本身的錯誤檢測和糾正機(jī)制。例如發(fā)送指令:68 68 00 00 00 06 01 03 33 65 00 04,其中,68 68是報文序列號;00 00表示是用的Modbus TCP協(xié)議;00 06表示后續(xù)字節(jié)數(shù);01是從機(jī)地址;03為功能碼;33 65表示寄存器地址;00 04是寄存器的個數(shù)。

應(yīng)用場景
因為Modbus TCP具有傳輸速度快、可靠性高的特點,所以它常常被用在更復(fù)雜的場景中,例如大型控制系統(tǒng)、樓宇控制系統(tǒng)等。
實際工作中,我們在選擇到底使用Modbus RTU還是Modbus TCP協(xié)議時,需要進(jìn)行綜合考慮,如果是已有網(wǎng)絡(luò)基礎(chǔ)設(shè)施、需要大量數(shù)據(jù)交換、快速響應(yīng),TCP是不錯的選擇;如果需要簡單、低成本、長距離通信,那么使用RTU是明智的選擇。
Modbus RTU和Modbus TCP像是一對好朋友,它們各有優(yōu)勢,一起幫助設(shè)備之間進(jìn)行有效的數(shù)據(jù)交換。隨著工業(yè)4.0的發(fā)展,它們將融入更多的新技術(shù),讓我們一起期待未來它們?yōu)楣I(yè)自動化發(fā)展創(chuàng)造更多的價值!