日韩欧美视频第二区,秋霞成人午夜鲁丝一区二区三区,美女日批视频在线观看,av在线不卡免费

電子開發網

電子開發網電子設計 | 電子開發網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 個字
[ 查看全部 ] 網友評論
關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢
主站蜘蛛池模板: 汝城县| 西乌| 偏关县| 巫溪县| 罗甸县| 托克逊县| 连山| 嫩江县| 桦甸市| 白水县| 奉节县| 乌拉特前旗| 汉中市| 淳安县| 海晏县| 南通市| 巴南区| 开鲁县| 武陟县| 仁布县| 福鼎市| 台前县| 太康县| 平武县| 高州市| 开封市| 黄山市| 铜山县| 交城县| 开鲁县| 丹凤县| 茂名市| 南安市| 赞皇县| 永宁县| 句容市| 青海省| 遂川县| 富平县| 吉林市| 贞丰县|