91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

Modbus功能碼詳解

瑞薩嵌入式小百科 ? 來源:瑞薩MCU小百科 ? 2024-10-29 14:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

10.5Modbus功能碼詳解

本節(jié)大部分內(nèi)容參考《Modbus軟件開發(fā)實戰(zhàn)指南》。

10.5.1

功能碼概要

Modbus標準在協(xié)議中規(guī)定了以下3類Modbus功能碼。

公共功能碼:

①被明確定義的功能碼

②保證唯一性

③由Modbus協(xié)會確認,并提供公開的文檔

④可進行一致性測試

⑤包括協(xié)議定義的功能碼和保留將來使用的功能碼

用戶自定義功能碼:

①有兩個用戶自定義功能碼區(qū)域,分別是65~72和100~110。

②用戶自定義,無法保證唯一性。

保留功能碼:

保留功能碼因為歷史遺留原因,某些公司的傳統(tǒng)產(chǎn)品現(xiàn)行使用的功能碼不作為公共使用。

10.5.2

0x01)讀取線圈

1. 功能說明

01功能碼用于讀取從設備的線圈或離散量輸出的狀態(tài),即各Do(DiscreteOutput,離散輸出)的ON/OFF狀態(tài)。消息幀中指定了需要讀取的線圈起始地址和線圈數(shù)目。需要注意的是,在Modbus協(xié)議規(guī)定的PDU中,所有線圈或寄存器地址都必須從0開始計算。

2. 查詢報文

如下表所示,查詢幀的消息中定義了從設備地址為3,并讀取從設備的Modbus地址0001900055(線圈地址 0002000056)共計37個狀態(tài)值。起始線圈地址為0x13(即十進制00019),因為線圈地址是從0開始計數(shù)的。

功能碼01查詢報文示例:

字段 例(Hex) ASCII模式字符型 RTU模式8位(Hex)
幀頭 “:”
從設備地址 0x03 “0”,“3” 0x03
功能碼 0x01 “0”,“1” 0x01
起始地址
(高位)
0x00 “0”,“0” 0x00
起始地址
(低位)
0x13 “1”,“3” 0x13
寄存器數(shù)
(高位)
0x00 “0”,“0” 0x00
寄存器數(shù)
(低位)
0x25 “2”,“5” 0x25
差錯校驗 LRC(2字符) CRC(2字節(jié))
幀尾 CR/LF
合計字節(jié)數(shù) 17 8

Modbus協(xié)議規(guī)定,起始地址由2字節(jié)構成,取值范圍為0x0000~0xFFFF。

線圈數(shù)量由2字節(jié)構成,取值范圍為0x0001~0x07D0(即+進制1~2000)另外,注意觀察ASCII模式和RTU模式的區(qū)別,ASCII模式直接按每4位拆分成對應的字符表示。

3. 響應報文

在響應報文的數(shù)據(jù)字段中,每個線圈占用1位(bit),狀態(tài)被表示為1=ON和O=OFF兩種類型。第1個數(shù)據(jù)字節(jié)的LSB(最低有效位)標識查詢報文中的起始地址線圈的狀態(tài)值,其他線圈以此類推,一直到這個字節(jié)的MSB(最高有效位)為止,并在后續(xù)字節(jié)中按照同樣的方式(由低到高)排列。

例如,下表中線圈20~27的狀態(tài)值分別是ON-ON-OFF OFF-ON-OFF-ON-OFF表示為二進制則為01010011(0x53),注意觀察對應的順序。1字節(jié)可以表示8個線圈的狀態(tài)如果最后的數(shù)據(jù)字節(jié)中不能填滿8個線圈的狀態(tài),則用0填充。對應于查詢報文中需要讀取37個線圈的狀態(tài),共需要5字節(jié)保存狀態(tài)值。

功能碼01響應報文示例:

字段 例(Hex) ASCII模式字符型 RTU模式8位(Hex)
幀頭 “:”
從設備地址 0x03 “0”,“3” 0x03
功能碼 0x01 “0”,“1” 0x01
數(shù)據(jù)域字節(jié)數(shù) 0x05 “0”,“5” 0x05
數(shù)據(jù)1 0x53 “5”,“3” 0x53
數(shù)據(jù)2 0x6B “6”,“B” 0x6B
數(shù)據(jù)3 0x01 “0”,“1” 0x01
數(shù)據(jù)4 0xF4 “F”,“B” 0xF4
數(shù)據(jù)5 0x1B “1”,“B” 0x1B
差錯校驗 LRC(2字符) CRC(2字節(jié))
幀尾 CR/LF
合計字節(jié)數(shù) 21 10

10.5.3

(0x02)讀取離散量輸入值

1. 功能說明

02功能碼用于讀取從設備的離散輸入,即DI(Discrete Input)的ON/OFF狀態(tài)。消息頓中指定了需要讀取的離散輸入寄存器的起始地址和數(shù)目,可以讀取1~2000個連續(xù)的離散量輸入狀態(tài)如果從設備接受主設備的請求則回復功能碼02,并返回離散量且輸入各變量的當前狀態(tài)。如果返回的離散輸入數(shù)量的個數(shù)不是8的整數(shù)倍,將用0填充最后的數(shù)據(jù)字節(jié)的剩余位。

2. 查詢報文

如下表所示,查詢頓的消息中定義了從設備的地址為3,并讀取從設備的離散輸入寄存器中地址10101~10120(Modbus地址表示為十進制100~119)共計20個離散輸入狀態(tài)值。從下表中可以發(fā)現(xiàn),起始地址為0x64(即十進制100),因為消息PDU中的Modbus地址從0開始計數(shù)。

功能碼02查詢報文示例:

字段 例(Hex) ASCII模式字符型 RTU模式8位(Hex)
幀頭 “:”
從設備地址 0x03 “0”,“3” 0x03
功能碼 0x02 “0”,“2” 0x02
起始地址
(高位)
0x00 “0”,“0” 0x00
起始地址
(低位)
0x64 “6”,“4” 0x64
寄存器數(shù)
(高位)
0x00 “0”,“0” 0x00
寄存器數(shù)
(低位)
0x14 “1”,“4” 0x14
差錯校驗 LRC(2字符) CRC(2字節(jié))
幀尾 CR/LF
合計字節(jié)數(shù) 17 8

與5.4.2節(jié)中的功能碼(01(0x01)讀取線圈/離散量輸出狀態(tài)(ReadCoil status/DOs))一樣,本功能碼的起始地址由2字節(jié)構成,取值范圍為0x0000~0xFFFF;離散量數(shù)量由2字節(jié)構成,取值范圍為0x0001~0x07D0(即十進制1~2000),最多一次性可讀取2000人離散輸入狀態(tài)值。

3. 響應報文

響應報文的各項構成和意義與5.4.2章節(jié)的功能碼(01(0x01)讀取線圈/離散量輸出狀態(tài)(Re-ad Coil Status/DOs))一樣,如下表所示:

功能碼02響應報文示例

字段 例(Hex) ASCII模式字符型 RTU模式8位(Hex)
幀頭 “:”
從設備地址 0x03 “0”,“3” 0x03
功能碼 0x02 “0”,“2” 0x02
數(shù)據(jù)域字節(jié)數(shù) 0x03 “0”,“3” 0x03
數(shù)據(jù)1 0x53 “5”,“3” 0x53
數(shù)據(jù)2 0x6B “6”,“B” 0x6B
數(shù)據(jù)3 0x01 “0”,“1” 0x01
差錯校驗 LRC(2字符) CRC(2字節(jié))
幀尾 CR/LF
合計字節(jié)數(shù) 21 10

需要技術支持?

如您在使用瑞薩MCU/MPU產(chǎn)品中有任何問題,可識別下方二維碼或復制網(wǎng)址到瀏覽器中打開,進入瑞薩技術論壇尋找答案或獲取在線技術支持。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • MODBUS
    +關注

    關注

    28

    文章

    2457

    瀏覽量

    83186
  • 設備
    +關注

    關注

    2

    文章

    4833

    瀏覽量

    73718
  • ModBus協(xié)議

    關注

    3

    文章

    190

    瀏覽量

    35319
  • 功能碼
    +關注

    關注

    0

    文章

    10

    瀏覽量

    2398
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    臺達PLC通信支持modbus協(xié)議的4號功能嗎?

    使用modbus協(xié)議的4號功能采集PH值,系統(tǒng)部署如下圖:本來這是個很簡單的項目,可是在PLC的通訊編程中出現(xiàn)了問題,DW-MC1無線監(jiān)控器采樣modbus協(xié)議的4號
    發(fā)表于 05-22 11:18

    modbus協(xié)議講解modbus-rtu以及modbus-tcp協(xié)議詳解

    modbus協(xié)議講解modbus-rtu以及modbus-tcp協(xié)議詳解,見附件。
    發(fā)表于 03-01 10:14

    Modbus詳解(全書+PDF)

    Modbus詳解,有需要的看看
    發(fā)表于 11-01 15:47

    Modbus功能的回調(diào)函數(shù)如何編寫呢

    FreeModbus從站設計(10)-Modbus功能的回調(diào)函數(shù)如何編寫關鍵詞:FreeModbus CubeMX HAL庫 串口 功能
    發(fā)表于 02-16 07:31

    什么是Modbus?Modbus用來干什么?Modbus的內(nèi)容是什么?

    的最多功能就是03和06,大部分都是用modbus來查詢傳感器上的信息用03查詢功能,如果需要修改傳感器寄存器的值就用06修改
    發(fā)表于 05-05 16:40

    modbus功能錯誤會返回什么錯誤信息?

    modbus在通信的過程中功能錯誤會返回什么錯誤碼
    發(fā)表于 10-13 07:48

    modbus功能怎么用?

    modbus功能怎么用
    發(fā)表于 11-06 06:37

    Modbus通信協(xié)議詳解

    關于Modbus通信協(xié)議的詳解和應用分析
    發(fā)表于 10-12 16:54 ?151次下載
    <b class='flag-5'>Modbus</b>通信協(xié)議<b class='flag-5'>詳解</b>

    Modbus_通訊協(xié)議詳解

    Modbus_通訊協(xié)議詳解,Modbus_通訊協(xié)議詳解
    發(fā)表于 12-08 14:13 ?0次下載

    modbus協(xié)議功能及格式

    modbus協(xié)議功能及格式
    發(fā)表于 10-28 15:56 ?43次下載

    基于Modbus功能細粒度過濾算法的研究

    針對防火墻粗粒度過濾Modbus/TCP導致工控系統(tǒng)存在安全威脅的問題,研究基于Modbus功能的細粒度過濾算法?;?b class='flag-5'>Modbus TCP
    發(fā)表于 01-16 15:32 ?0次下載
    基于<b class='flag-5'>Modbus</b><b class='flag-5'>功能</b><b class='flag-5'>碼</b>細粒度過濾算法的研究

    單片機程序中,Modbus功能的回調(diào)函數(shù)如何編寫--FreeModbus從站設計(10)

    FreeModbus從站設計(10)-Modbus功能的回調(diào)函數(shù)如何編寫關鍵詞:FreeModbus CubeMX HAL庫 串口 功能
    發(fā)表于 12-20 18:49 ?9次下載
    單片機程序中,<b class='flag-5'>Modbus</b><b class='flag-5'>功能</b><b class='flag-5'>碼</b>的回調(diào)函數(shù)如何編寫--FreeModbus從站設計(10)

    【EsDA應用】Modbus應用詳解

    。 ?? Modbus簡介 Modbus是一種串行通信協(xié)議,由于其公開、免費、易于部署和維護的優(yōu)點,被廣泛應用于工業(yè)電子領域,并且已經(jīng)成為工業(yè)領域通信協(xié)議的業(yè)界標準。 (圖片源自網(wǎng)絡,侵刪) 以往我們在使用Modbus協(xié)議進行應
    的頭像 發(fā)表于 03-10 21:50 ?1560次閱讀

    Modbus功能/異常功能/錯誤代碼

    在大家通讀Modbus協(xié)議時,總是會碰到一些容易混淆的名詞,從而導致對于協(xié)議的解讀出現(xiàn)問題,在本文中,我們對于Modbus協(xié)議中可能會給大家造成困惑的名詞作相關的解釋。 1.功能
    的頭像 發(fā)表于 06-25 09:20 ?1.7w次閱讀

    modbus協(xié)議功能分類 modbus協(xié)議功能是什么,有什么作用

    Modbus協(xié)議是一種用于工業(yè)領域常見的通信協(xié)議,它基于主從結構,用于在不同設備之間實現(xiàn)數(shù)據(jù)交換。Modbus協(xié)議的功能是決定數(shù)據(jù)交換類型和操作的重要部分。下面將詳細介紹
    的頭像 發(fā)表于 01-31 14:47 ?1.1w次閱讀