海水養(yǎng)殖ORP水質傳感器
附錄 數據通訊
- 數據格式
Modbus通信默認的數據格式為: 9600、n、8、1(波特率9600bps,1個起始位,8個數據位,無校驗,1個停止位)。
波特率等參數可以定制。
- 信息幀格式
- 讀數據指令幀
06 03 xx xx xx xx xx xx
地址 功能碼 寄存器地址 寄存器數量 CRC校驗碼(低字節(jié)在前)
- 讀數據應答幀
06 03 xx xx……xx xx xx
地址 功能碼 字節(jié)數 應答數據 CRC校驗碼(低字節(jié)在前)
- 寫數據指令幀
06 06 xx xx xx xx xx xx
地址 功能碼 寄存器地址 寫入數據 CRC校驗碼(低字節(jié)在前)
- 寫數據應答幀(同寫數據指令幀)
06 06 xx xx xx xx xx xx
地址 功能碼 寄存器地址 寫入數據 CRC校驗碼(低字節(jié)在前)
- 寄存器地址
寄存器地址 | 名稱 | 說明 | 寄存器個數 | 訪問方式 |
40001 (0x0000) | 測量值 | 2個雙字節(jié)整數,分別為測量值、測量值小數位數。 | 2(4字節(jié)) | 讀 |
44097 (0x1000) | 零點校準 | 在標準溶液中校準,寫入數據為標準溶液實際值。 | 1(2字節(jié)) | 寫 |
44103 (0x1006) | 零點校準值 | 讀出數據為零點偏移量。 | 1(2字節(jié)) | 讀 |
48195 (0x2002) | 傳感器地址 | 默認為6,寫入數據范圍1-127。 | 1(2字節(jié)) | 寫/讀 |
48225 (0x2020) | 恢復出廠 | 校準值恢復出廠設置,寫入數據為0。 | 1(2字節(jié)) | 寫 |
注意:
- 寄存器地址為根據Modbus協(xié)議定義的帶寄存器類型的寄存器起始地址(括號中的16進制表示的實際的寄存器起始地址)。
- 更改傳感器地址時,返回指令中的傳感器地址為更改后地點。
- 讀取數據時返回測量值的數據定義:
xx xx xx xx
2字節(jié)測量值 2字節(jié)測量值小數位數
數據類型默認為:雙字節(jié)整型,高字節(jié)在前;其他如浮點數類型可選。
- 命令示例
- 設置設備ID地址
作用:設置電極的Modbus設備地址;
將設備地址06改為01,范例如下
請求幀:06 06 20 02 00 01 E3 BD
應答幀:01 06 20 02 00 01 E2 0A
- 開始測量指令
作用:獲取測量探頭的ORP值,ORP的值為mV。
請求幀:06 03 00 00 00 02 C5 BC
應答幀:06 03 04 00 78 00 00 B6 64
讀數示例:
ORP值 |
00 78 00 00 |
如,ORP值: 00 78 表示十六進制讀數ORP值,00 00 表示ORP數值不帶小數點,無溫度值,轉換成十進制數值為120。
- 校準指令
ORP變送器只需一點校準,在使用另一種校準液校準前,必須使用后一種校準液清洗探頭,否則將引起較大的測試誤差。
在配制好的86mV或256mV標準溶液中,輸入相應校準指令。
標準液為86mV:
請求幀:06 06 10 00 00 56 0C 83;
應答幀:06 06 10 00 00 56 0C 83;
標準液為256mV:
請求幀:06 06 10 00 01 00 8D 2D;
應答幀:06 06 10 00 01 00 8D 2D。
注意:ORP值有負值,如-40mV其計算方法為:
-{FFFF-FFD7軟件測試值)}=-28;十進制即為-40mV。
- 錯誤響應
如果傳感器不能正確執(zhí)行上位機命令,則會返回如下格式信息:
定義 | 地址 | 功能碼 | CODE | CRC校驗 |
數據 | ADDR | COM+80H | xx | CRC 16 |
字節(jié)數 | 1 | 1 | 1 | 2 |
- CODE:01 – 功能碼錯
03 – 數據錯
- COM:接收到的功能碼
海水養(yǎng)殖ORP水質傳感器