• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      Modbus TCP協(xié)議的研究與應(yīng)用

      2019-04-27 01:39:02李煦侃
      科技資訊 2019年2期
      關(guān)鍵詞:工業(yè)以太網(wǎng)現(xiàn)場總線

      李煦侃

      摘 要:隨著現(xiàn)場總線技術(shù)和工業(yè)以太網(wǎng)技術(shù)的快速發(fā)展,工業(yè)自動化領(lǐng)域的通信網(wǎng)絡(luò)正在逐步統(tǒng)一到工業(yè)以太網(wǎng)。Modbus/TCP是工業(yè)以太網(wǎng)技術(shù)中最有發(fā)展前景的一種,在工業(yè)自動化領(lǐng)域具有很高的應(yīng)用價值。該文簡要概述了工業(yè)以太網(wǎng)和Modbus/TCP的歷史與現(xiàn)狀,以及Modbus協(xié)議的基本內(nèi)容,并闡述了Modbus/TCP客戶端的發(fā)送、接收應(yīng)用,對提升我國工業(yè)自動化企業(yè)的自動化水平、提高企業(yè)綜合競爭力、加快企業(yè)信息化建設(shè)等方面都具有現(xiàn)實的意義。

      關(guān)鍵詞:現(xiàn)場總線 工業(yè)以太網(wǎng) Modbus協(xié)議 Modbus/TCP客戶端 Modbus/TCP報文

      中圖分類號:TP273 文獻(xiàn)標(biāo)識碼:A 文章編號:1672-3791(2019)01(b)-0-04

      Abstract:With the rapid development of fieldbus technology and industrial Ethernet technology, the communication network in the field of industrial automation is gradually unifying to industrial Ethernet. Modbus/TCP is one of the most promising industrial Ethernet technologies and has high application value in the field of industrial automation. This paper briefly summarizes the history and current status of Industrial Ethernet and Modbus/TCP, as well as the basic content of Modbus protocol, and expounds the transmission and receiving applications of Modbus/TCP client, which improves the automation level of industrial automation enterprises in China and improves the comprehensive competition of enterprises. It is of practical significance to accelerate and accelerate the construction of enterprise information.

      Key Words:Fieldbus; Indusntrial Ethernet; Modbus Protocal; Modbus/TCP Client; Modbus/TCP Message

      隨著現(xiàn)場總線技術(shù)和工業(yè)以太網(wǎng)技術(shù)的快速發(fā)展,以及關(guān)鍵問題的突破,使得工業(yè)自動化領(lǐng)域的通信網(wǎng)絡(luò)正在逐步統(tǒng)一到工業(yè)以太網(wǎng)。

      Modbus/TCP是工業(yè)以太網(wǎng)技術(shù)中最有發(fā)展前景的一種。Modbus主從式通信機制能很好地滿足確定性的要求,與互聯(lián)網(wǎng)的客戶機/服務(wù)器通信機理相對應(yīng)。

      Modbus通過與TCP/IP相結(jié)合,在TCP幀中嵌入Modbus信息幀,在工業(yè)自動化領(lǐng)域具有很高的性價比,是一種真正開放的理想解決方案,試驗表明了它的有效性,應(yīng)用案例己證明了它在實際應(yīng)用中的價值。

      1 工業(yè)以太網(wǎng)

      隨著現(xiàn)場總線技術(shù)和工業(yè)以太網(wǎng)技術(shù)的快速發(fā)展,以及關(guān)鍵技術(shù)的突破進(jìn)展,使得工業(yè)自動化領(lǐng)域控制級以上的通信網(wǎng)絡(luò)正在逐步統(tǒng)一到工業(yè)以太網(wǎng)。嵌入式技術(shù)的快速發(fā)展使得以太網(wǎng)進(jìn)入工控領(lǐng)域成為可能,而以太網(wǎng)技術(shù)的不斷發(fā)展很大程度上解決了以太網(wǎng)成為工業(yè)控制網(wǎng)絡(luò)的實時性問題。所謂工業(yè)以太網(wǎng),一般來講其在技術(shù)上與商用以太網(wǎng)(即IEEE802.3)兼容,但在產(chǎn)品設(shè)計時,在材質(zhì)選用、產(chǎn)品強度、適用性以及實時性、可互操作性、可靠性、抗干擾性和本質(zhì)安全等方面能滿足工業(yè)現(xiàn)場環(huán)境的要求。按照國際電工委員會IEC SC65C的定義,工業(yè)以太網(wǎng)是指用于工業(yè)自動化環(huán)境、符合IEEE802.3標(biāo)準(zhǔn)、按照IEEE802.1D媒體訪問控制網(wǎng)橋規(guī)范和IEEE802.IQ局域網(wǎng)虛擬網(wǎng)橋規(guī)范、對其沒有進(jìn)行任何實時擴展而實現(xiàn)的以太網(wǎng)絡(luò)[1]。通過采用減輕以太網(wǎng)符合、提高網(wǎng)絡(luò)速度、采用交換式以太網(wǎng)和全雙工通信、采用信息優(yōu)先級和流量控制以及虛擬局域網(wǎng)等技術(shù),目前為止可以將工業(yè)以太網(wǎng)的實時響應(yīng)時間做到5~10ms,相當(dāng)于現(xiàn)有的現(xiàn)場總線。工業(yè)以太網(wǎng)作為一種新興、統(tǒng)一、快速發(fā)展的標(biāo)準(zhǔn),己經(jīng)在工業(yè)企業(yè)綜合自動化系統(tǒng)中的資源管理層、執(zhí)行制造層得到了廣泛應(yīng)用,同時已呈現(xiàn)出向下延伸直接應(yīng)用于工業(yè)控制現(xiàn)場的趨勢。

      2 Modbus/TCP的歷史與現(xiàn)狀

      Modbus協(xié)議原為美國Modicon公司PLC產(chǎn)品通信協(xié)議,后來由于其使用十分廣泛,由Modbus組織于2002年發(fā)展延伸為Modbus TCP/IP規(guī)范[2]。Modbus對于分布式自動化解決方案的未來很重要。通過Modbus協(xié)議,控制器相互之間、控制器經(jīng)由網(wǎng)絡(luò)(如以太網(wǎng))和其他設(shè)備之間可以通信。它是一個標(biāo)準(zhǔn)的、真正開放的、在工業(yè)自動化領(lǐng)域應(yīng)用最廣泛的網(wǎng)絡(luò)通訊協(xié)議,SCADA和HMI軟件可以通過Modbus協(xié)議非常方便地與串行設(shè)備集成到一起。

      Modbus/TCP協(xié)議是Modbus協(xié)議的另一版本,于1999年由施耐德公司推出,以一種非常簡單的方式將Modbus幀嵌入到TCP幀中,使Modbus與以太網(wǎng)和TCP/IP結(jié)合,成為Modbus TCP/IP[3]。Modbus/TCP和它的一個配套協(xié)議RTPS一起,作為實時工業(yè)以太網(wǎng)協(xié)議簇,被提交給IEC SC65C。

      Modbus/TCP已經(jīng)成為世界領(lǐng)先的工業(yè)以太網(wǎng)協(xié)議。Modbus/TCP協(xié)議的開放性及用戶對它的熟悉程度再加上其應(yīng)用的簡單易學(xué),是Modbus/TCP在當(dāng)今市場中獲得成功的關(guān)鍵。Modbus協(xié)議的串行鏈路版本已經(jīng)在市場上長期占有主導(dǎo)地位,并且己有大量的網(wǎng)關(guān)產(chǎn)品可以實現(xiàn)串行鏈路Modbus和Modbus/TCP之間的橋接。

      3 Modbus/TCP的通信協(xié)議

      3.1 Modbus的通信協(xié)議簡介

      Modbus協(xié)議定義了一個控制器能認(rèn)識使用的消息結(jié)構(gòu),而不管它們是經(jīng)過何種網(wǎng)絡(luò)進(jìn)行通信的。

      當(dāng)在一個Modbus網(wǎng)絡(luò)上通信時,此協(xié)議決定了每個控制器須要知道它們的設(shè)備地址。如果需要回應(yīng),控制器將生成反饋信息并用Modbus協(xié)議發(fā)出。在其他網(wǎng)絡(luò)上,包含了Modbus協(xié)議的消息轉(zhuǎn)換為在此網(wǎng)絡(luò)上使用的幀或包結(jié)構(gòu)。這種轉(zhuǎn)換也擴展了根據(jù)具體的網(wǎng)絡(luò)解決節(jié)地址、路由路徑及錯誤檢測的方法。

      3.2 Modbus/TCP的通信結(jié)構(gòu)模型

      Modbus/TCP的通信系統(tǒng)可以包括不同類型的設(shè)備。所有連接到Modbus/TCP通訊網(wǎng)絡(luò)的設(shè)備都通過Modbus事務(wù)報文來實現(xiàn)Modbus客戶端和服務(wù)器端之間的通訊任務(wù)。而Modbus客戶端和服務(wù)器TCP/IP網(wǎng)關(guān)則實現(xiàn)了將在串行鏈路上的Modbus通訊設(shè)備連入到Modbus/TCP通訊網(wǎng)絡(luò)。如圖1所示。

      3.3 Modbus/TCP應(yīng)用數(shù)據(jù)單元

      Modbus協(xié)議定義了一個與底層通信協(xié)議無關(guān)的簡單協(xié)議數(shù)據(jù)單元(PDU)。特定總線或網(wǎng)絡(luò)上的Modbus協(xié)議映射能夠在應(yīng)用數(shù)據(jù)單元上引入附加域。啟動Modbus事務(wù)處理的客戶端建立Modbus應(yīng)用數(shù)據(jù)單元,服務(wù)器接收應(yīng)用數(shù)據(jù)單元并根據(jù)功能碼執(zhí)行相應(yīng)的動作。其在串行鏈路上的應(yīng)用數(shù)據(jù)單元如圖2所示。

      Modbus在TCP/IP上使用專用報文頭識別Modbus應(yīng)用數(shù)據(jù)單元。這種報文頭稱為MBAP報文頭。Modbus在TCP/IP網(wǎng)絡(luò)上的應(yīng)用數(shù)據(jù)單元如圖3所示。

      4 Modbus/TCP客戶端的發(fā)送、接收應(yīng)用

      4.1 常用Modbus/TCP功能碼

      讀線圈:0x02(輸入)、0x01(輸出);

      寫線圈:0x0f(輸出);

      讀寄存器:0x04(輸入)、0x03(輸出);

      寫寄存器:0x10(輸出);

      說明:一般線圈用于開關(guān)量、寄存器用于模擬量。

      4.2 讀線圈的Modbus/TCP發(fā)送包格式以及返回包格式

      4.2.1 Modbus/TCP發(fā)送包格式

      [0][0][0][0][0][包長度][設(shè)備號][功能碼][初始線圈高八位][初始線圈低八位][讀取線圈數(shù)高八位][讀取線圈數(shù)低八位]

      說明:每個[]內(nèi)代表2位16進(jìn)制整型數(shù),轉(zhuǎn)換為二進(jìn)制是8bit;一個[]可以稱為一個功能位。

      [0][0][0][0][0]:約定為該套接字連接發(fā)送Modbus包的數(shù)量,例如發(fā)送第一個Modbus包時為[1][0][0][0][0],發(fā)送第十五個Modbus包時為[F][0][0][0][0],發(fā)送第十六個Modbus包時為[0][1][0][0][0],不必考慮清零。

      [包長度]:該功能位標(biāo)明Modbus包在該位之后的字節(jié)數(shù)。

      [設(shè)備號]:每個Modbus設(shè)備的編號,通常從1到31依次編號。

      [功能碼]:使用方法參見5.1,這里用功能碼0x02。

      [初始線圈高八位]、[初始線圈低八位]、[讀取線圈數(shù)高八位]、[讀取線圈數(shù)低八位]各功能位意義與字面意思一致。

      4.2.2 Modbus/TCP返回包格式

      [0][0][0][0][0][包長度][設(shè)備號][功能碼][返回的數(shù)據(jù)長度][返回數(shù)據(jù)1][返回數(shù)據(jù)2]……[返回數(shù)據(jù)n]

      說明:每個[]內(nèi)代表2位16進(jìn)制整型數(shù),轉(zhuǎn)換為二進(jìn)制是8bit;一個[]可以稱為一個功能位。

      [0][0][0][0][0]:約定為該套接字連接發(fā)送Modbus包的數(shù)量,例如發(fā)送第一個Modbus包時為[1][0][0][0][0],發(fā)送第十五個Modbus包時為[F][0][0][0][0],發(fā)送第十六個Modbus包時為[0][1][0][0][0],不必考慮清零。

      [包長度]:該功能位標(biāo)明Modbus包在該位之后的字節(jié)數(shù)。

      [設(shè)備號]:同發(fā)送包的設(shè)備號。

      [功能碼]:同發(fā)送包的功能碼。

      [返回的數(shù)據(jù)長度]:該功能位標(biāo)明該位之后數(shù)據(jù)位的長度。

      [返回數(shù)據(jù)1]:即讀取的數(shù)據(jù)。

      ……

      [返回數(shù)據(jù)n]:即讀取的數(shù)據(jù)。

      4.3 寫線圈的Modbus/TCP發(fā)送包格式以及返回包格式

      4.3.1 Modbus/TCP發(fā)送包格式

      [0][0][0][0][0][包長度][設(shè)備號][功能碼][初始線圈高八位][初始線圈低八位][寫入線圈數(shù)高八位][寫入線圈數(shù)低八位][寫入的數(shù)據(jù)長度][寫入數(shù)據(jù)1] [寫入數(shù)據(jù)2]……[寫入數(shù)據(jù)n]

      說明:每個[]內(nèi)代表2位16進(jìn)制整型數(shù),轉(zhuǎn)換為二進(jìn)制是8bit;一個[]可以稱為一個功能位。

      [0][0][0][0][0]:約定為該套接字連接發(fā)送Modbus包的數(shù)量,例如發(fā)送第一個Modbus包時為[1][0][0][0][0],發(fā)送第十五個Modbus包時為[F][0][0][0][0],發(fā)送第十六個Modbus包時為[0][1][0][0][0],不必考慮清零。

      [包長度]:該功能位標(biāo)明Modbus包在該位之后的字節(jié)數(shù)。

      [設(shè)備號]:每個Modbus設(shè)備的編號,通常從1到31依次編號。

      [功能碼]:使用方法參見5.1,這里用功能碼0x0f。

      [初始線圈高八位]、[初始線圈低八位]、[寫入線圈數(shù)高八位]、[寫入線圈數(shù)低八位]各功能位意義與字面意思一致。

      [寫入的數(shù)據(jù)長度]:該功能位標(biāo)明該位之后數(shù)據(jù)位的長度。

      [寫入數(shù)據(jù)1]:包含寫入的數(shù)據(jù)。

      ……

      [寫入數(shù)據(jù)n]:包含寫入的數(shù)據(jù)。

      4.3.2 Modbus/TCP返回包格式

      接收返回的Modbus/TCP包格式和發(fā)送包格式類似,但是沒有[寫入的數(shù)據(jù)長度] [數(shù)據(jù)1] [數(shù)據(jù)2]……[數(shù)據(jù)n]功能位。

      4.4 讀寄存器的Modbus/TCP發(fā)送包格式以及返回包格式

      4.4.1 Modbus/TCP發(fā)送包格式

      [0][0][0][0][0][包長度][設(shè)備號][功能碼][初始寄存器高八位][初始寄存器低八位][讀取寄存器數(shù)高八位][讀取寄存器數(shù)低八位]

      說明:每個[]內(nèi)代表2位16進(jìn)制整型數(shù),轉(zhuǎn)換為二進(jìn)制是8bit;一個[]可以稱為一個功能位。

      [0][0][0][0][0]:約定為該套接字連接發(fā)送Modbus包的數(shù)量,例如發(fā)送第一個Modbus包時為[1][0][0][0][0],發(fā)送第十五個Modbus包時為[F][0][0][0][0],發(fā)送第十六個Modbus包時為[0][1][0][0][0],不必考慮清零。

      [包長度]:該功能位標(biāo)明Modbus包在該位之后的字節(jié)數(shù)。

      [設(shè)備號]:每個Modbus設(shè)備的編號,通常從1到31依次編號。

      [功能碼]:使用方法參見5.1,這里用功能碼0x04。

      [初始寄存器高八位]、[初始寄存器低八位]、[讀取寄存器數(shù)高八位]、[讀取寄存器數(shù)低八位]各功能位意義與字面意思一致。

      4.4.2 Modbus/TCP返回包格式

      [0][0][0][0][0][包長度][設(shè)備號][功能碼][返回的數(shù)據(jù)長度][ 返回數(shù)據(jù)1高八位][返回數(shù)據(jù)1低八位][ 返回數(shù)據(jù)2高八位][ 返回數(shù)據(jù)2低八位]……[返回數(shù)據(jù)n高八位][ 返回數(shù)據(jù)n低八位]

      說明:每個[]內(nèi)代表2位16進(jìn)制整型數(shù),轉(zhuǎn)換為二進(jìn)制是8bit;一個[]可以稱為一個功能位。

      [0][0][0][0][0]:約定為該套接字連接發(fā)送Modbus包的數(shù)量,例如發(fā)送第一個Modbus包時為[1][0][0][0][0],發(fā)送第十五個Modbus包時為[F][0][0][0][0],發(fā)送第十六個Modbus包時為[0][1][0][0][0],不必考慮清零。

      [包長度]:該功能位標(biāo)明Modbus包在該位之后的字節(jié)數(shù)。

      [設(shè)備號]:同發(fā)送包的設(shè)備號。

      [功能碼]:同發(fā)送包的功能碼。

      [返回的數(shù)據(jù)長度]:該功能位標(biāo)明該位之后數(shù)據(jù)位的長度。

      [數(shù)據(jù)1高八位][數(shù)據(jù)1低八位][數(shù)據(jù)2高八位][數(shù)據(jù)2低八位]……[數(shù)據(jù)n高八位][數(shù)據(jù)n低八位]各功能位意義與字面意思一致。

      4.5 寫寄存器的Modbus/TCP發(fā)送包格式以及返回包格式

      4.5.1 Modbus/TCP發(fā)送包格式

      [0][0][0][0][0][包長度][設(shè)備號][功能碼][初始寄存器高八位][初始寄存器低八位][寫入寄存器數(shù)高八位][寫入寄存器數(shù)低八位][寫入的數(shù)據(jù)長度][寫入數(shù)據(jù)1高八位] [寫入數(shù)據(jù)1低八位] [寫入數(shù)據(jù)2高八位] [寫入數(shù)據(jù)2低八位]……[寫入數(shù)據(jù)n高八位][ 寫入數(shù)據(jù)n低八位]

      說明:每個[]內(nèi)代表2位16進(jìn)制整型數(shù),轉(zhuǎn)換為二進(jìn)制是8bit;一個[]可以稱為一個功能位。

      [0][0][0][0][0]:約定為該套接字連接發(fā)送Modbus包的數(shù)量,例如發(fā)送第一個Modbus包時為[1][0][0][0][0],發(fā)送第十五個Modbus包時為[F][0][0][0][0],發(fā)送第十六個Modbus包時為[0][1][0][0][0],不必考慮清零。

      [包長度]:該功能位標(biāo)明Modbus包在該位之后的字節(jié)數(shù)。

      [設(shè)備號]:每個Modbus設(shè)備的編號,通常從1到31依次編號。

      [功能碼]:使用方法參見5.1,這里用功能碼0x10。

      [初始寄存器高八位]、[初始寄存器低八位]、[寫入寄存器數(shù)高八位]、[寫入寄存器數(shù)低八位]各功能位意義與字面意思一致。

      [寫入的數(shù)據(jù)長度]:該功能位標(biāo)明該位之后數(shù)據(jù)位的長度。

      [寫入數(shù)據(jù)1高八位] [寫入數(shù)據(jù)1低八位] [寫入數(shù)據(jù)2高八位] [寫入數(shù)據(jù)2低八位]……[寫入數(shù)據(jù)n高八位][ 寫入數(shù)據(jù)n低八位]各功能位意義與字面意思一致。

      4.5.2 Modbus/TCP返回包格式

      接收到返回的Modbus/TCP包格式和發(fā)送包格式類似,但是沒有[數(shù)據(jù)1高八位] [數(shù)據(jù)1低八位] [數(shù)據(jù)2高八位] [數(shù)據(jù)2低八位]……[數(shù)據(jù)n高八位][數(shù)據(jù)n低八位]功能位。

      5 結(jié)語

      Modbus/TCP協(xié)議是工業(yè)以太網(wǎng)技術(shù)最有發(fā)展前景的一種,研究和探討Modbus/TCP工業(yè)以太網(wǎng)技術(shù)及其在我國工業(yè)自動化的應(yīng)用對提升我國工業(yè)自動化企業(yè)的自動化水平、提高企業(yè)綜合競爭力、加快企業(yè)信息化建設(shè)和打破國際壟斷等方面都具有現(xiàn)實的意義。

      參考文獻(xiàn)

      [1] 佚名.工業(yè)以太網(wǎng)協(xié)助工廠向工業(yè)4.0時代過渡[J].智慧工廠,2018(10):20-21.

      [2] 張玉鵬,溫蜜,李婧,等.面向Modbus的安全認(rèn)證通信機制分析[J].上海電力學(xué)院學(xué)報,2017,33(4):372-377.

      [3] 趙艷領(lǐng),韓丹濤,閆曉風(fēng).一種嵌入式KNX-Modbus TCP網(wǎng)關(guān)的實現(xiàn)方法[J].智能建筑與智慧城市,2016(7):66-68.

      猜你喜歡
      工業(yè)以太網(wǎng)現(xiàn)場總線
      冶金自動化系統(tǒng)中工業(yè)以太網(wǎng)的技術(shù)優(yōu)勢與應(yīng)用
      屈家店樞紐閘門自動化監(jiān)控系統(tǒng)設(shè)計與實現(xiàn)
      淺析如何做好現(xiàn)場總線施工
      基于CAN總線的變電站通訊網(wǎng)絡(luò)設(shè)計
      基于現(xiàn)場總線的聚酯網(wǎng)熱定形機控制系統(tǒng)
      食品生產(chǎn)線的計算機控制系統(tǒng)設(shè)計與實現(xiàn)
      工業(yè)控制系統(tǒng)現(xiàn)場可編程機制的隱患分析
      不停車實現(xiàn)連續(xù)運行煉油化工裝置DCS控制系統(tǒng)擴容
      現(xiàn)場總線與控制系統(tǒng)工程實訓(xùn)在教學(xué)中的應(yīng)用
      科技資訊(2015年7期)2015-07-02 20:41:18
      工業(yè)以太網(wǎng)在鐵路區(qū)間視頻監(jiān)控中的應(yīng)用
      金寨县| 大田县| 蓝田县| 都江堰市| 安图县| 焦作市| 德格县| 延川县| 新绛县| 吴堡县| 喀什市| 德安县| 襄樊市| 辛集市| 华坪县| 朔州市| 雷州市| 阜康市| 江川县| 陕西省| 城步| 宁夏| 开化县| 神池县| 荣成市| 黄石市| 铅山县| 凤凰县| 衡山县| 武山县| 始兴县| 琼结县| 定结县| 龙里县| 海丰县| 盈江县| 达孜县| 武冈市| 苏州市| 桦南县| 陇南市|