18luck网站

18luck网站電子設計 | 18luck网站Rss 2.0 會員中心 會員注冊
搜索: 您現在的位置: 18luck网站 >> 18luck平台 >> 通訊類電路 >> 正文

RS485通信和Modbus協議

作者:佚名    文章來源:本站原創    點擊數:    更新時間:2021-07-10

在工業(ye) 控製、電力通訊、智能儀(yi) 表等領域,通常情況下是采用串口通信的方式進行數據交換。最初采用的方式是RS232接口,由於(yu) 工業(ye) 現場比較複雜,各種電氣設備會(hui) 在環境中產(chan) 生比較多的電磁幹擾,會(hui) 導致信號傳(chuan) 輸錯誤。除此之外,RS232接口隻能實現點對點通信,不具備聯網功能,最大傳(chuan) 輸距離也隻能達到幾十米,不能滿足遠距離通信要求。而RS485則解決(jue) 了這些問題,數據信號采用差分傳(chuan) 輸方式,可以有效的解決(jue) 共模幹擾問題,最大距離可以到1200米,並且允許多個(ge) 收發設備接到同一條總線上。隨著工業(ye) 應用通信越來越多,1979年施耐德電氣製定了一個(ge) 用於(yu) 工業(ye) 現場的總線協議Modbus協議,現在工業(ye) 中使用RS485通信場合很多都采用Modbus協議,本文講解RS485通信和Modbus協議。

RS485特點

1、差分輸入最大的優(you) 勢是可以抑製共模幹擾。尤其工業(ye) 現場的環境比較複雜,幹擾比較多,所以通信如果采用的是差分方式,就可以有效的抑製共模幹擾。而RS485就是一種差分通信方式,它的通信線路是兩(liang) 根,通常用A和B或者D+和D-來表示。邏輯“1”以兩(liang) 線之間的電壓差為(wei) +(0.2~6)V表示,邏輯“0”以兩(liang) 線間的電壓差為(wei) -(0.2~6)V來表示,是一種典型的差分通信。

2、RS485通信速度快,最大傳(chuan) 輸速度可以達到10Mb/s以上。

3、RS485內(nei) 部的物理結構,采用的是平衡驅動器和差分接收器的組合,抗幹擾能力也大大增加。

4、傳(chuan) 輸距離最遠可以達到1200米左右,但是他的傳(chuan) 輸速率和傳(chuan) 輸距離是成反比的,隻有在100Kb/s以下的傳(chuan) 輸速度,才能達到最大的通信距離,如果需要傳(chuan) 輸更遠距離可以使用中繼。

5、可以在總線上進行聯網實現多機通信,總線上允許掛多個(ge) 收發器,從(cong) 現有的RS485芯片來看,有可以掛32、64、128、256等不同個(ge) 設備的驅動器。

rs485電纜 

RS485通訊電纜結構圖

RS485的接口非常簡單,和RS232所使用的MAX232是類似的,隻需要一個(ge) RS485轉換器,就可以直接和我們(men) 單片機的UART串行接口連接起來,並且完全使用的是和UART一致的異步串行通信協議。但是由於(yu) RS485是差分通信,因此接收數據和發送數據是不能同時進行的,也就是說它是一種半雙工通信。

Modbus協議特點

Modbus協議是應用於(yu) 電子控製器上的一種通用語言。通過此協議,控製器相互之間、控製器經由網絡(例如以太網)和其他設備之間可以通信,已經成為(wei) 一種工業(ye) 標準。有了它,不同廠商生產(chan) 的控製設備可以連成工業(ye) 網絡,進行集中監控。這種協議定義(yi) 了一種控製器能夠認識使用的數據結構,而不管它們(men) 是經過何種網絡進行通信的。它描述了控製器請求訪問其他設備的過程,如何回應來自其他設備的請求,以及怎樣偵(zhen) 測錯誤記錄,它製定了通信數據的格局和內(nei) 容的公共格式。

在進行多機通信的時候,Modbus協議規定每個(ge) 控製器必須要知道他們(men) 的設備地址,識別按照地址發送過來的數據,決(jue) 定是否要產(chan) 生動作,產(chan) 生何種動作,如果要回應,控製器將生成的反饋信息用Modbus協議發出。

Modbus協議允許在各種網絡體(ti) 係結構內(nei) 進行簡單通信,每種設備(PLC、人機界麵、控製麵板、驅動程序、輸入輸出設備)都能使用Modbus協議來啟動遠程操作,一些網關(guan) 允許在幾種使用Modbus協議的總線或網絡之間的通信。

Modbus網絡體(ti) 

通訊說明

控製器采用RS-485總線,協議符合ModBusRTU規約。

數據傳(chuan) 輸均采用8位數據位、1位停止位、無奇偶校驗位。波特率可設為(wei) 1200-9600bit/s。通訊傳(chuan) 送分為(wei) 獨立的信息頭,和發送的編碼數據。以下的通訊傳(chuan) 送方式定義(yi) 與(yu) RTU通訊規約相兼容:

rs485編碼 

初始結構=>=4字節的時間地址碼=1字節功能碼=1字節數據區=N字節

錯誤校檢=16位CRC碼結束結構=>=4字節的時間

地址碼:地址碼為(wei) 通訊傳(chuan) 送的第一個(ge) 字節。這個(ge) 字節表明由用戶設定地址碼的從(cong) 機將接收由主機發送來的信息。並且每個(ge) 從(cong) 機都有具有唯一的地址碼,並且響應回送均以各自的地址碼開始。主機發送的地址碼表明將發送到的從(cong) 機地址,而從(cong) 機發送的地址碼表明回送的從(cong) 機地址。

功能碼:通訊傳(chuan) 送的第二個(ge) 字節。ModBus通訊規約定義(yi) 功能號為(wei) 1到127。本控製器利用其中的一部分功能碼。作為(wei) 主機請求發送,通過功能碼告訴從(cong) 機執行什麽(me) 動作。作為(wei) 從(cong) 機響應,從(cong) 機發送的功能碼與(yu) 從(cong) 主機發送來的功能碼一樣,並表明從(cong) 機已響應主機進行操作。如果從(cong) 機發送的功能碼的最高位(比如功能碼大於(yu) 127),則表明從(cong) 機沒有響應操作或發送出錯。

數據區:數據區是根據不同的功能碼而不同。CRC碼:二字節的錯誤檢測碼。

當通訊命令發送至儀(yi) 器時,符合相應地址碼的設備接通訊命令,並除去地址碼,讀取信息,如果沒有出錯,則執行相應的任務;然後把執行結果返送給發送者。返送的信息中包括地址碼、執行動作的功能碼、執行動作後結果的數據以及錯誤校驗碼。如果出錯就不發送任何信息。

接線說明

一條總線連接多個(ge) 表的接線圖

RS485通信接線圖示 

Tags:RS485,Modbus協議  
責任編輯:admin
  • 上一篇文章:
  • 下一篇文章:
  • 請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
    1分 2分 3分 4分 5分

    還可以輸入 200 個字
    [ 查看全部 ] 網友評論
    推薦文章
    • 此欄目下沒有推薦文章
    最新推薦
    熱門文章
    • 此欄目下沒有熱點文章
    關於我們 - 聯係我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
    返回頂部
    刷新頁麵
    下到頁底
    晶體管查詢