-
您的位置:
- 網站首頁
- > 物聯百科
- > 行業(yè)動態(tài)
您的位置:
Modbus 是一種基于主/從或客戶端/服務器架構的請求-響應協議。在主從關系中,通信總是成對發(fā)生的。一個設備必須發(fā)起請求,然后等待響應。發(fā)起設備(稱為主設備)負責發(fā)起每個交互。通常,主設備是HMI或SCADA系統,從設備是傳感器、可編程邏輯控制器(PLC)或可編程自動控制器(PAC)。在標準 Modbus 網絡中,有一個主站和多達 247 個從站。每個從站都有一個從 1 到 247 的唯一從站地址。
2. Modbus 協議
目前modbus協議主要用于串口和以太網版本。對于串口連接,有modbus RTU和mobus ASCII兩種協議,在數據和協議細節(jié)上略有不同。對于 modbus TCP 等以太網連接,不需要驗證和計算。
2.1 Modb us 數據傳輸模式
1) Modbus RTU
它用于串行通信,并利用緊湊的二進制數據來表示協議通信。RTU 格式遵循命令/數據,帶有循環(huán)冗余校驗校驗和作為錯誤校驗機制,以確保數據的可靠性。Modbus RTU 是可用于 Modbus 的最常見實現。Modbus RTU 消息必須連續(xù)傳輸,字符間沒有猶豫。Modbus 消息由空閑(靜默)時段構成(分隔)。
2) Modbus ASCII
它用于串行通信,并利用 ASCII 字符進行協議通信。ASCII 格式使用縱向冗余校驗和。Modbus ASCII 消息由前導冒號 (":") 和尾隨換行符 (CR/LF) 構成。
3) Modbus TCP
它是一種 Modbus 變體,用于通過 TCP/IP 網絡進行通信,通過端口 502 連接。它不需要校驗和計算,因為較低層已經提供校驗和保護。
2.2 Modbus ASCII、RTU 和 TCP 的區(qū)別
Modbus RTU 和 Modbus ASCII 使用相同的協議。唯一的區(qū)別是通過線路傳輸的字節(jié)在 RTU 中以二進制形式呈現,而在 ASCII 中以可讀 ASCII 形式呈現。關于 RTU 需要注意的重要一點是 RTU 消息沒有 Start_of_text 指示。通信中的接收方使用“靜默”時間來確定新消息的開始。ASCII 確實有一個文本開始標記。二進制消息比 ASCII 短,因此理論上傳輸/接收更快。
Modbus TCP 基本上是在以太網網絡中使用 TCP 接口的 Modbus RTU 協議。Modbus 數據結構是使用 TCP/IP 協議中使用的應用層定義的。TCP協議,用于保證數據的正確接收和發(fā)送,IP是地址和路由信息。Modbus TCP 命令是以太網 TCP/IP 包裝器中包含的 Modbus RTU 命令。Modbus TCP 的優(yōu)勢在于使用現有的以太網設備,這些設備部署廣泛且具有成本效益。