技術服務
Technical Services
Technical Services
超聲波液位計是一種常見的液位測量儀表,因其性價比高,非接觸性測量,安裝簡單便捷等特點廣泛被各生產企業選用。深圳優威儀表也有各種型號的超聲波液位計,其中總線型的有RS485型,協議層采用MODBUS-RTU通訊協議。
其MODBUS-RTU通訊協議格式如下:
設備地址 |
功能代碼 |
數據格式 |
CRC校驗L |
CRC校驗H |
8bit |
8bit |
N*8bit |
8bit |
8bit |
以讀取超聲波液位計的液位值為例:
|
字節1 |
字節2 |
字節3 |
字節4 |
字節5 |
字節6 |
字節7 |
字節8 |
發送 |
01 |
04 |
00 |
00 |
00 |
02 |
71 |
CB |
釋義 |
從機地址 |
功能碼讀命令 |
起始寄存器高字節 |
起始寄存器低字節 |
寄存器數量高字節 |
寄存器數量低字節 |
CRC低字節 |
CRC高字節 |
接收數據如下:
|
字節1 |
字節2 |
字節3 |
字節4 |
字節5 |
字節6 |
字節7 |
字節8 |
字節9 |
接收 |
01 |
04 |
04 |
41 |
1E |
00 |
00 |
EE |
66 |
釋義 |
從機地址 |
功能碼讀命令 |
返回數據長度 |
讀取的液位數據 |
CRC低字節 |
CRC高字節 |
其中讀取的液位數據類型為:IEEE754標準單精度浮點數。
IEEE754標準單精度浮點數:1位符號位+8位階碼+23位尾數的二進制組成,MODBUS-RTU傳輸時用四字節十六進制數表示。其轉換為十進制的過程如下(以接收的41 1E 00 00為例):
讀取的數據 |
41 |
1E |
00 |
00 |
||||
轉換為二進制 |
0100 |
0001 |
0001 |
1110 |
0000 |
0000 |
0000 |
0000 |
IEEE754單精度 |
0 |
100 0001 0 |
001 1110 0000 0000 0000 0000 |
|||||
+ |
130 |
1.001 1110 0000 0000 0000 0000 |
||||||
+ |
階碼=130-127=3 |
右移3(階碼)位 1001. 1110 0000 0000 0000 0000 |
||||||
十進制 |
|
液位整數部分:(1001)B=9D 液位小數位部分: (.11100000)B=1*1/2+1*1/4+1*1/8+0*1/16=0.875 D 液位值:9+0.875=9.875米 |
||||||