chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

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

工控論壇 ? 來(lái)源:工控論壇 ? 2024-01-14 11:13 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

概述

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

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

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

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

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

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

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

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

(3)說(shuō)明更詳細(xì)的表:

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

BPDU詳細(xì)結(jié)構(gòu)

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

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

響應(yīng):MBAP 功能碼 數(shù)據(jù)長(zhǎng)度 數(shù)據(jù)(一個(gè)地址的數(shù)據(jù)為1位)

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

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

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

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

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

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

回:寫(xiě)入成功
00 01 00 00 00 06 01 05 00 03 FF 00

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

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

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

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

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

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

如:從地址0x0000開(kāi)始讀0x0012個(gè)離散量輸入
00 01 00 00 00 06 01 02 00 00 00 12

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

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

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

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

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

回:數(shù)據(jù)長(zhǎng)度為0x0A,第一個(gè)寄存器的數(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:讀保持寄存器:從遠(yuǎn)程設(shè)備中讀保持寄存器連續(xù)塊的內(nèi)容。

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

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

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

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

(7)0x06:寫(xiě)單個(gè)保持寄存器:在一個(gè)遠(yuǎn)程設(shè)備中寫(xiě)一個(gè)保持寄存器。

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

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

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

回:寫(xiě)入成功
00 01 00 00 00 06 01 06 00 00 00 0A

(8)0x10:寫(xiě)多個(gè)保持寄存器:在一個(gè)遠(yuǎn)程設(shè)備中寫(xiě)連續(xù)寄存器塊(1~123個(gè)寄存器)。

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

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

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

回:寫(xiě)入成功
00 01 00 00 00 06 01 10 00 00 00 01

CModbus TCP示例報(bào)文

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

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設(shè)備可分為主站(poll)和從站(slave)。主站只有一個(gè),從站有多個(gè),主站向各從站發(fā)送請(qǐng)求幀,從站給予響應(yīng)。在使用TCP通信時(shí),主站為client端,主動(dòng)建立連接;從站為server端,等待連接。

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

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

從站異常響應(yīng):異常功能碼+異常碼,其中異常功能碼即將請(qǐng)求功能碼的最高有效位置1,異常碼指示差錯(cuò)類(lèi)型

需要超時(shí)管理機(jī)制,避免無(wú)期限的等待可能不出現(xiàn)的應(yīng)答

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

(二)通信過(guò)程

connect 建立TCP連接

準(zhǔn)備Modbus報(bào)文

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

在同一連接下等待應(yīng)答

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

通信任務(wù)結(jié)束時(shí),關(guān)閉TCP連接

E仿真軟件

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

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

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

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

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

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

    關(guān)注

    31

    文章

    5434

    瀏覽量

    124435
  • MODBUS
    +關(guān)注

    關(guān)注

    28

    文章

    2118

    瀏覽量

    79546
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    13

    文章

    9793

    瀏覽量

    87942

原文標(biāo)題:【實(shí)用篇】ModbusTCP協(xié)議詳解

文章出處:【微信號(hào):gkongbbs,微信公眾號(hào):工控論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    實(shí)現(xiàn)ModbusTCP轉(zhuǎn)Profinet網(wǎng)關(guān)協(xié)議轉(zhuǎn)換功能的網(wǎng)關(guān)設(shè)備

    ModbusTCP轉(zhuǎn)Profinet網(wǎng)關(guān)產(chǎn)品主要功能 ModbusTCP轉(zhuǎn)Profinet網(wǎng)關(guān)的核心功能為實(shí)現(xiàn)Profinet協(xié)議ModbusTCP
    的頭像 發(fā)表于 07-01 11:58 ?105次閱讀
    實(shí)現(xiàn)<b class='flag-5'>ModbusTCP</b>轉(zhuǎn)Profinet網(wǎng)關(guān)<b class='flag-5'>協(xié)議</b>轉(zhuǎn)換功能的網(wǎng)關(guān)設(shè)備

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

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

    火力全開(kāi),ModbusTCP/RTU轉(zhuǎn)ethernet ip協(xié)議網(wǎng)關(guān)的不同應(yīng)用大揭秘

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

    Profinet轉(zhuǎn)ModbusTCP網(wǎng)關(guān):工業(yè)升級(jí)利器

    在自動(dòng)化控制技術(shù)日益發(fā)展的今天,Profinet轉(zhuǎn)ModbusTCP這兩種協(xié)議在工業(yè)通信中扮演著重要的角色。ModbusTCP是一種基于以太網(wǎng)的串行通信協(xié)議,而Profinet則是基于
    的頭像 發(fā)表于 12-26 18:00 ?559次閱讀
    Profinet轉(zhuǎn)<b class='flag-5'>ModbusTCP</b>網(wǎng)關(guān):工業(yè)升級(jí)利器

    ModbusTCP轉(zhuǎn)Profinet:恒壓供水的神器

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

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

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

    ModbusTCP轉(zhuǎn)Profinet:恒壓供水的神器

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

    ModbusTCP 與 Profibus DP 雙向轉(zhuǎn)換全解析

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

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

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

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

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

    Profinet轉(zhuǎn)ModbusTCP網(wǎng)關(guān)模塊的配置與應(yīng)用詳解

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

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

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

    EtherCAT轉(zhuǎn)ModbusTCP IP協(xié)議轉(zhuǎn)化網(wǎng)關(guān)功能與配置詳解

    起來(lái)。 這款網(wǎng)關(guān)連接到EtherCAT總線中做為從站使用,連接到TCP/IP網(wǎng)絡(luò)中做為服務(wù)器或客戶端使用。 EtherCAT轉(zhuǎn)ModbusTCP/IP協(xié)議
    的頭像 發(fā)表于 07-25 14:26 ?785次閱讀
    EtherCAT轉(zhuǎn)<b class='flag-5'>ModbusTCP</b> IP<b class='flag-5'>協(xié)議</b>轉(zhuǎn)化網(wǎng)關(guān)功能與配置<b class='flag-5'>詳解</b>

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

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

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

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