手機訪問更快捷
更多流量 更易傳播
隨時掌握行業(yè)動態(tài)
網(wǎng)絡課堂 行業(yè)直播
流速儀通訊協(xié)議
一協(xié)議說明
1、本機采用主從握手模式
波特率 9600 數(shù)據(jù) 8位 無校驗 停止位 1
主機采集液位數(shù)據(jù)格式如下:
01 03 00 00 00 02 xx xx
從機地址 功能碼 寄存器起始地址 讀取寄存器個數(shù) CRC
從機回碼數(shù)據(jù)格式如下:
01 03 04 9D B2 3E 0F xx xx
從機地址 功能碼 字節(jié)數(shù) 數(shù)據(jù) CRC
從機地址——默認 01 十六進制 支持主機修改
如:9D B2 3E 0F ——對應十進制為0.140米
2、寄存器表
寄存器地址 | 寄存器個數(shù) | 變量名稱 | 單位 | 數(shù)據(jù)類型 |
01 02 | 02 | 液位 | 米 | IEEE754標準單精度浮點數(shù) |
03 04 | 02 | 流速 | 米 | IEEE754標準單精度浮點數(shù) |
05 06 | 02 | 流量 | 立方米/秒 | IEEE754標準單精度浮點數(shù) |
連續(xù)讀取6個寄存器
01 03 00 00 00 06 C5 C8
01 03 0C E1 00 40 C0 C1 01 44 00 00 00 00 00 6C 84
液位 流速 流量
3、數(shù)據(jù)格式
IEEE754標準單精度浮點數(shù)由1位符號位+8位階碼+23位尾數(shù)組成,用四位十六進制數(shù)表示。如124.75用十六進制表示為42 F9 80 00。計算方法是:
124.75換算成二進制:1111100.11
用科學計數(shù)法表示為:1.11110011*2^6
階碼6+127=133,并用0表示正,1表示負。因此124.75的二進制數(shù)為:
0 10000101 11110011000000000000000B=42F98000H
4、CRC循環(huán)冗余校驗
循環(huán)冗余校驗CRC區(qū)為2字節(jié),含一個16位二進制數(shù)據(jù)。由發(fā)送設備計算CRC值,并把計算值附在信息中,接收設備在接收信息時,重新計算CRC值,并把計算值與接收的在CRC區(qū)中實際值進行比較,若兩者不相同,則產(chǎn)生一個錯誤。
CRC開始時先把寄存器的16位全部置成“1”,然后把相鄰2個8位字節(jié)的數(shù)據(jù)放入當前寄存器中,只有每個字符的8位數(shù)據(jù)用作產(chǎn)生CRC,起始位,停止位和奇偶校驗位不加到CRC中。
產(chǎn)生CRC期間,每8位數(shù)據(jù)與寄存器中值進行異或運算,其結果向右移一位(向LSB方向),并用“0”填入MSB,檢測LSB,若LSB為“1”則與預置的固定值異或,若LSB為“0”則不作異或運算。
重復上述處過程,直至移位8次,完成第8次移位后,下一個8位數(shù)據(jù),與該寄存器的當前值異或,在所有信息處理完后,寄存器中的Z終值為CRC值。產(chǎn)生CRC的過程:
1、把16位CRC寄存器置成FFFFH.
2、*個8位數(shù)據(jù)與CRC寄存器低8位進行異或運算,把結果放入CRC寄存器。
3、CRC寄存器向右移一位,MSB填零,檢查LSB.
4、(若LSB為0):重復3,再右移一位。
(若LSB為1):CRC寄存器與Aool H 進行異或運算
5、重復3和4直至完成8次移位,完成8位字節(jié)的處理。
6、重復2至5步,處理下一個8位數(shù)據(jù),直至全部字節(jié)處理完畢。
7、CRC寄存器的Z終值為CRC值。
8、把CRC值放入信息時,高8位和低8位應分開放置。
發(fā)送信息中的16 位CRC值時,先送低8位,后送高8位。
免責聲明
客服熱線: 15267989561
加盟熱線: 15267989561
媒體合作: 0571-87759945
投訴熱線: 0571-87759942
下載儀表站APP
Ybzhan手機版
Ybzhan公眾號
Ybzhan小程序