工業系統中常用通訊協議_第1頁
工業系統中常用通訊協議_第2頁
工業系統中常用通訊協議_第3頁
工業系統中常用通訊協議_第4頁
工業系統中常用通訊協議_第5頁
已閱讀5頁,還剩39頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、EIA Electronic Industries Association美國電子工業協會美國電子工業協會TIATelecommunications Industry Association電信工業協會電信工業協會OSIOpen System Interconnection開放系統互聯開放系統互聯MODBUSMODICOM 公司定義的通訊協議公司定義的通訊協議ADUApplication Data Unit應用數據單元應用數據單元PDUProtocol Data Unit協議數據單元協議數據單元HDLCHigh Data Link Control高級數據鏈路控制高級數據鏈路控制IPIntern

2、et Protocol互聯網協議互聯網協議TCPTransport Control Protocol傳輸控制協議傳輸控制協議CSMA/CDCarrier Sense Multiple Access/Collision Detect載波監聽多路訪問載波監聽多路訪問 沖突檢測沖突檢測IEEE754浮點數表示標準浮點數表示標準名 詞網絡結構模型MODBUS協議串行接口 SIRS485可靠性網絡結構模型Network Model7、應用層(Application Layer) 應用層確定進程之間通信的性質,以滿足用戶的需要。不僅要提供應用進程所需要的信息交換和遠程操作,而且還要作為應用進程的用戶代理,

3、為完成一些為進行信息交換所必需的功能。應用層為操作系統或網絡應用程序提供訪問網絡服務的接口。典型的協議:Telnet FTP HTTP SNMP6、表示層(Presentation Layer) 主要用于處理兩個通信系統中交換信息的表示方式。它包括數據格式交換、數據加密與解密、數據壓縮與恢復等功能。5、會話層(Session Layer)在兩個節點之間建立端連接。此服務包括建立連接是以全雙工還是以半雙工的方式進行設置,盡管可以在層4中處理雙工方式 。本層管理主機之間的會話進程,負責建立、管理、終止進程之間的會話。會話層還利用在數據中插入校驗點來實現數據的同步。4、傳輸層(Transport L

4、ayer)傳輸層負責將上層數據分段并提供端到端的、可靠的或不可靠的傳輸。傳輸層還要處理端到端的差錯控制和流量控制問題。包括全雙工或半雙工、流控制和錯誤恢復服務;本層的數據稱為“數據段”。傳輸層協議的代表包括:TCP UDP SPX等。3、網絡層(Network Layer)本層通過尋址來建立兩個節點之間的連接,它包括通過互連網絡來路由和中繼數據;網絡層負責對子網間的數據包進行路由選擇。本層的數據稱為“數據包”。網絡層協議的代表包括:IP IPX RIP OSPF等2、數據鏈路層(DataLink Layer)在此層將數據分幀,并處理流控制。指定拓撲結構,物理地址尋址、數據的成幀、流量控制、數據

5、的檢錯、重發等。本層的數據稱為“數據幀”。數據鏈路層協議的代表包括:SDLC、HDLC、PPP、STP、幀中繼等。1、物理層 (Physical Layer)物理層的主要功能是利用物理傳輸介質為數據鏈路層提供物理連接,以便透明的傳送比特流。規定了激活、維持、關閉通信端點之間的機械特性、電氣特性、功能特性以及過程特性。在這一層,數據的單位稱為比特(bit)。物理層定義的典型規范代表包括:EIA/TIA RS-232,EIA/TIA RS-449,V.35,RJ-45;MODBUS 標 準 分 類MODBUS分為兩種:串行鏈路上的MODBUS (MODBUS on Serial Line)TCP/

6、IP上的MODBUS (MODBUS on TCP/IP)串行鏈路上的MODBUSTIA/EIA-232-FTIA/EIA-485-ATCP/IP 上的 MODBUSRFC793和RFC791MODBUS on Serial與OSI層次對應關系MODBUS協議的各個層次只采用了OSI層次模型中的三層:物理層,數據鏈路層和應用層。各層都有各層相應的標準規范。物理層標準:EIA/TIA-485(或EIA/TIA-232)數據鏈路層標準:MODBUS Serial Line Protocol MODBUS串行線協議應用層標準:MODBUS Application Protocol MODBUS應用協

7、議MODBUS on TCP與OSI層次對應關系MODBUS協議的各個層次只采用了OSI層次模型中的三層:物理層,數據鏈路層和應用層。各層都有各層相應的標準規范。物理層:在多種物理媒體上以多種速率采用 CSMA/CD 訪問方式 10Base2,10Base5,10BaseTX,10BaseFX數據鏈路層:IEEE 802.3邏輯鏈路控制 LLC (Logical Link Control)子層媒體接入控制 MAC (Medium Access Control)子層。應用層標準:MODBUS Application Protocol MODBUS應用協議MODBUS典型網絡結構MODBUS協 議

8、定義與PDU結構定義:MODBUS協議是一項應用層報文傳輸協議,用于在通過不同類型的總線或網絡所連接的設備之間的客戶機/服務器通訊。MODBUS協議定義了一個與基礎通訊層無關的簡單協議數據單元(PDU)PDU由通訊發起方負責創建,發起方在協議定義中稱為客戶機通訊接收方負責對PDU的應答,通訊接收方在協議定義中稱為服務器一次的通訊過程稱為事務處理MODBUS on SerialPDU長度為253字節MODBUS on TCPPDU長度為249字節無錯誤的事務處理過程事務正常完成,服務器返回客戶機所需的數據錯誤的事務處理過程事務異常完成,服務器返回錯誤代碼指示錯誤原因。設置請求功能碼的MSB為1,

9、因此一般情況下MODBUS協議中80H以上功能碼保留。功能碼(FUNCTION CODE)功能碼定義某一個PDU的功能分為公共功能碼和用戶功能碼公共功能碼唯一的被較好定義的MODBUS組織認可的功能碼用戶功能碼不保證唯一的,各用戶不同的。只能定義6572和100110范圍內的功能碼。常用的功能碼01H,02H,03H,04H,05H,06H,16H,23H等常用數據類型(Data Type)bit比特類型,通常用于表示開關量狀態。WORD字類型,通常表示一個數。浮點數可以采用IEEE754格式,其長度為32bits。占2個字長。在顯示時,注意高低位是否需要交換。MODBUS RTU報文(PDU

10、)格式(Format of MODBUS RTU PDU)在不同的模式下,PDU的內容是不一樣的。RTU模式每個字節為1個16進制的數(0FFH)ASCII模式每個字節為ASCII碼(09,AF)RTU模式下的報文(PDU)內容請求PDU正常應答PDU異常應答PDU異常錯誤子碼1(Error Sub Code )異常錯誤子碼2(Error Sub Code 2)串行接口 (Serial Interface)MODBUS主/從站協議基本原理MODBUS串行鏈路協議與OSI模型的對應關系MODBUS串行鏈路協議是一個主從協議,主節點發送請求,子節點的響應;在任何時刻,同一個網絡上有且只能有一個主節

11、點存在,有多個子節點(地址1247)。子節點在沒有收到主節點的請求時,是沉默的。任何時刻,子節點之間是互相沉默的。MODBUS主/從站協議基本原理通訊模式主站與從站之間有兩種通訊模式單播模式主節點指定地址的方式請求數據,子節點根據請求,向主節點返回相應的數據。在這種情況下,MODBUS通訊事務只包含2個報文(主節點請求報文和子節點應答報文)。子節點在單播模式中的地址必須在網絡上是唯一的(1247)。多播模式主節點對所有子節點進行請求,子節點沉默,僅僅根據請求完成相應的自身功能。在這種情況下,MODBUS通訊事務只包含1個報文(主節點請求報文)。子節點在多播模式下地址可以不用考慮,但是子節點必須

12、能夠相應地址0的請求。0在協議中定義為多播地址。MODBUS地址規則MODBUS地址范圍地址域長度為1字節,因此可能的尋址范圍0255MODBUS協議規定地址范圍 廣播地址用于向所有子節點進行請求(0) 子節點地址同一網絡中唯一表示子節點的地址(1247) 保留地址MODBUS協議保留的地址(248255)協議規定所有子節點必須識別廣播地址0主節點在網絡上沒有也不需要地址MODBUS 數 據 幀MODBUS是應用層協議,只定義協議數據單元PDU。MODBUS on Serial是數據鏈路層協議,需要定義目的地址和差錯效驗等功能,因此定義了應用數據單元ADU。根據數據鏈路層協議的不同,ADU的內

13、容是不同的。MODBUS主/從站狀態圖主站狀態圖“空閑“無等待的請求“等待應答“請求發出后的狀態“應答檢查”檢查應答數據“錯誤處理“應答錯誤處理“處理應答”處理正常的應答數據MODBUS主/從站狀態圖從站狀態圖“空閑“無等待的請求“檢查請求“請求發出后的狀態“格式化正常應答”形成正常應答數據并發送,分單播模式和多播模式“格式化錯誤應答”形成錯誤應答數據并發送“非本節點地址”請求地址不是本節點地址,忽略請求,回到空閑狀態RTU模式允許字符:0 x00h0 xFFh8位二進制位(bit)1位起始位1位奇偶校驗位1/1.5位停止位奇偶校驗位可選LSB-MSB最大幀長:256字節,數據長度252字節A

14、SCII模式允許字符:09,AF7位數據位1位起始位1位奇偶校驗位1位停止位奇偶校驗位可選LSB-MSB最大幀長:256字節,數據長度是RTU模式的2倍兩種MODBUS串行模式RTU模式起始字符:3.5字符地址域:1 Byte,尋址范圍0247功能碼域:1 Byte,0 x00h0 xFFh數據域:N Bytes,最長252Bytes效驗域:2 Bytes (1 Word),CRC方式CRC循環冗余效驗(Cyclical Redundancy Checking)結束字符: 3.5字符ASCII 模式起始字符:1字符,: (冒號)地址域:2個字符功能碼域:2個字符,00FF(char)數據域:

15、最長2522字符效驗域:2 字符,LRC方式LRC縱向冗余效驗(Longitudinal Redundancy Checking)結束字符: CR.LF(回車和換行符),2字符MODBUS報文幀RTU模式下的數據流RTU方式沒有明顯的起止符號,因此必須規定時間的要求由發送設備將Modbus 報文構造為帶有已知起始和結束標記的幀。這使設備可以在報文的開始接收新幀,并且知道何時報文結束。不完整的報文必須能夠被檢測到,錯誤標志必須作為結果被設置。在 RTU 模式,報文幀由時長至少為3.5 個字符時間的空閑間隔區分。這個時間區間通常被稱作t3.5。MODBUS差錯控制RTU模式循環冗余校驗 (CRC

16、- Cyclical Redundancy Checking)由兩個8 位字節組成的一個16 位值CRC 域檢驗整個報文的內容報文中附加低字節,然后是高字節ASCII模式縱向冗余校驗 (LRC - LongitudinalRedundancy Checking)LRC 為一個8 位二進制值檢驗包括除起始“冒號”和結尾 CRLF的整個 ASCII 報文域的內容差錯控制方法奇偶校驗 (偶或奇) 每個字符采用幀檢驗 (LRC or CRC) 整個報文報文有無奇偶校驗,均執行幀檢驗物理層電氣接口MODBUS協議默認的通訊速率:19200bps可用速率:4800bps115Kbps每種波特率對發送方,要

17、求其精度必須高于1%,即1900819392bps對接收方,必須允許2%誤差,即1881619584bps常用速率:9600bps(Micro-motion默認速率)電氣物理接口網絡結構有源接口和無源接口電氣接頭分為幾種:主干接口主干間接口ITr分支接口設備與無源接口之間的接口IDv附件單元接口設備與有源接口的接口AUI主要連接方式:RS485,RS422,RS232電氣物理接口2線MODBUS定義串行鏈路上的MODBUS依照EIA/TIA-485 標準實現“2-線”電氣接口在這個2 線-總線上,在任何時候只有一個驅動器有權發送信號第三條導線把總線上所有設備相互連接:公共地電氣物理接口4線MO

18、DBUS定義從對總線(TXD1-TXD0)上接收來自從站的數據,主對總線(RXD1-RXD0)上發送數據,由從站接收電氣物理接口多點系統需求多點系統需求無中繼器情況下,最大設備數量:32臺無配置中繼器的RS-485 MODBUS 有一個主干電纜,所有的從設備沿著它直接(菊花鏈)或通過短的分支電纜連接起來長度主干電纜端到端的長度必須有限制。其長度由波特率,電纜(規格,電容或特征阻抗),菊花鏈上的負載數,以及網絡配置(2線或4線制)所決定接地公共地電路(信號與可選電源公共地)必須直接連到保護地上,最好是整條總線只接在一點終端電阻沿線路傳播的移動信號波遇到不連續的阻抗,造成在傳輸線路中的反射。為了使

19、在RS-485電纜終端的反射最小,需要在接近總線兩端點處放置線路終端。機械物理接口各種物理連接器的接線定義電纜連接要求RS485-MODBUS 必須使用一對平衡對線(用于D0-D1),第三根導線(用于公共地)在4 線-MODBUS 系統中還必須使用第二對平衡對線(用于RXD0-RXD1)。對RS485-MODBUS,必須選擇足夠大的連線直徑以達到最大長度(1000m)AGW24對MODBUS數據總是滿足的在RS485-MODBUS 中使用第5 類電纜,最大長度可達600m.在RS485-系統中使用的平衡對線,建議特征阻抗高于100歐姆MODBUS 串行鏈路電纜必須屏蔽RS485可靠性 (RS4

20、85 Reliability) RS485電氣特性 常見問題及處理RS485可靠性電氣特性 (Electronic Characteristic)RS-485標準采有用平衡式發送,差分式接收的數據收發器來驅動總線。規格要求:1、接收器的輸入電阻Rin12k2、驅動器能輸出7V的共模電壓3、輸入端的電容Cin50pF4、在節點數為32個,配置了120的終端電阻的情況下,驅動器至少還能輸出電壓1.5V(終端電阻的大小與所用雙絞線的參數有關)5、接收器的輸入靈敏度為200mV即(V+)-(V-)200V,表示信號0;(V+)-(V-)200mV,表示信號1RS485可靠性在工業控制領域,由于現場情況

21、十分復雜,各個節點之間存在很高的共模電壓。雖然RS-485接口采用的是差分傳輸方式,具有一定的抗共模干擾的能力,但當共模電壓超過RS-485接收器的極限接收電壓(即大于+12V或小于-7V時),接收器就再也無法正常工作了,嚴重時甚至會燒毀芯片和儀器設備。 用一對雙絞線將各個接口的A、B端連接起來,而不對RS-485通信鏈路的信號接地,在某些情況下也可以工作,但給系統埋下了隱患。RS-485接口采用差分方式傳輸信號并不需要對于某個參照點來檢測信號系統,只需檢測兩線之間的電位差就可以了。但應該注意的是收發器只有在共模電壓不超出一定范圍(-7V至+12V)的條件下才能正常工作。當共模電壓超出此范圍,

22、就會影響通信的可靠直至損壞接口。當發送器A向接收器B發送數據時,發送器A的輸出共模電壓為VOS,由于兩個系統具有各自獨立的接地系統存在著地電位差VGPD,那么接收器輸入端的共模電壓就會達到VCM=VOS+VGPD。RS-485標準規定VOS3V,但VGPD可能會有很大幅度(十幾伏甚至數十伏),并可能伴有強干擾信號致使接收器共模輸入VCM超出正常圍,在信號線上產生干擾電流輕則影響正常通信,重則損壞設備。解決此類問題的方法是通過DC-DC將系統電源和RS-485收發器的電源隔離;通過光耦將信號隔離,徹底消除共模電壓的影響。實現此方案的途徑可分為:光隔離器(光耦)、集成芯片。 用1條線或者屏蔽線將所有485設備的GND地連接這樣可以避免所有設備之間存在影響通訊的電勢差。RS485可靠性常見問題一1、信號A和B的判斷。B線應該永遠是在空閑狀態下電壓更高的那一根。A線相當于,B線相當于+。可在網絡空閑的狀態下用電壓表檢測。如果B線沒有比A線電壓更高,那么就會存在連接問題。2、若出現系統完全癱瘓,大多因為某節點芯片的VA、VB對電源擊穿,使用萬用表測VA、VB間差模電壓為零,而對地的共模電壓大于3V,此時可通過測共模電壓大小來排查

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論