<li id="8g3ty"><tbody id="8g3ty"><th id="8g3ty"></th></tbody></li>
    <label id="8g3ty"><samp id="8g3ty"></samp></label>
  • <span id="8g3ty"></span>

    1. <center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
    2. <bdo id="8g3ty"><meter id="8g3ty"><bdo id="8g3ty"></bdo></meter></bdo><center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
      <label id="8g3ty"><samp id="8g3ty"></samp></label>

    3. 電子開發網

      電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
      搜索: 您現在的位置: 電子開發網 >> 電子開發 >> 單片機 >> 正文

      Modbus RTU與Modbus TCP的區別

      作者:佚名    文章來源:本站原創    點擊數:    更新時間:2022/9/8

      Modbus通信協議具有多個變種,支持串口(主要是RS-485總線),以太網多個版本,其中最著名的是Modbus RTU,Modbus ASCII和Modbus TCP三種。

      在工業現場一般都是采用Modbus RTU協議,一般而言,大家說的基于串口通信的Modbus通信協議都是指Modbus RTU通信協議。與Modbus RTU協議相比較,

      Modbus TCP協議則是在RTU協議上加一個MBAP報文頭,并且由于TCP是基于可靠連接的服務,RTU協議中的CRC校驗碼就不再需要,所以在Modbus TCP協

      議中是沒有CRC校驗碼的,所以就常用一句比較通俗的話來說:Modbus TCP協議就是Modbus RTU協議在前面加上五個0以及一個6,然后去掉兩個CRC校驗碼

      字節就OK。雖然這句話說得不是特別準確,但是也基本上把RTU與TCP之間的區別說得比較清楚了。

        Modbus的功能碼有:

      功能碼 含義 功能碼 含義
      0x01 讀線圈 0x04 讀輸入寄存器
      0x05 寫單個線圈 0x03 讀保持寄存器
      0x0F 寫多個線圈 0x06 寫單個保持寄存器
      0x02 讀離散量輸入 0x10 寫多個保持寄存器

       

       

       

       

      一、Modbus RTU

        RTU協議中的指令由地址碼(一個字節),功能碼(一個字節),起始地址(兩個字節),數據(N個字節),校驗碼(兩個字節)五個部分組成。

      數據由數據長度(兩個字節,表示的是寄存器個數,假定為M)和數據正文(M乘以2個字節)組成。

      發:01 03 01 8E 00 04 25 DE //讀(0x03),從寄存器地址01 8E 開始讀,讀4個寄存器00 04

      回:01 03 08 00 01 00 01 00 01 00 01 28 D7 // 08表示數據長度 ,00 01 00 01 00 01 00 01讀到的數據

      發:00 10 00 20 00 01 02 00 00 AC A0 // 寫(0x10),從寄存器地址 00 20開始寫,寫一個寄存器 00 01,寫入值 00 00

      回:00 10 00 20 00 01 01 D2

      二、Modbus TCP

        Modbus TCP協議是在RTU協議前面添加MBAP報文頭,由于TCP是基于可靠連接的服務,RTU協議中的CRC校驗碼就不再需要,所以在Modbus TCP協議中是沒有CRC校驗碼。

      MBAP報文頭:

      事務處理標識 協議標識 長度 單元標識符
      2字節 2字節 2字節 1字節

       

       

       

      事務處理標識 可以理解為報文的序列號,一般每次通信之后就要加1以區別不同的通信數據報文
      協議標識符 00 00表示ModbusTCP協議
      長度 表示接下來的數據長度,單位為字節
      單元標識符 可以理解為設備地址

       

       

       

       

      發:00 00 00 00 00 06 00 03 00 20 00 01
      回:00 00 00 00 00 05 00 03 02 00 00

      發:00 00 00 00 00 06 00 04 00 30 00 01
      回:00 00 00 00 00 05 00 04 02 00 08

      發:00 00 00 00 00 09 00 10 00 20 00 01 02 00 00

      回:00 00 00 00 00 06 00 10 00 20 00 01

      三、總結(注:16進制發送)

      1、讀指令對比(0x04)

      MBAP報文頭 地址碼 功能碼 寄存器地址 寄存器數量 CRC校驗
      Modbus RTU 01 04 00 00 00 16 71 C4
      Modbus TCP 00 00 00 00 00 06 01 04 00 00 00 16

       

       

       

      2、寫指令對比(0x10)

      MBAP報文頭 地址碼 功能碼 寄存器地址 寄存器數量 數據長度 正文 CRC校驗
      Modbus RTU 00 10 00 20 00 01 02 00 00 AC A0
      Modbus TCP 00 00 00 00 00 09 00 10 00 20 00 01 02 00 00

       

       

       

       

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

      還可以輸入 200 個字
      [ 查看全部 ] 網友評論
      關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
      返回頂部
      刷新頁面
      下到頁底
      晶體管查詢
      主站蜘蛛池模板: 一本大道久久a久久综合| 亚洲色欲色欲综合网站| 伊人色综合网一区二区三区 | 99久久综合久中文字幕| 98精品国产综合久久| 区三区激情福利综合中文字幕在线一区亚洲视频1 | 鲁一鲁一鲁一鲁一曰综合网| 久久五月天综合网| 国产综合色产在线精品| 亚洲小说图区综合在线| 久久久久国产综合AV天堂| 六月婷婷综合激情| 亚洲国产精品综合久久20| 狠狠色伊人久久精品综合网| 色婷婷六月亚洲综合香蕉| 91精品国产综合久久青草| 亚洲国产综合无码一区| 国产成人亚洲综合| 一本一本久久a久久精品综合| 色综合天天做天天爱| 色综合色综合色综合色综合网 | 亚洲综合一区二区精品久久| 亚洲色欲久久久久综合网| 色综合久久综合网| 精品综合久久久久久99| 色噜噜狠狠色综合欧洲| 色噜噜狠狠狠色综合久| 国产日韩综合一区二区性色AV| 亚洲人成网站999久久久综合| 狠狠色丁香久久婷婷综合蜜芽五月| 久久一日本道色综合久| 色拍自拍亚洲综合图区 | 亚洲伊人精品综合在合线| 91色综合综合热五月激情| 亚洲国产综合人成综合网站00| 久久综合综合久久97色| 色欲久久久天天天综合网精品| 亚洲综合中文字幕无线码| 综合一区自拍亚洲综合图区| 狠狠久久综合伊人不卡| 久久五月天综合网|