PLC通訊MODBUS協議的應用及編程

敘述:現為大家講解一下MODBUS的應用,現在工業控制上位機和下位機通信大部分採用通信協議為MODBUS.可想而知機器與機器通信的重要性。


一:MODBUS系統框架圖


PLC通訊MODBUS協議的應用及編程

二:MODBUS運用

MODBUS 通訊的底層為 RS485 信號採用雙絞線進行聯接就可以了,因 此傳輸距離較遠,可達 1000 米,抗干擾性能比較好,且成本低,在工業控制設備的通訊中被 廣泛使用,現在眾多廠家的變頻器、控制器都採用了該協議

傳送數據格式有 HEX 碼數據和 ASCII 碼兩種,分別稱為 MODBUS-RTU 和 MODBUS-ASCII 協 議,前者為數據直接傳送,而後者需將數據變換為 ASCII 碼後傳送,因此 MODBUS-RTU 協議的 通訊效率較高,處理簡單,使用得更多

MODBUS 為單主多從通訊方式,採用的是主問從答方式,每次通訊都是由主站首先發起, 從站被動應答。因此,如變頻器之類的被控設備,一般內置的是從站協議,而 PLC 之類的控 制設備,則需具有主站協議、從站協議

現在以 MODBUS-RTU 協議為例,說明通訊幀的典型格式: 請求幀格式:從機地址+0x03+寄存器起始地址+寄存器數量+CRC 檢驗

PLC通訊MODBUS協議的應用及編程

正常響應幀格式:從機地址+0x03+字節數+寄存器值+CRC 檢驗

PLC通訊MODBUS協議的應用及編程

PLC通訊MODBUS協議的應用及編程

三:PLC 編程時應該注意以下信息:

從機地址:主站發送幀中,該地址表示目標接收從機的地址;從機應答幀中,表示本機 地址;從機地址的設定範圍為 1~247,0 為廣播通信地址。

操作類型:表示讀或寫操作;0x1=讀線圈操作;0x03=讀寄存器操作;0x05=改寫線圈 操作;0x06=改寫寄存器操作。

對於變頻器而言,只支持 0x03 讀、0x06 寫的操作。 寄存器起始地址:表示對從機中要訪問的寄存器地址,對於 MD280、MD320 系列變頻器的 訪問時,對應的就是"功能碼號"、"命令地址"、"運行參數地址"; 數據個數:即從"寄存器起始地址"開始要連續訪問的數據個數,對於寄存器變量,以 word 為單位。

寄存器參數(數據):要改寫的數據(主機改寫),或讀取的數據(從機應答);

四: 程序編程編寫及講解

PLC通訊MODBUS協議的應用及編程

PLC通訊MODBUS協議的應用及編程

結論:以上是對PLC通信舉得例子,只要設置這幾個特殊寄存器就可以通信了,特別是要對RS通信指令的應用和對PLC通信中所用到的特殊寄存器等等。謝謝大家的閱讀與支持,您的支持就是我創作的動力。


分享到:


相關文章: