陸賢穎 馬雄能 郭安然 李江濤 馬學瑞



[摘? ? 要]語言并非人類與生俱來的本能,正如人類主要通過語言來進行交流,機器主要也是機器語言來進行數據交換。人類通過逐字逐句交流,有不同語言,每種語言都有自己的語法。而機器之間的串行通訊是通過一個字節或一幀數據來交換信息,機器同樣也有不同的通訊協議,每種通訊協議都有自己信息交換的規則。本文主要講由MODICON公司推出的一種開放式通訊協議MODBUS RTU。
[關鍵詞]串行通訊;Modbus協議;數據交換
[中圖分類號]TE54 [文獻標志碼]A [文章編號]2095–6487(2020)12–00–03
[Abstract]Language is not an innate instinct of human beings. Just as human beings communicate mainly through language, machines also exchange data mainly through machine language. Humans communicate word for word, and there are different languages, each with its own grammar. Serial communication between machines is to exchange information through a byte or a frame of data. Machines also have different communication protocols, and each communication protocol has its own rules for information exchange. This paper focuses on MODBUS RTU, an open communication protocol launched by MODICON.
[Keywords]serial communication; The Modbus Protocol; data exchange
現場總線技術是當今自動化領域技術發展的熱點之一,被譽為自動化領域的計算機局域網,是連接設置在控制現場的儀表與設置在控制室內的控制設備的串行、多站、數字化通訊網絡。其標志是能支持雙向、多節點、總線式的全數字通訊?,F場總線是包含從應用層協議到傳輸層協議的總成,目前國際標準的現場總線有16種,標準泛多,無統一標準。本文主要講由MODICON公司推出的一種開放式通訊協議MODBUS。
1 串行通訊
1.1 通訊的概念
通訊的目的是彼此之間信息的交換,通訊系統就是把信息從一個地方傳輸到另一個地方的系統。數據通訊是指通訊過程中承載的信息的數據形式是數字的,不是模擬的。串行通訊是指用一條數據線,將數據一位一位的依次傳輸,每位數據占據一個固定的時間長度。
串行通訊數據如圖1所示,發送和接受的每一個字符實際是一次一位傳輸的,每一位都為1或者是0。
1.2 串行通訊的分類
發送端與接收端之間的同步問題是數據通信中的重要問題,在串行傳輸中,數據是一位一位傳輸的,每位數據的發送與接收都需要時鐘來控制時間,發送端通過發送時鐘確定數據位的開始和結束,接收端需在適當的時間間隔對數據進行采樣識別。通信過程中收發雙方在時間上須保持同步,根據在串行通信中采用的同步技術不同,傳輸方式分為同步傳輸和異步傳輸。
1.2.1 同步傳輸
同步傳輸在信號開始處由同步字符“SYNC”指示,由同步時鐘來實現收發端同步。同步信號相當于人們一起步行時發出的口令“起步——走”。異步傳輸一次只傳輸一幀信息。信息幀包含若干個字符。
信息幀由數據字符、同步字符和校驗字符組成,其中同步字符位于信息幀的開頭,用于確認數據字符的開始,數據字符位于同步字符之后,沒有個數限制,由所需傳輸的數據長度決定,校驗字符位于數據字符的后面1~2個字符,用于檢驗數據傳輸的準確性。
1.2.2 異步傳輸
數據通常以字節或字符為單位組成字符幀傳輸,字符幀由發送端逐幀進行發送,接收端逐幀進行接收。發送端和接收端由各自時鐘來控制,這兩個時鐘彼此獨立,互不同步。當數據未進行傳輸時或傳輸已完成時,通信傳輸線上須一直保持電平邏輯“1”的狀態。
一旦接收端檢測到傳輸線上的電平邏輯“0”時,即數據起始位,就表示發送端已開始發送數據;當接收端接收到字符幀中的停止位時,就表示發送端數據已經發送完畢,這就是異步傳輸。
2 modbus協議
通訊協議是指機器與機器之間交流時遵循的一種約定,約定包括同步方式、數據的格式、校驗的方式、傳輸的速率等,作出了統一的規定,雙方必須遵守這個約定。
在標準Modbus網絡中,主控制器可以將modbus設置成三種傳輸模式:ASCII、RTU和TCP。Modbus通信使用主——從技術,即一個主站,其余為從站。主站把從站地址放入信息中以廣播的方式將數據發送出去(尋址),從站根據主站發送的信息檢查地址,判斷是否需要響應主站的,從站不能自已發送信息。
2.1 ASCII模式
Modbus以ASCII模式通信時,消息中每個8位字節作為一個ASCII碼(兩個16位進制)發送。使用ASCII模式,消息以冒號“:”(3AH)開始,以回車、換行符(0DH、0AH)結束。
2.2 TCP模式
用于通過以太網或互聯網連接和傳輸數據。由于以太網和互聯網遵循TCP/IP協議,所以被稱為TCP模式。該模式硬件接口是以太網接口。