Modbus協(xié)議是Modicon開發(fā)的消息傳遞結(jié)構(gòu)。它用于在設(shè)備之間建立主從/客戶端-服務(wù)器通信。Modbus有很多協(xié)議選項。但是使用最多的兩個是Modbus RTU(遠(yuǎn)程終端單元),串行(RS-232或RS-485)協(xié)議或Modbus(TCP / IP)傳輸控制協(xié)議和Internet協(xié)議。兩者有什么區(qū)別?盡管兩種協(xié)議相似,但是成本和速度卻使二者有所區(qū)別。
Modicon于1979年向市場推出了Modbus協(xié)議。Modbus RTU模式是最常見的實(shí)現(xiàn)方式,但是Modbus TCP / IP正在逐漸普及并準(zhǔn)備超越它。為了使Modbus進(jìn)入21世紀(jì),1999年開發(fā)了開放的Modbus TCP / IP規(guī)范。Modbus是開放的標(biāo)準(zhǔn),在工業(yè)制造環(huán)境中是廣泛使用的網(wǎng)絡(luò)協(xié)議。這是數(shù)百家供應(yīng)商已實(shí)現(xiàn)的通用鏈接,可集成到數(shù)千種不同的制造設(shè)備中,以在控制設(shè)備之間傳輸離散/模擬I / O并注冊數(shù)據(jù)。MODBUS通信始終由主節(jié)點(diǎn)啟動到從節(jié)點(diǎn)。從節(jié)點(diǎn)在沒有收到主節(jié)點(diǎn)的請求之前也不會相互之間進(jìn)行通信,而不會傳輸數(shù)據(jù)。
從00001開始的線圈,對應(yīng)于開/關(guān)二進(jìn)制輸出,例如繼電器。
從10001開始的輸入位,對應(yīng)于二進(jìn)制輸入(只讀)。
輸入寄存器,開始于30001,對應(yīng)于模擬輸入(只讀)。
保持寄存器,開始于40001,對應(yīng)于可以改變模擬參數(shù)。
相反,Modbus RTU模式是最常見的實(shí)現(xiàn),使用二進(jìn)制編碼和CRC錯誤檢查。RTU協(xié)議是一種高效的二進(jìn)制協(xié)議,其中消息中的每個八位字節(jié)都包含兩個四位十六進(jìn)制字符。每個消息必須以連續(xù)流的形式發(fā)送。RTU模式下每個字節(jié)(11位)的格式為:編碼系統(tǒng):8位二進(jìn)制,每字節(jié)位:1個開始位,8個數(shù)據(jù)位,最低有效位先發(fā)送,1位用于奇偶校驗(yàn)完成,1個停止位。MODBUS RTU數(shù)據(jù)包僅用于發(fā)送數(shù)據(jù)。它們不具有發(fā)送參數(shù)的功能,例如點(diǎn)名稱,分辨率,單位等。標(biāo)準(zhǔn)MODBUS RTU節(jié)點(diǎn)地址為1-254,其中0保留用于廣播消息且僅用于寫入。串行線路系統(tǒng)上的MODBUS可能使用不同的物理接口(RS485,RS232)。TIA / EIA-485(RS485)兩線制接口是最常見的。作為附加選項,也可以實(shí)現(xiàn)RS485四線接口。不帶中繼器的RS485-MODBUS配置具有一根中繼電纜,直接通過該中繼電纜連接設(shè)備(菊花鏈)。主干電纜(也稱為“總線”)的長度各不相同,但是其兩端必須與線路終端相連。也可以在多個RS485-MODBUS之間使用中繼器。中繼電纜的首尾長度必須受到限制。最大長度取決于波特率,電纜(規(guī)格,電容或特性阻抗),菊花鏈上的負(fù)載數(shù)量以及網(wǎng)絡(luò)配置(2線或4線)。這種總線連接的典型電纜長度最長為1000m,典型的波特率為9600 bps。良好的電纜選擇,至少22線規(guī),
Modbus TCP / IP只是具有在以太網(wǎng)上運(yùn)行的TCP接口的Modbus RTU協(xié)議。使用以太網(wǎng),您可以將通用,可擴(kuò)展的全球物理網(wǎng)絡(luò)(Ethernet)與通用網(wǎng)絡(luò)標(biāo)準(zhǔn)(TCP / IP)和與供應(yīng)商無關(guān)的數(shù)據(jù)表示形式Modbus相結(jié)合。該協(xié)議提供了一個真正開放,可訪問的網(wǎng)絡(luò),該網(wǎng)絡(luò)允許在設(shè)備之間交換二進(jìn)制數(shù)據(jù)塊。對于支持TCP / IP套接字的任何設(shè)備,每個設(shè)備都有可用的開關(guān)和電纜,實(shí)現(xiàn)起來很簡單。它與任何客戶可能已經(jīng)安裝的以太網(wǎng)基礎(chǔ)設(shè)施保持完全兼容。
以太網(wǎng)當(dāng)然要快得多,而且故障排除要容易一些。但是,您可能不希望將以太網(wǎng)用于Modbus通信??赡芴炝?。TCP / IP是Internet上的常見傳輸協(xié)議,并且是一組分層協(xié)議,可在機(jī)器之間提供可靠的數(shù)據(jù)傳輸機(jī)制。以太網(wǎng)已經(jīng)成為許多系統(tǒng)的標(biāo)準(zhǔn),因此它也已成為工廠聯(lián)網(wǎng)的標(biāo)準(zhǔn)之一就不足為奇了。由于以太網(wǎng)技術(shù)已經(jīng)存在了很多年,因此它已經(jīng)發(fā)展到一定程度,以至于實(shí)施此網(wǎng)絡(luò)解決方案的成本已變得可以承受。
以太網(wǎng)設(shè)備將變得更快,但是對于許多Modbus設(shè)備,速度并不是完全必要的。所有這些液位傳感器,溫度傳感器,流量計和其他變送器都不需要非常快地報告數(shù)據(jù)。有必要每隔幾秒鐘報告一次數(shù)據(jù)。吞吐量并不是在以太網(wǎng)上使用RTU的充分理由。MODBUS RTU和MODBUS TCP / IP之間最基本的區(qū)別是MODBUS TCP / IP在以太網(wǎng)物理層上運(yùn)行,而Modbus RTU是串行級別協(xié)議。Modbus TCP / IP還使用6字節(jié)的標(biāo)頭來允許路由。嘗試使RS485網(wǎng)絡(luò)正常工作會遇到很多問題。與以太網(wǎng)設(shè)備相比,您必須處理電線終端問題,網(wǎng)絡(luò)終端問題以及更多的配置問題。但是總體而言,您是否會通過Modbus TCP使用Modbus RTU設(shè)備?Modbus TCP / IP只是具有在以太網(wǎng)上運(yùn)行的TCP接口的Modbus RTU協(xié)議。因此,如果您希望快速獲取數(shù)據(jù),并且想進(jìn)入21世紀(jì),那么Modbus TCP / IP是必經(jīng)之路。