北京華水儀表系統有限公司

可信賴的水計量解決方案合作伙伴

超聲波流量計RS485系統集成指南

瀏覽數:651

UPM系列超聲水表MODBUSRTU)通訊協議

表1 Modbus RTU通訊設置

串行通訊接口設置

波特率

默認9600bps

數據位

8

停止位

1

校驗位

默認無校驗(無校驗、奇校驗、偶校驗可選)

傳輸模式

Modbus RTU

設備地址

00HFEH00H為廣播地址)

功能代碼

讀數據03H、寫數據06H

寄存器有效地址范圍

0000H0012H(可以一條指令度多個寄存器的內容)

表2 寄存器分配列表

數據內容

寄存器地址

長度

數據類型

單位

瞬時流量

0000H-0001H

4

浮點型

M3/h

累計流量整數部分

0002H-0003H

4

長整型

M3

累計流量小數部分

0004H-0005H

4

浮點型

M3

正向流量整數部分

0006H-0007H

4

長整型

M3

正向流量小數部分

0008H-0009H

4

浮點型

M3

反向流量整數部分

000AH-000BH

4

長整型

M3

反向流量小數部分

000CH-000DH

4

浮點型

M3

儀表通訊地址

000EH

2

字符型

--

儀表日期時間

000FH-0011H

6

hex

--

儀表診斷信息

0012H

2

字符型

--

表3  儀表診斷信息代碼表

00

正常

Bit3

電量不足

Bit0

過載

Bit4

空管

Bit1

泄漏

Bit5

氣泡

Bit2

反裝

Bit6

通訊喚醒


例:

1、讀取設備通訊地址(即設備號),即寄存器地址為000EH,命令如下:

00          03                000E          00 01        E4 18

設備號   功能碼      寄存器地址   寄存器長度   校驗結果

其中設備號00H 為廣播地址,讀取儀表信息的時候設備號可以為該儀表的設備好,也可以為廣播地址。A4 19是CRC校驗結果,是按照CRC-16(BISYNCH,多項式是x16+x15+x2+1屏蔽字為A001H)循環冗余算法得出的。如有疑問請參照MODBUS通訊協議進一步了解算法。

儀表返回數據:

01              03              02             00 01           79 84

設備號   功能碼   數據字節數  設備號     校驗結果

儀表的通訊地址,即設備號為01H。

2、設置儀表設備通訊地址(即設備號),即寄存器地址為000EH,命令如下:

00                        06                00 0E              00 01         28 18

當前設備號   功能碼   寄存器地址    預設設備號  校驗結果

儀表返回數據:

01               06              02         00 01            7948

設置后的設備號  功能碼   數據字節數     設備號      校驗結果

儀表的通訊地址,即設備號為01H。

3、讀取1號設備的瞬時流量,即寄存器地址為0000H,命令如下:

01             03         00 00          00 02       C4 0B

設備號  功能碼   寄存器地址  寄存器長度  校驗結果

儀表返回數據:

01             03             04             E6B6 46 40      1F 0D

設備號  功能碼 數據字節數浮點型數據 校驗結果

所以瞬時流量為12345.678 m3/h(12345.678四字節16進制表示為46 40 E6 B6)。

4、讀取1號設備的累計流量整數部分,即寄存器地址為0002H,命令如下:

01             03        00 02         00 02       65CB

設備號  功能碼   寄存器地址  寄存器長度  校驗結果

儀表返回數據:

01          03              04                 E2 40 00 01       0C 5F

設備號   功能碼  數據字節數       長整型數據    校驗結果

則累計流量為123456 m3(123456四字節進制表示為00 01 E2 40)

5、讀取1號設備的累計流量小數部分,即寄存器地址為0004H,命令如下:

01             03          00 04         00 02       85 CA

設備號 功能碼   寄存器地址  寄存器長度  校驗結果

儀表返回數據:

01          03              04                  FBE7 3F 49       13 98

設備號  功能碼     數據字節數      浮點型數據     校驗結果

則累計流量為0.789 m3(123456.789四字節16進制表示為FB E7 3F 49)

6、讀取1號設備的日期時間,即寄存器地址為000AH,命令如下:

01             03           00 0F            00 03      35 C8

設備號  功能碼   寄存器地址  寄存器長度  校驗結果

儀表返回數據:

01             03             06                       0E 01 0A 0B 12 30            6335

設備號  功能碼  數據字節數         16進制數據        校驗結果

儀表日期時間為2015年01月10日11時18分48秒

7、讀取儀表診斷信息,即寄存器地址為000CH,命令如下:

01             03         00 12          00 01      24 0F

設備號  功能碼   寄存器地址  寄存器長度  校驗結果

儀表返回數據:

01             03            02              00 63          F86D

設備號  功能碼 數據字節數儀表信息 校驗結果

儀表信息為63h。轉換為二進制為0110 0011。則對應的:

Bit0---1    儀表出現過載,流量超過水表Q4值

Bit1---1    儀表檢測到泄漏

Bit2---0    儀表無反裝

Bit3---0    儀表無電量不足現象

Bit4---0    儀表無空管現象

Bit5---1    儀表檢測到有氣泡

Bit6---1    儀表對外通訊被喚醒。

一條指令讀取多個寄存器信息示例:

8、讀取1號設備的累計流量整數部分和小數,即起始寄存器地址為0002H,長度為 00 04。命令如下:

01             03          00 02          00 04     E5C9

設備號  功能碼   寄存器地址  寄存器長度  校驗結果

儀表返回數據:

01         03           08             E2 40 00 01  FB E7 3F 49    37 57

設備號  功能碼   數據字節數   長整型數據   浮點型數據   校驗結果

則累計流量為123456.789 m3。