敘述:現(xiàn)為大家講解一下MODBUS的應(yīng)用,現(xiàn)在工業(yè)控制上位機(jī)和下位機(jī)通信大部分采用通信協(xié)議為MODBUS,可想而知機(jī)器與機(jī)器通信的重要性。
一:MODBUS系統(tǒng)框架圖
二:MODBUS運(yùn)用
MODBUS 通訊的底層為 RS485 信號(hào)采用雙絞線進(jìn)行聯(lián)接就可以了,因 此傳輸距離較遠(yuǎn),可達(dá) 1000 米,抗干擾性能比較好,且成本低,在工業(yè)控制設(shè)備的通訊中被 廣泛使用,現(xiàn)在眾多廠家的變頻器、控制器都采用了該協(xié)議。
傳送數(shù)據(jù)格式有 HEX 碼數(shù)據(jù)和 ASCII 碼兩種,分別稱為 MODBUS-RTU 和 MODBUS-ASCII 協(xié) 議,前者為數(shù)據(jù)直接傳送,而后者需將數(shù)據(jù)變換為 ASCII 碼后傳送,因此 MODBUS-RTU 協(xié)議的 通訊效率較高,處理簡(jiǎn)單,使用得更多。
MODBUS 為單主多從通訊方式,采用的是主問從答方式,每次通訊都是由主站首先發(fā)起, 從站被動(dòng)應(yīng)答。因此,如變頻器之類的被控設(shè)備,一般內(nèi)置的是從站協(xié)議,而 PLC 之類的控 制設(shè)備,則需具有主站協(xié)議、從站協(xié)議。
現(xiàn)在以 MODBUS-RTU 協(xié)議為例,說(shuō)明通訊幀的典型格式:請(qǐng)求幀格式:從機(jī)地址+0x03+寄存器起始地址+寄存器數(shù)量+CRC 檢驗(yàn)。
正常響應(yīng)幀格式:從機(jī)地址+0x03+字節(jié)數(shù)+寄存器值+CRC 檢驗(yàn)
從機(jī)地址:主站發(fā)送幀中,該地址表示目標(biāo)接收從機(jī)的地址;從機(jī)應(yīng)答幀中,表示本機(jī) 地址;從機(jī)地址的設(shè)定范圍為 1~247,0 為廣播通信地址。
操作類型:表示讀或?qū)懖僮鳎?x1=讀線圈操作;0x03=讀寄存器操作;0x05=改寫線圈 操作;0x06=改寫寄存器操作。
對(duì)于變頻器而言,只支持 0x03 讀、0x06 寫的操作。寄存器起始地址:表示對(duì)從機(jī)中要訪問的寄存器地址,對(duì)于 MD280、MD320 系列變頻器的 訪問時(shí),對(duì)應(yīng)的就是"功能碼號(hào)"、"命令地址"、"運(yùn)行參數(shù)地址";數(shù)據(jù)個(gè)數(shù):即從"寄存器起始地址"開始要連續(xù)訪問的數(shù)據(jù)個(gè)數(shù),對(duì)于寄存器變量,以 word 為單位。
寄存器參數(shù)(數(shù)據(jù)):要改寫的數(shù)據(jù)(主機(jī)改寫),或讀取的數(shù)據(jù)(從機(jī)應(yīng)答);
四:程序編程編寫及講解
結(jié)論:以上是對(duì)PLC通信舉得例子,只要設(shè)置這幾個(gè)特殊寄存器就可以通信了,特別是要對(duì)RS通信指令的應(yīng)用和對(duì)PLC通信中所用到的特殊寄存器等等。
-
MODBUS
+關(guān)注
關(guān)注
28文章
1759瀏覽量
76769 -
機(jī)器
+關(guān)注
關(guān)注
0文章
777瀏覽量
40667 -
上位機(jī)
+關(guān)注
關(guān)注
27文章
930瀏覽量
54697 -
下位機(jī)
+關(guān)注
關(guān)注
0文章
93瀏覽量
18718
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論