<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 會員中心 會員注冊
      搜索: 您現在的位置: 電子開發網 >> 電子開發 >> plc軟件使用 >> 正文

      modbus通訊協議功能碼一覽_ModBus功能碼定義

      作者:佚名    文章來源:本站原創    點擊數:    更新時間:2022-04-03

      modbus通訊協議功能碼一覽_ModBus功能碼定義
      Modbus網絡是一個工業通信系統,由帶智能終端的可編程序控制器和計算機通過公用線路或局部專用線路連接而成。其系統結構既包括硬件、亦包 括軟件。它可應用于各種數據采集和過程監控。下表1是ModBus的功能碼定義。
      表1 ModBus功能碼
      功能碼  名稱  作用
      01  讀取線圈狀態 取得一組邏輯線圈的當前狀態(ON/OFF)
      02  讀取輸入狀態  取得一組開關輸入的當前狀態(ON/OFF)
      03  讀取保持寄存器  在一個或多個保持寄存器中取得當前的二進制值
      04  讀取輸入寄存器  在一個或多個輸入寄存器中取得當前的二進制值
      05  強置單線圈  強置一個邏輯線圈的通斷狀態
      06  預置單寄存器  把具體二進值裝入一個保持寄存器
      07  讀取異常狀態  取得8個內部線圈的通斷狀態,這8個線圈的地址由控制器決定,用戶邏輯可以將這些線圈定義,以說明從機狀態,短 報文適宜于迅速讀取狀態
      08  回送診斷校驗  把診斷校驗報文送從機,以對通信處理進行評鑒
      09  編程(只用于484)  使主機模擬編程器作用,修改PC從機邏輯
      10  控詢(只用于484)  可使主機與一臺正在執行長程序任務從機通信,探詢該從機是否已完成其操作任務,僅在含有功能碼9的報文發送后,本功能碼才發送
      11  讀取事件計數  可使主機發出單詢問,并隨即判定操作是否成功,尤其是該命令或其他應答產生通信錯誤時
      12  讀取通信事件記錄  可是主機檢索每臺從機的ModBus事務處理通信事件記錄。如果某項事務處理完成,記錄會給出有關錯誤
      13  編程(184/384 484 584)  可使主機模擬編程器功能修改PC從機邏輯
      14  探詢(184/384 484 584)  可使主機與正在執行任務的從機通信,定期控詢該從機是否已完成其程序操作,僅在含有功能13的報文發送后,本功能碼才得發送
      15  強置多線圈  強置一串連續邏輯線圈的通斷
      16  預置多寄存器  把具體的二進制值裝入一串連續的保持寄存器
      17  報告從機標識  可使主機判斷編址從機的類型及該從機運行指示燈的狀態
      18  (884和MICRO 84)  可使主機模擬編程功能,修改PC狀態邏輯
      19  重置通信鏈路  發生非可修改錯誤后,是從機復位于已知狀態,可重置順序字節
      20  讀取通用參數(584L)  顯示擴展存儲器文件中的數據信息
      21  寫入通用參數(584L)  把通用參數寫入擴展存儲文件,或修改之
      22~64  保留作擴展功能備用  
      65~72  保留以備用戶功能所用  留作用戶功能的擴展編碼
      73~119  非法功能  
      120~127  保留  留作內部作用
      128~255  保留  用于異常應答
       
       
            Modbus網絡只是一個主機,所有通信都由他發出。網絡可支持247個之多的遠程從屬控制器,但實際所支持的從機數要由所用通信設備決定。采用這個系 統,各PC可以和中心主機交換信息而不影響各PC執行本身的控制任務。表2是ModBus各功能碼對應的數據類型。
      表2 ModBus功能碼與數據類型對應表
      代碼 功能 數據類型
      01 讀 位
      02 讀 位
      03 讀 整型、字符型、狀態字、浮點型
      04 讀 整型、狀態字、浮點型
      05 寫 位
      06 寫 整型、字符型、狀態字、浮點型
      08 N/A 重復“回路反饋”信息
      15 寫 位
      16 寫 整型、字符型、狀態字、浮點型
      17 讀 字符型
      (1)ModBus的傳輸方式
       在ModBus系統中有2種傳輸模式可選擇。這2種傳輸模式與從機PC通信的能力是同等的。選擇時應視所用ModBus主機而定, 每個ModBus系統只能使用一種模式,不允許2種模式混用。一種模式是ASCII(美國信息交換碼),另一種模式是RTU(遠程終端設備)這兩種模式的 定義見表3
       
      表3 ASCII和RTU傳輸模式的特性
      特性  ASCII(7位) RTU(8位)
      編碼系統  十六進制(使用ASCII可打印字符:0~9,A~F)  二進制
      每一個字符的位數  開始位  1位  1位
       數據位(最低有效位第一位)  7位  8位
       奇偶校驗(任選)  1位(此位用于奇偶校驗,無校應則無該位)  1位(此位用于奇偶校驗,無校應則無該位)
       停止位  1或2位  1或2位
       錯誤校驗  LRC(即縱向冗余校驗)  CRC(即循環冗余校驗)
            ASCII可打印字符便于故障檢測,而且對于用高級語言(如Fortan)編程的主計算機及主PC很適宜。RTU則適用于機器語言編程的計算機和PC主 機。
            用RTU模式傳輸的數據是8位二進制字符。如欲轉換為ASCII模式,則每個RTU字符首先應分為高位和低位兩部分,這兩部分各含4位,然后轉換成十六進 制等量值。(https://www.dgzj.com/ 電工之家)用以構成報文的ASCII字符都是十六進制字符。ASCII模式使用的字符雖是RTU模式的兩倍,但ASCII數據的譯瑪和處理更為容易一些, 此外,用RTU模式時報文字符必須以連續數據流的形式傳送,用ASCII模式,字符之間可產生長達1s的間隔,以適應速度較快的機器。表4給出了以RTU 方式讀取整數據的例子
      以RTU方式讀取整數據的例子
      主機請求
      地址  功能碼  第一個寄存器的高位地址  第一個寄存器的低位地址  寄存器的數量的高位  寄存器的數量的底位  錯誤校驗
      01  03  00  38  00  01  XX
      從機應答
      地址  功能碼  字節數  數據高字節  數據低字節  錯誤校驗
      01  03  2  41  24  XX
      十六進制數4124表示的十進制整數為16676,錯誤校驗值要根據傳輸方式而定。
      (2)Modbus的數據校驗方式
      CRC-16(循環冗余錯誤校驗)
            CRC-16錯誤校驗程序如下:報文(此處只涉及數據位,不指起始位、停止位和任選的奇偶校驗位)被看作是一個連續的二進制,其最高有效位(MSB)首選 發送。報文先與X↑16相乘(左移16位),然后看X↑16+X↑15+X↑2+1除,X↑16+X↑15+X↑2+1可以表示為二進制數 11000000000000101。整數商位忽略不記,16位余數加入該報文(MSB先發送),成為2個CRC校驗字節。余數中的1全部初始化,以免所 有的零成為一條報文被接收。經上述處理而含有CRC字節的報文,若無錯誤,到接收設備后再被同一多項式(X↑16+X↑15+X↑2+1)除,會得到一個 零余數(接收設備核驗這個CRC字節,并將其與被傳送的CRC比較)。全部運算以2為模(無進位)。
            習慣于成串發送數據的設備會首選送出字符的最右位(LSB-最低有效位)。而在生成CRC情況下,發送首位應是被除數的最高有效位MSB。由于在運算中不 用進位,為便于操作起見,計算CRC時設MSB在最右位。生成多項式的位序也必須反過來,以保持一致。多項式的MSB略去不記,因其只對商有影響而不影響 余數。
      生成CRC-16校驗字節的步驟如下:
      ①裝如一個16位寄存器,所有數位均為1。
      ②該16位寄存器的高位字節與開始8位字節進行“異或”運算。運算結果放入這個16位寄存器。
      ③把這個16寄存器向右移一位。
      ④若向右(標記位)移出的數位是1,則生成多項式1010000000000001和這個寄存器進行“異或”運算;若向右移出的數位是0,則返 回③。
      ⑤重復③和④,直至移出8位。
      ⑥另外8位與該十六位寄存器進行“異或”運算。
      ⑦重復③~⑥,直至該報文所有字節均與16位寄存器進行“異或”運算,并移位8次。
      ⑧這個16位寄存器的內容即2字節CRC錯誤校驗,被加到報文的最高有效位。
            另外,在某些非ModBus通信協議中也經常使用CRC16作為校驗手段,而且產生了一些CRC16的變種,他們是使用CRC16多項式X↑16+ X↑15+X↑2+1,單首次裝入的16位寄存器為0000;使用CRC16的反序X↑16+X↑14+X↑1+1,首次裝入寄存器值為0000或 FFFFH。
      LRC(縱向冗余錯誤校驗)
            LRC錯誤校驗用于ASCII模式。這個錯誤校驗是一個8位二進制數,可作為2個ASCII十六進制字節傳送。把十六進制字符轉換成二進制,加上無循環進 位的二進制字符和二進制補碼結果生成LRC錯誤校驗(參見圖)。這個LRC在接收設備進行核驗,并與被傳送的LRC進行比較,冒號(:)、回車符號 (CR)、換行字符(LF)和置入的其他任何非ASCII十六進制字符在運算時忽略不計。
      表5 LRC生成范例--讀取02號從機的前8個線圈
       十六進制 二進制

      地址  0  2   0000  0010
      功能碼  0  1   0000  0001
      起始地址高位  0  0   0000  0000
      起始地址低位  0  0   0000  0000
      單元數量  0  0   0000  0000
       0  8  +  0000  1000
         0000  1011
        變成補碼  1111  0101
      錯誤校驗  F  5   F  5
      接受PC把所有收到的數據字節(包括最后的LRC)加在一起,8位應全部為0(注意:和可能超過8位,應略去最低位)     
                                                                      0000  0010
          0000  0001
          0000  0000
          0000  0000
          0000  0000
          0000  1000
        錯誤校驗  1111  0101
         和  0000  0000

      Tags:modbus,通訊協議,功能碼  
      責任編輯:admin
    4. 上一篇文章:
    5. 下一篇文章: 沒有了
    6. 請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
      1分 2分 3分 4分 5分

      還可以輸入 200 個字
      [ 查看全部 ] 網友評論
      關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
      返回頂部
      刷新頁面
      下到頁底
      晶體管查詢
      主站蜘蛛池模板: 伊人婷婷综合缴情亚洲五月| 一个色综合国产色综合| 天天综合久久一二三区| 狠狠综合久久AV一区二区三区| 91综合精品网站久久| 色综合合久久天天给综看| 99久久综合给久久精品| 一本久久a久久精品vr综合| 狠狠综合亚洲综合亚洲色| 狠狠狠色丁香婷婷综合久久俺| 亚洲AV综合色区无码二区偷拍| 国产成人亚洲综合无| 亚洲精品国产第一综合99久久| 插插插色欲综合网| 老色鬼久久综合第一| 天堂无码久久综合东京热| 开心婷婷五月激情综合社区| 91精品国产综合久久四虎久久无码一级 | 国产精品亚洲综合五月天| 激情综合婷婷丁香五月| 成人综合国产乱在线| 色噜噜狠狠色综合久| 伊人色综合久久天天人守人婷 | 国产亚洲综合色就色| 狠狠色婷婷狠狠狠亚洲综合| 亚洲国产精品综合久久网络| 色综久久天天综合绕视看| 国产精品亚洲综合网站| 青青青国产色视频在线观看国产亚洲欧洲国产综合 | 亚洲av无码国产综合专区| 久久婷婷五月综合97色一本一本 | 国产综合久久久久久| 韩国亚洲伊人久久综合影院| 色噜噜狠狠色综合欧洲selulu| 欧美激情综合亚洲一二区| 亚洲国产免费综合| 国产亚洲综合网曝门系列| 婷婷色香五月激情综合2020| 国产成人综合久久精品| 国产亚洲综合色就色| 中文字幕亚洲综合久久综合|