概述
RS485是廣泛用于工業實施中的串行資料傳輸标準。在實作RS485通信時,通常使用Modbus協定。這将RS485與通過以ASCII字元進行傳輸進行通信的RS232協定區分開來。要使用RS485協定處理裝置,了解Modbus非常重要。
内容
什麼是RS485通訊?
什麼是半雙工系統?
什麼是Modbus?
——Modbus消息
——Modbus消息格式
串行傳輸模式
什麼是RS485通訊
什麼是RS485通訊?
RS485 是類似于RS232的協定,用于實作串行資料通信。兩種協定使用不同的電信号來實作資料傳輸。
在工業環境中使用RS485接口的原因之一是它能夠為連接配接到同一總線的多個裝置提供服務。
解決在查詢多個裝置時需具有多個可用接口的需求。可以通過使用總線終端器,移動開關或将小型電阻器擰到端子上來實作此目的。(注意確定使用正确的接口,因為RS485和RS32協定不完全相容。)在RS232和RS485接口之間建構網關(通常會看到RS485協定直接連接配接到USB,GSM或以太網端口。這種較便宜的方法消除了對使用任何其他元件的需求)
使用RS485端口的裝置通常采用Modbus協定。
附表總結了RS485協定的特征。
RS485在平衡線上提供半雙工傳輸,覆寫距離可達1.2 km。
什麼是半雙工系統?
半雙工系統包括一個或多個發射機和接收機,通信由發送器發出,該發送器針對特定接收器送出請求。然後,發送方等待預定的時間長度以進行答複,或者确定接收方不會再收到任何答複。
RS485網絡是基于主/從架構建構的。主機扮演發送器的角色,向指定的從機送出請求,從機充當接收器。主機監聽響應,如果未在适當的時間範圍内獲得響應,則将終止通信。
什麼是Modbus?
Modbus消息
01)Modbus消息的原理。
在Modbus RS485網絡中,當主站裝置向連接配接的從站發送查詢時,
通信開始。從裝置花時間監視網絡中是否有專門針對它的查詢。
收到查詢後,它将執行一個操作或對主伺服器做出響應。查詢僅由主裝置啟動。
Modbus協定使主機可以選擇将消息尋址到特定從裝置或同時與所有從裝置進行通信。這是使用特殊的“廣播”位址完成的。
讀寫操作使用線圈通過Modbus消息發送。線圈由16位字和二進制寄存器組成。從站隻能響應收到的消息,而不能啟動與主站的通信。
并行連接配接到RS485總線的每個從站裝置都配置設定有唯一的Modbus從站ID。所有Modbus通信都從發送從站ID開始,以警告從站裝置接受查詢或通知主站哪個裝置提供了答複。
以與RS232連接配接相同的方式,需要正确配置從屬裝置和主裝置。如速度和奇偶校驗之類的參數需要在整個網絡中同步。
02) Modbus消息格式
在協定中定義了主站和從站之間的Modbus通信中使用的消息格式。
Modbus查詢由該裝置(或廣播)位址,限定任何請求操作的功能碼,與該請求傳回的資料,和一個誤差校驗字段組成。
Modbus響應由該驗證所請求的動作已被擷取的字段,與響應發送的資料,和一個差錯檢測域的。如果從裝置無法滿足請求或錯誤影響消息的接收,則從裝置将建立一條錯誤消息作為其響應。
串行傳輸模式
Modbus通信采用兩種不同的串行傳輸模式:ASCII和RTU。
Modbus ASCII模式:将每個8位消息作為兩個ASCII字元發送。
ASCII模式的優點包括能夠在文本控制台上輕松監視消息的功能。此模式還允許在不啟動逾時的情況下接受一秒鐘的間隔。
Modbus RTU(遠端終端單元)模式以其他格式傳輸消息。這時一個8位消息包含兩個4位十六進制字元。使用此傳輸模式的資料需要以連續流的形式發送,并且與ASCII模式相比,在可比較的波特率下具有更好的吞吐量。