詳細(xì)介紹
海水養(yǎng)殖葉綠素水質(zhì)傳感器
數(shù)據(jù)通信
- 數(shù)據(jù)格式
Modbus通信默認(rèn)的數(shù)據(jù)格式為:9600、n、8、1(波特率9600bps,1個起始位,8個數(shù)據(jù)位,無校驗(yàn),1個停止位)。
數(shù)據(jù)類型為:浮點(diǎn)數(shù)型式
- 信息幀格式(xx代表一個字節(jié))
- 讀數(shù)據(jù)指令幀:
01 03 xx xx xx xx xx xx
地址 功能碼 寄存器起始地址 寄存器數(shù)量 CRC校驗(yàn)碼(低字節(jié)在前)
- 讀數(shù)據(jù)應(yīng)答幀:
01 03 xx xx……xx xx xx
地址 功能碼 字節(jié)數(shù) 應(yīng)答數(shù)據(jù) CRC校驗(yàn)碼(低字節(jié)在前)
- 寫數(shù)據(jù)指令幀:
01 10 xx xx xx xx xx xx....xx xx xx
地址 功能碼 寄存器地址 寄存器數(shù)量 字節(jié)數(shù) 寫入數(shù)據(jù) CRC校驗(yàn)碼(低字節(jié)在前)
- 寫數(shù)據(jù)應(yīng)答幀:
01 10 xx xx xx xx xx xx
地址 功能碼 寄存器地址 寄存器數(shù)量 CRC校驗(yàn)碼(低字節(jié)在前)
- 寄存器地址
寄存器地址 | 名稱 | 說明 | 寄存器個數(shù) | 訪問方式 |
0x2500 | 開機(jī)指令 | 讓探頭連續(xù)發(fā)光。 | 0(0字節(jié)) | 讀 |
0x2600 | 測量值+溫度 | 獲取探頭的溫度和葉綠素值(小端存儲模式,浮點(diǎn)數(shù))。 | 4(8字節(jié)) | 讀 |
0x1100 | 用戶校準(zhǔn)參數(shù) | 獲取兩個校準(zhǔn)參數(shù)K、B。 設(shè)置兩個校準(zhǔn)參數(shù)K、B。(K、B:小端存儲模式,浮點(diǎn)數(shù)) | 4(8字節(jié)) | 讀/寫 |
0x3100 | 開啟刷子 | 讓刷子開始轉(zhuǎn)動,建議剛上電開啟一次刷子(默認(rèn)關(guān)閉)。 | 0(0字節(jié)) | 讀 |
0x3200 | 刷子轉(zhuǎn)動間隔 | 獲取刷子的轉(zhuǎn)動間隔,默認(rèn)為30min轉(zhuǎn)一次。 設(shè)置刷子的轉(zhuǎn)動間隔,單位為min。 | 1(2字節(jié)) | 讀/寫 |
0x2E00 | 停止測量 | 當(dāng)數(shù)值穩(wěn)定后可以停止測量。 | 0(0字節(jié)) | 讀 |
0x3000 | 傳感器地址 | 默認(rèn)為1,寫入數(shù)據(jù)范圍1-247。 | 1(2字節(jié)) | 寫 |
- 命令示例
- 設(shè)置設(shè)備ID地址:
作用:設(shè)置電極的Modbus設(shè)備地址;
將設(shè)備地址01改為14,范例如下
請求幀:01 10 30 00 00 01 02 14 00 99 53
應(yīng)答幀:01 10 30 00 00 01 0E C9
- 開機(jī)指令:
作用:讓探頭連續(xù)發(fā)光,開始葉綠素測量。
請求幀:01 03 25 00 00 00 4E C6
應(yīng)答幀:01 03 00 20 F0
- 開始測量指令:
作用:獲取測量探頭的溫度和葉綠素值,溫度的單位為攝氏度,葉綠素的單位為ug/L或0~100RFU。
請求幀:01 03 26 00 00 04 4F 41
應(yīng)答幀:01 03 08 00 00 8D 41 00 00 8D 41 12 65
讀數(shù)示例:
溫度值 | 葉綠素值 |
00 00 8D 41 | 00 00 8D 41 |
如:溫度值和葉綠素值,小端儲存模式,浮點(diǎn)數(shù)。此時溫度為17.625℃,葉綠素為17.625ug/L。
- 校準(zhǔn)指令:
作用:設(shè)置兩個校準(zhǔn)參數(shù)K、B;一般默認(rèn)值為:K=1,B=0。
請求幀:01 10 11 00 00 04 08 00 00 80 3F 00 00 00 00 81 AE
應(yīng)答幀:01 10 11 00 00 04 C4 F6
葉綠素采用一點(diǎn)或兩點(diǎn)校準(zhǔn)。校準(zhǔn)溶液為染料羅丹明WT。然而,必須強(qiáng)調(diào)的是:用染料做為校準(zhǔn)物并不能真正提高傳感器的準(zhǔn)確度。
一點(diǎn)校準(zhǔn):將傳感器置于200ug/L的標(biāo)準(zhǔn)液中,讀取數(shù)值,記為Y。
由公式K=200/Y,計(jì)算出K值,B=0。根據(jù)新計(jì)算出的K、B值,發(fā)送指令。
若再次進(jìn)行校準(zhǔn),則先恢復(fù)K=1,B=0,再重復(fù)以上步驟。
兩點(diǎn)校準(zhǔn):將傳感器置于去離子水中,讀取數(shù)值,記為X。將傳感器置于200ug/L標(biāo)準(zhǔn)液中,讀取數(shù)值,記為Y。
由公式K=200/(Y-X),B=-KX,計(jì)算K、B值。根據(jù)新計(jì)算出的K、B值,發(fā)送指令。
若再次進(jìn)行校準(zhǔn),則先恢復(fù)K=1,B=0,再重復(fù)以上步驟。
- 開啟刷子
作用:讓刷子開始轉(zhuǎn)動,建議剛上電開啟一次刷子(默認(rèn)關(guān)閉)。
請求幀:01 10 31 00 00 00 00 74 94
應(yīng)答幀:01 10 31 00 00 00 CE F5
- 設(shè)置刷子轉(zhuǎn)動間隔
作用:設(shè)置刷子的轉(zhuǎn)動間隔,單位為min。
下面以從設(shè)備地址0x01,設(shè)置時間為10min為例說明開啟刷子命令的請求幀和應(yīng)答幀。
請求幀:01 10 32 00 00 01 02 0A 00 B3 33
應(yīng)答幀:01 10 32 00 00 01 0F 71
- 獲取刷子轉(zhuǎn)動間隔
作用:獲取刷子的轉(zhuǎn)動間隔,默認(rèn)為30min轉(zhuǎn)一次
請求幀:01 03 32 00 00 01 8A B2
應(yīng)答幀:01 03 02 1E 00 B1 E4
- 停止指令:
作用:當(dāng)測量穩(wěn)定后可停止測量
請求幀:01 03 2E 00 00 00 4C E2
應(yīng)答幀:01 03 00 20 F0
海水養(yǎng)殖葉綠素水質(zhì)傳感器