渦街流量計通訊協議
(MODBUS-RTU)
1.RTU數據格式說明
1.1通訊模式
本儀表采用MODBUS RTU格式。
協議用于主從查詢模式進行數據通訊。
1.2數據格式
RTU模式中每個字節(11位)的格式為:
編碼系統為:8位二進制
每個字節的位:1個起始位、8個數據位(首先發送最低有效位)、1個奇偶校驗位、1個停止位
注:使用無校驗時要求2個停止位
波特率可選五種:1200、2400、4800、9600、19200
MODBUS報文
<--------------------------------------------------------------------------------------------------------------->
起始 |
地址 |
功能碼 |
數據 |
CRC校驗 |
結束 |
≥3.5字符 |
8 bit |
8 bit |
n*8 bit |
16 bit |
≥3.5字符 |
注:
(1) RTU模式中,時長至少為3.5個字符時間的空閑間隔將報文幀區分開。
(2) 必須以連續的字符流發送整個報文幀。
(3) 兩個字符之間的空閑間隔應不超過1.5個字符時間。
1.3 地址
協議中規定儀表的地址為“0-255”, “0”地址用于廣播,本協議不支持廣播,其余地址保留。
2.命令說明
2.1 本儀表使用了MODBUS協議中1條指令:
2.2數據格式
協議中的數據包括:浮點數
32單精度浮點數SINGLE格式為IEEE754,折合4字節,排列順序為3-4-1-2。
轉換為1-2-3-4順序后,由最高到最低位分別是第31、30、29、„„、0位 。
注:31位是符號位(S),1表示該數為負,0反之; 30-23位,一共8位是階碼;22-0位,一共23位是尾數。
命令03格式如下(讀寄存器命令):
MODBUS 請求
儀表地址 |
1 BYTE |
01-255 |
功能碼 |
1 BYTE |
0x03 |
起始地址 |
2 BYTE |
0-FFFF |
讀取數量 |
2 BYTE |
1-12 |
CRC低位 |
1 BYTE |
|
CRC高位 |
1 BYTE |
|
MODBUS 響應
儀表地址 |
1 BYTE |
01-255 |
功能碼 |
1 BYTE |
0x03 |
字節計數 |
1 BYTE |
N |
輸入狀態 |
N*2 BYTE |
|
CRC低位 |
1 BYTE |
|
CRC高位 |
1 BYTE |
|
MODBUS 錯誤
儀表地址 |
1 BYTE |
01-255 |
差錯碼 |
1 BYTE |
0x83 |
異常碼 |
2 BYTE |
01或02或03或04 |
CRC低位 |
1 BYTE |
|
CRC高位 |
1 BYTE |
|
舉例
請求 |
響應 |
域名稱 |
數據(HEX) |
域名稱 |
數據(HEX) |
儀表地址碼 |
01 |
儀表地址碼 |
01 |
功能碼 |
03 |
功能碼 |
03 |
起始地址高(字節) |
00 |
字節計數 |
06 |
起始地址低(字節) |
00 |
寄存器高(0001) |
02 |
讀取數據量高(字節) |
00 |
寄存器低(0001) |
13 |
起始地址低(字節) |
03 |
寄存器高(0002) |
00 |
|
寄存器低(0002) |
00 |
寄存器高(0003) |
00 |
寄存器低(0003) |
13 |
CRC校驗 |
校驗碼 |
CRC校驗 |
校驗碼 |
-
數據項定義
屬性 |
地址 |
寄存器長度 |
數據類型 |
說明 |
R |
40001-2 |
2 |
SINGLE |
介質溫度(℃) |
R |
40003-4 |
2 |
SINGLE |
介質壓力,同儀表設置 |
R |
40005-6 |
2 |
SINGLE |
傳感器頻率(Hz) |
R |
40007-8 |
2 |
SINGLE |
每小時瞬時流量,同儀表設置 |
R |
40009-10 |
2 |
SINGLE |
累計流量的百位以上,同儀表設置 |
R |
40011-12 |
2 |
SINGLE |
累計流量的百位以下,同儀表設置 |
注:累積流量=累積量百位以上x100+累積量百位以下
儀表默認設置:機號-1;波特率-9600;奇偶校驗-不校驗