在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

【實用篇】ModbusTCP協(xié)議詳解

工控論壇 ? 來源:工控論壇 ? 2024-01-14 11:13 ? 次閱讀

概述

Modbus由MODICON公司于1979年開發(fā),是一種工業(yè)現(xiàn)場總線協(xié)議標準。1996年施耐德公司推出基于以太網(wǎng)TCP/IP的Modbus協(xié)議:ModbusTCP。Modbus協(xié)議是一項應用層報文傳輸協(xié)議,包括ASCII、RTU、TCP三種報文類型。標準的Modbus協(xié)議物理層接口RS232RS422RS485和以太網(wǎng)接口,采用master/slave方式通信。 AModbus TCP數(shù)據(jù)幀 ModbusTCP的數(shù)據(jù)幀可分為兩部分:MBAP+PDU。(一)報文頭MBAP:MBAP為報文頭,長度為7字節(jié),組成如下:

25d87d9c-b21d-11ee-8b88-92fbcf53809c.png

25e2e750-b21d-11ee-8b88-92fbcf53809c.png

(二)幀結構PDU:PDU由功能碼+數(shù)據(jù)組成。功能碼為1字節(jié),數(shù)據(jù)長度不定,由具體功能決定。

(1)功能碼:Modbus的操作對象有四種:線圈、離散輸入、保持寄存器、輸入寄存器。

25ed2bc0-b21d-11ee-8b88-92fbcf53809c.png

(2)根據(jù)對象的不同,Modbus的功能碼有:

25f11d52-b21d-11ee-8b88-92fbcf53809c.png

(3)說明更詳細的表:

260752ac-b21d-11ee-8b88-92fbcf53809c.png

BPDU詳細結構

(1)0x01:讀線圈:在從站中讀1~2000個連續(xù)線圈狀態(tài),ON=1,OFF=0

請求:MBAP 功能碼 起始地址H 起始地址L 數(shù)量H 數(shù)量L(共12字節(jié))

響應:MBAP 功能碼 數(shù)據(jù)長度 數(shù)據(jù)(一個地址的數(shù)據(jù)為1位)

如:在從站0x01中,讀取開始地址為0x0002的線圈數(shù)據(jù),讀0x0008位
00 01 00 00 00 06 01 01 00 02 00 08

回:數(shù)據(jù)長度為0x01個字節(jié),數(shù)據(jù)為0x01,第一個線圈為ON,其余為OFF
00 01 00 00 00 04 01 01 01 01

(2)0x05:寫單個線圈:將從站中的一個輸出寫成ON或OFF,0xFF00請求輸出為ON,0x000請求輸出為OFF。

請求:MBAP 功能碼 輸出地址H 輸出地址L 輸出值H 輸出值L(共12字節(jié))

響應:MBAP 功能碼 輸出地址H 輸出地址L 輸出值H 輸出值L(共12字節(jié))

如:將地址為0x0003的線圈設為ON
00 01 00 00 00 06 01 05 00 03 FF 00

回:寫入成功
00 01 00 00 00 06 01 05 00 03 FF 00

(3)0x0F:寫多個線圈:將一個從站中的一個線圈序列的每個線圈都強制為ON或OFF,數(shù)據(jù)域中置1的位請求相應輸出位ON,置0的位請求響應輸出為OFF。

請求:MBAP 功能碼 起始地址H 起始地址L 輸出數(shù)量H 輸出數(shù)量L 字節(jié)長度 輸出值H 輸出值L

響應:MBAP 功能碼 起始地址H 起始地址L 輸出數(shù)量H 輸出數(shù)量L

(4)0x02:讀離散量輸入:從一個從站中讀1~2000個連續(xù)的離散量輸入狀態(tài)。

請求:MBAP 功能碼 起始地址H 起始地址L 數(shù)量H 數(shù)量L(共12字節(jié))

響應:MBAP 功能碼 數(shù)據(jù)長度 數(shù)據(jù)(長度:9+ceil(數(shù)量/8))

如:從地址0x0000開始讀0x0012個離散量輸入
00 01 00 00 00 06 01 02 00 00 00 12

回:數(shù)據(jù)長度為0x03個字節(jié),數(shù)據(jù)為0x01 04 00,表示第一個離散量輸入和第11個離散量輸入為ON,其余為OFF
00 01 00 00 00 06 01 02 03 01 04 00

(5)0x04:讀輸入寄存器:從一個遠程設備中讀1~2000個連續(xù)輸入寄存器。

請求:MBAP 功能碼 起始地址H 起始地址L 寄存器數(shù)量H 寄存器數(shù)量L(共12字節(jié))

響應:MBAP 功能碼 數(shù)據(jù)長度 寄存器數(shù)據(jù)(長度:9+寄存器數(shù)量×2)

如:讀起始地址為0x0002,數(shù)量為0x0005的寄存器數(shù)據(jù)
00 01 00 00 00 06 01 04 00 02 00 05

回:數(shù)據(jù)長度為0x0A,第一個寄存器的數(shù)據(jù)為0x0c,其余為0x00
00 01 00 00 00 0D 01 04 0A 00 0C 00 00 00 00 00 00 00 00

(6)0x03:讀保持寄存器:從遠程設備中讀保持寄存器連續(xù)塊的內容。

請求:MBAP 功能碼 起始地址H 起始地址L 寄存器數(shù)量H 寄存器數(shù)量L(共12字節(jié))

響應:MBAP 功能碼 數(shù)據(jù)長度 寄存器數(shù)據(jù)(長度:9+寄存器數(shù)量×2)

如:起始地址是0x0000,寄存器數(shù)量是 0x0003
00 01 00 00 00 06 01 03 00 00 00 03

回:數(shù)據(jù)長度為0x06,第一個寄存器的數(shù)據(jù)為0x21,其余為0x00
00 01 00 00 00 09 01 03 06 00 21 00 00 00 00

(7)0x06:寫單個保持寄存器:在一個遠程設備中寫一個保持寄存器。

請求:MBAP 功能碼 寄存器地址H 寄存器地址L 寄存器值H 寄存器值L(共12字節(jié))

響應:MBAP 功能碼 寄存器地址H 寄存器地址L 寄存器值H 寄存器值L(共12字節(jié))

如:向地址是0x0000的寄存器寫入數(shù)據(jù)0x000A
00 01 00 00 00 06 01 06 00 00 00 0A

回:寫入成功
00 01 00 00 00 06 01 06 00 00 00 0A

(8)0x10:寫多個保持寄存器:在一個遠程設備中寫連續(xù)寄存器塊(1~123個寄存器)。

請求:MBAP 功能碼 起始地址H 起始地址L 寄存器數(shù)量H 寄存器數(shù)量L 字節(jié)長度 寄存器值(13+寄存器數(shù)量×2)

響應:MBAP 功能碼 起始地址H 起始地址L 寄存器數(shù)量H 寄存器數(shù)量L(共12字節(jié))

如:向起始地址為0x0000,數(shù)量為0x0001的寄存器寫入數(shù)據(jù),數(shù)據(jù)長度為0x02,數(shù)據(jù)為0x000F
00 01 00 00 00 09 01 10 00 00 00 01 02 00 0F

回:寫入成功
00 01 00 00 00 06 01 10 00 00 00 01

CModbus TCP示例報文

ModBusTcp與串行鏈路Modbus的數(shù)據(jù)域是一致的,具體數(shù)據(jù)域可以參考串行Modbus。這里給出幾個ModbusTcp的鏈路解析說明,輔助新人分析報文。

261be500-b21d-11ee-8b88-92fbcf53809c.jpg

26206aa8-b21d-11ee-8b88-92fbcf53809c.jpg

263c2b26-b21d-11ee-8b88-92fbcf53809c.jpg

264fbe20-b21d-11ee-8b88-92fbcf53809c.jpg

DModbus TCP通信

(一)通信方式

Modbus設備可分為主站(poll)和從站(slave)。主站只有一個,從站有多個,主站向各從站發(fā)送請求幀,從站給予響應。在使用TCP通信時,主站為client端,主動建立連接;從站為server端,等待連接。

主站請求:功能碼+數(shù)據(jù)

從站正常響應:請求功能碼+響應數(shù)據(jù)

從站異常響應:異常功能碼+異常碼,其中異常功能碼即將請求功能碼的最高有效位置1,異常碼指示差錯類型

需要超時管理機制,避免無期限的等待可能不出現(xiàn)的應答

IANA(Internet Assigned Numbers Authority,互聯(lián)網(wǎng)編號分配管理機構)給Modbus協(xié)議賦予TCP端口號為502,這是目前在儀表與自動化行業(yè)中唯一分配到的端口號。

(二)通信過程

connect 建立TCP連接

準備Modbus報文

使用send命令發(fā)送報文

在同一連接下等待應答

使用recv命令讀取報文,完成一次數(shù)據(jù)交換

通信任務結束時,關閉TCP連接

E仿真軟件

Modbus poll 和Modbus slave是一組Modbus仿真軟件,可以實現(xiàn)Modbus RTU、TCP、串口仿真等。

仿真軟件網(wǎng)址:https://modbustools.com/download.html

在ModbusTCP中,Modbus poll 作為客戶端請求數(shù)據(jù),Modbus slave 作為服務器端處理請求。

使用c語言編寫客戶端連接Modbus slave時,注意數(shù)據(jù)格式,一條指令一次性發(fā)出,否則連接會出錯。

使用軟件時,需要指定功能碼,在setup->slave definition或者poll definition中進行設置。
– slave ID:從站編號(事務標識符)
– function:功能碼,0x01對應線圈操作,0x02對應離散量操作,0x03對應保持寄存器操作,0x04對應輸入寄存器操作
– address:開始地址
– quantity:寄存器/線圈/離散量 的數(shù)量

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

    關注

    31

    文章

    5424

    瀏覽量

    123502
  • MODBUS
    +關注

    關注

    28

    文章

    2048

    瀏覽量

    79037
  • 服務器
    +關注

    關注

    13

    文章

    9717

    瀏覽量

    87361

原文標題:【實用篇】ModbusTCP協(xié)議詳解

文章出處:【微信號:gkongbbs,微信公眾號:工控論壇】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    協(xié)議交鋒,ModbusTCP轉Ethercat網(wǎng)關工業(yè)自動化也要互通有無

    協(xié)議交鋒,ModbusTCP轉Ethercat網(wǎng)關工業(yè)自動化也要互通有無
    的頭像 發(fā)表于 06-10 13:25 ?59次閱讀
    <b class='flag-5'>協(xié)議</b>交鋒,<b class='flag-5'>ModbusTCP</b>轉Ethercat網(wǎng)關工業(yè)自動化也要互通有無

    火力全開,ModbusTCP/RTU轉ethernet ip協(xié)議網(wǎng)關的不同應用大揭秘

    火力全開,ModbusTCP/RTU轉ethernet ip協(xié)議網(wǎng)關的不同應用揭秘
    的頭像 發(fā)表于 05-22 10:22 ?111次閱讀
    火力全開,<b class='flag-5'>ModbusTCP</b>/RTU轉ethernet ip<b class='flag-5'>協(xié)議</b>網(wǎng)關的不同應用大揭秘

    ModbusTCP轉Profinet:恒壓供水的神器

    在現(xiàn)代工業(yè)自動化系統(tǒng)中,ModbusTCP和Profinet是兩種常用的通信協(xié)議ModbusTCP以其簡單、開放的特點被廣泛應用于許多設備中,而Profinet則是工業(yè)以太網(wǎng)領域的重要標準之一
    的頭像 發(fā)表于 12-26 17:00 ?539次閱讀
    <b class='flag-5'>ModbusTCP</b>轉Profinet:恒壓供水的神器

    ModbusTCP轉Profinet:工業(yè)通信的利器

    在現(xiàn)代工業(yè)自動化領域,不同設備和系統(tǒng)之間的通信是確保高效協(xié)同工作的關鍵。ModbusTCP與Profinet是兩種廣泛應用的通信協(xié)議,它們各自在工業(yè)通訊中扮演著重要的角色。本文將詳細探討一個特殊
    的頭像 發(fā)表于 12-26 16:00 ?498次閱讀
    <b class='flag-5'>ModbusTCP</b>轉Profinet:工業(yè)通信的利器

    ModbusTCP轉Profinet:恒壓供水的神器

    在現(xiàn)代工業(yè)自動化系統(tǒng)中,ModbusTCP和Profinet是兩種常用的通信協(xié)議ModbusTCP以其簡單、開放的特點被廣泛應用于許多設備中,而Profinet則是工業(yè)以太網(wǎng)領域的重要標準之一
    的頭像 發(fā)表于 12-26 14:08 ?397次閱讀
    <b class='flag-5'>ModbusTCP</b>轉Profinet:恒壓供水的神器

    ModbusTCP 與 Profibus DP 雙向轉換全解析

    Profibus dp和ModbusTCP均為工業(yè)通信協(xié)議ModbusTCP為串行通訊協(xié)議,已成為工業(yè)領域通訊協(xié)議的業(yè)界標準。Modbus
    的頭像 發(fā)表于 12-02 09:18 ?1168次閱讀
    <b class='flag-5'>ModbusTCP</b> 與 Profibus DP 雙向轉換全解析

    ProfibusDP主站轉ModbusTCP協(xié)議轉換網(wǎng)關技術需求干貨講解

    ProfibusDP主站轉ModbusTCP協(xié)議轉換網(wǎng)關的技術參數(shù)● 支持的波特率:9.6Kbps~12Mbps● 供電:24VDC(±5%),最大功率3.5W● 工作環(huán)境溫度:-25~55℃,濕度
    發(fā)表于 11-13 15:23

    ModbusTCP轉Profinet協(xié)議轉化網(wǎng)關功能與配置詳解

    怎么樣讓ModbusTCP和Profinet通訊連接起來?這幾天有幾個客戶朋友咨詢到這個問題,作者在這里統(tǒng)一為大家回復一下。想要解決這個問題其實也非常簡單,只需要用到一個設備,名為YC-TCP-PN
    的頭像 發(fā)表于 07-30 11:21 ?564次閱讀
    <b class='flag-5'>ModbusTCP</b>轉Profinet<b class='flag-5'>協(xié)議</b>轉化網(wǎng)關功能與配置<b class='flag-5'>詳解</b>

    Profinet轉ModbusTCP網(wǎng)關模塊的配置與應用詳解

    Profinet轉ModbusTCP網(wǎng)關模塊(XD-ETHPN20)是一種常見的工業(yè)通信設備,廣泛應用于現(xiàn)代工業(yè)自動化系統(tǒng)中。通過使用Profinet轉Modbus TCP網(wǎng)關模塊
    的頭像 發(fā)表于 07-26 09:51 ?826次閱讀
    Profinet轉<b class='flag-5'>ModbusTCP</b>網(wǎng)關模塊的配置與應用<b class='flag-5'>詳解</b>

    EtherNet IP轉ModbusTCP協(xié)議網(wǎng)關功能與配置詳解

    怎么樣才能把EtherNet/IP和ModbusTCP網(wǎng)絡連接起來呢? 這幾天有幾個朋友問到了這個問題,作者在這里統(tǒng)一為大家詳細說明一下。其實有一個設備可以很輕松地解決這個問題,名為
    的頭像 發(fā)表于 07-25 16:18 ?695次閱讀
    EtherNet IP轉<b class='flag-5'>ModbusTCP</b><b class='flag-5'>協(xié)議</b>網(wǎng)關功能與配置<b class='flag-5'>詳解</b>

    Profinet轉ModbusTCP協(xié)議網(wǎng)關協(xié)議經(jīng)典通訊案例

    怎么樣把Profinet與ModbusTCP連接起來呢?最近這幾天有很多朋友想要了解這個問題,在這里統(tǒng)一為大家詳細說明一下。其實有一個設備可以很輕松地解決這個問題,名為YC-PNM-TCP,下面
    的頭像 發(fā)表于 07-23 15:05 ?522次閱讀
    Profinet轉<b class='flag-5'>ModbusTCP</b><b class='flag-5'>協(xié)議</b>網(wǎng)關<b class='flag-5'>協(xié)議</b>經(jīng)典通訊案例

    ModbusTCP轉ProfibusDP協(xié)議轉化網(wǎng)關通訊解決方案

    ModbusTCP轉ProfibusDP協(xié)議轉化網(wǎng)關 二,設備拓撲圖 ModbusTCP轉ProfibusDP協(xié)議轉化網(wǎng)關 三,配置工程的網(wǎng)絡拓撲圖如下
    的頭像 發(fā)表于 07-23 10:30 ?388次閱讀
    <b class='flag-5'>ModbusTCP</b>轉ProfibusDP<b class='flag-5'>協(xié)議</b>轉化網(wǎng)關通訊解決方案

    Profibus DP轉ModbusTCP網(wǎng)關模塊連馬保與上位機通訊

    Profibus_DP轉ModbusTCP網(wǎng)關模塊(XD-ETHPB20)實現(xiàn)Profibus與ModbusTCP協(xié)議轉換,支持無縫轉換、多種網(wǎng)絡配置和Web配置,可以將Profibus網(wǎng)絡中
    的頭像 發(fā)表于 07-10 15:59 ?1476次閱讀
    Profibus DP轉<b class='flag-5'>ModbusTCP</b>網(wǎng)關模塊連馬保與上位機通訊

    Profibus轉ModbusTCP網(wǎng)關模塊實現(xiàn)Profibus_DP向ModbusTCP轉換

    Profibus和ModbusTCP是工業(yè)通信協(xié)議,利用Profibus轉ModbusTCP網(wǎng)關模塊(XD-ETHPBM20)可實現(xiàn)協(xié)議轉換,優(yōu)化能源管理,提升樓宇智能化水平。本文介紹
    的頭像 發(fā)表于 07-09 16:21 ?639次閱讀
    Profibus轉<b class='flag-5'>ModbusTCP</b>網(wǎng)關模塊實現(xiàn)Profibus_DP向<b class='flag-5'>ModbusTCP</b>轉換

    LwIP協(xié)議棧源碼詳解—TCP/IP協(xié)議的實現(xiàn)

    電子發(fā)燒友網(wǎng)站提供《LwIP協(xié)議棧源碼詳解—TCP/IP協(xié)議的實現(xiàn).pdf》資料免費下載
    發(fā)表于 07-03 11:22 ?3次下載
    主站蜘蛛池模板: 欧美破处视频在线 | 天堂资源在线www中文 | 波多野结衣在线视频观看 | 手机看片精品国产福利盒子 | 婷婷色在线视频 | 美女免费视频一区二区三区 | 黄色天天影视 | 欧美艹逼视频 | 欧美在线高清视频 | 69pao强力打造在线 | 亚洲大胆精品337p色 | 午夜在线播放 | 色综合久久综合欧美综合网 | 一级欧美视频 | 手机看片午夜 | 国产一级毛片午夜 | 日日摸人人拍人人澡 | 黄色工厂在线播放 | 国产永久免费爽视频在线 | 在线精品国产三级 | 亚洲人成网站在线观看妞妞网 | 手机看片国产高清 | xxxx日本xx | 乱人伦小说短篇 | 国产三级日本三级在线播放 | 天堂在线中文无弹窗全文阅读 | 天堂中文在线免费观看 | 日本黄色短视频 | 中文字幕成人乱码在线电影 | 国产精品15p | 好紧好爽的午夜寂寞视频 | 在线观看免费午夜大片 | 国产精品嫩草影院午夜 | 久久久久久久国产免费看 | 男人j进入女人j视频大全 | 色宅男午夜电影在线观看 | 欧美色香蕉 | 午夜免费观看_视频在线观看 | 色丁香在线视频 | 成人国产三级精品 | 仓本c仔国产精品 |