此解決方案展示了如何創(chuàng)建農業(yè)土壤電導率傳感器節(jié)點。傳感器節(jié)點通過帶有 RS485 接口的傳感器測量土壤電導率、土壤溫度和土壤濕度。然后將此數(shù)據(jù)傳輸?shù)?LoRaWan? 服務器。
Figure 1: WisBlock土壤電導率監(jiān)測應用圖例#前期準備
#硬件
- WisBlock Base(本示例使用RAK5005-O)
- WisBlock Core(本示例使用RAK4631)
- WisBlock IO(本示例使用RAK5802)
- JXBS-3001-EC-RS-4(土壤電導率傳感器)
- LoRa天線(本示例使用CN470頻段)
- USB連接線
- 直流供電電源
- 網(wǎng)關(網(wǎng)關頻段需與傳感器模塊頻段一致,本示例使用RAK7268C網(wǎng)關,頻段CN470)
#軟件
- Arduino IDE
- RAK4630 BSP
- Arduino RS485 庫
- Arduino Modbus 庫
- SX126x-Arduino 庫
#硬件安裝
本章節(jié)為 WisBlock 傳感器節(jié)點組裝過程。
#LoRa天線安裝
1、將LoRa天線接口對準并放置在RAK4631模塊的LoRa天線接口搭接處。
Figure 2: 安裝LoRa天線2、輕輕按壓LoRa天線接口,將LoRa天線安裝到RAK4631上。
#WisBlock Core安裝
1、將RAK4631模塊上的連接器插頭對準RAK5005-O CUP插槽上的連接器插座。保持連接器間平行,將其輕放在插座連接器相應的搭接處。
Figure 3: 安裝RAK46312、平行按壓均勻施力,聽到扣合聲音后,扣壓完成。
3、完成后,使用螺釘將模塊固定在RAK5005-O上。
#WisBlock IO安裝
1、將RAK5802傳感器模塊上的連接器插頭對準RAK5005-O IO插槽上的連接器插座。保持連接器間平行,將其輕放在插座連接器相應的搭接處。
Figure 4: 傳感器節(jié)點組裝示意圖2、平行按壓均勻施力,聽到扣合聲音后,扣壓完成。
3、完成后,使用螺釘將模塊固定在RAK5005-O上。
#JXBS-3001-EC-RS-4 土壤電導率傳感器安裝
RAK5802采用快速壓接端子連接器以簡化和確保現(xiàn)場接線過程??焖賶航佣俗涌芍С?0 AWG~24 AWG線寬的電纜。通常剝線長度約為6~7 mm。
傳感器線纜連接到壓接端子示意圖:
Figure 5: 傳感器線纜連接到壓接端子示意圖具體操作步驟如下:
1、將RAK5802上壓接端子的彈簧頭按下并穩(wěn)穩(wěn)地保持住。
2、將JXBS-3001-EC-RS-4 土壤電導率傳感器的485 A(黃色線)和485 B(藍色線)剝線線纜頭分別插入到RAK5802對應的連接器孔中。插入后,松開彈簧頭,完成壓接過程。
Figure 6: 對應連接孔圖示3、將JXBS-3001-EC-RS-4 土壤電導率傳感器的正12-24 V(棕色線)和負12-24 V(黑色線)剝線線纜頭分別連接至直流供電電源正負極。
所有硬件安裝后,如下圖所示:
Figure 7: 土壤電導率傳感器組裝注意:
請將傳感器鋼針端避開石塊,按照所需測量深度拋開表層土,保持下面土壤原有松緊程度,緊握傳感器垂直插入土壤。插入時不要左右晃動,一個測點的小范圍內建議多次測量求平均值。
#軟件配置
本章節(jié)介紹WisBlock 傳感器模塊的軟件配置。
#Arduino IDE的下載
使用Arduino IDE對WisBlock進行編碼和編程。如果您還未安裝Arduino IDE,可在Arduino官網(wǎng)中下載。
警告:
如果您所使用的操作系統(tǒng)為Windows 10:
請勿從Microsoft應用商店中安裝Arduino IDE。請從Arduino官網(wǎng)中安裝原始的Arduino IDE。Microsoft應用商店中的Arduino應用在使用第三方板支持包時存在問題。
如下圖所示,可以看到Arduino IDE當前版本為V1.8.16。Windows、Linux和Mac OS X都有多個可用版本,選擇正確的Arduino IDE版本并下載。
Figure 8: Arduino IDE 版本示意圖#Arduino IDE的安裝
本示例為在Windows PC中安裝已下載的Arduino IDE。
1、單擊“I Agree”。
Figure 9: Arduino安裝許可協(xié)議2、單擊“Next”。
Figure 10: Arduino安裝選項3、單擊“Install”。
Figure 11: Arduino IDE安裝路徑Figure 12: Arduino IDE安裝中進度為100%后,Arduino IDE已成功安裝,單擊“Close”,退出安裝過程。
Figure 13: 成功安裝注意:
在Linux與Mac OS X中,沒有安裝過程。只是一個解壓過程,然后就能夠成功打開Arduino IDE 。
#Arduino IDE上的配置
Arduino IDE安裝成功后。需要對Arduino IDE進行一些配置以便后續(xù)對WisBlock組裝模塊進行相關配置。
1、打開Arduino IDE。
2、進入“文件 > 首選項”。
Figure 14: 首選項3、單擊圖中圖標,編輯“附加開發(fā)板管理器網(wǎng)址”,將WisBlock Core添加到Arduino板列表中。
Figure 15: 修改附加開發(fā)板管理器網(wǎng)址4、復制此URLhttps://raw.githubusercontent.com/RAKwireless/RAKwireless-Arduino-BSP-Index/main/package_rakwireless_index.json
并粘貼至下圖所示區(qū)域。如果已存在其他鏈接,將上述鏈接粘貼至新的一行。完成后,單擊“好”。
注意:
如果您使用的是Linux,需要通過“pip”安裝“adafruit-nrfutil”。
sudo pip3 install adafruit-nrfutil
或 pip3 install --user adafruit-nrfutil
5、重啟Arduino IDE。
6、在“工具”菜單中打開“開發(fā)板管理”。
Figure 17: 打開開發(fā)板管理7、如下圖所示,在搜索欄中鍵入“RAK”。將會顯示出可添加到Arduino板列表中的可用RAKwireless WisBlock Core。選擇以下板支持包以及相應的版本,并單擊“安裝”板支持包。
Figure 18: 安裝WisBlock Core#燒錄程序
1、將組裝的WisBlock傳感器模塊使用USB連接線連接到PC上。
2、在Arduino IDE中,根據(jù)下圖所示,選擇WisBlock Core RAK4631板。
Figure 19: 選擇WisBlock Core RAK4631板3、根據(jù)下圖所示,選擇示例項目。
Figure 20: 選擇示例代碼4、打開示例代碼后,雙擊圖中鏈接,安裝示例代碼中所需的代碼庫。
Figure 21: 安裝所需代碼庫5、修改示例代碼中的頻段區(qū)域,本示例使用的為CN470。
Figure 22: 修改頻段6、完成后,如下圖所示,選擇正確的串口并單擊圖中上傳圖標上傳代碼。
Figure 23: 選擇端口號連接到RAK網(wǎng)關內置服務器
#前提條件
- 傳感器模塊在LoRaWAN?網(wǎng)關覆蓋范圍之內。
- 已登錄商業(yè)網(wǎng)關。
- 已在網(wǎng)關Web頁面“LoRa Network > Network Settings”中設置網(wǎng)關"Mode"為“Network Server”,即表示使用網(wǎng)關內置服務器。
- 已在網(wǎng)關Web頁面“Channel Plan”上配置需要的"Region"。本示例中頻段為CN470,通道為80-87。
#創(chuàng)建應用并添加節(jié)點
1、在左側導航樹選擇“LoRa Network > Application”。
2、輸入應用名稱,選擇“Type 1 : Unified Application Key”,單擊“Add”。
Figure 26: 添加節(jié)點3、設置應用參數(shù)。
Figure 27: 設置應用參數(shù)其中“Application EUI”和“Application Key”參數(shù),從土壤電導率傳感器示例代碼中獲?。?/p>Figure 28: 獲取“Application EUI”和“Application Key”參數(shù)
注意:
- 示例中使用的是OTAA加網(wǎng)方式,所以選用的是"OTAA keys"相關參數(shù),根據(jù)實際選擇“OTAA”或“ABP”參數(shù)。
- Application EUI:在傳感器示例代碼中獲取,切記需要刪除各個數(shù)字前的“0x”以及“,”。
- Application Key:在傳感器示例代碼中獲取,切記需要刪除各個數(shù)字前的“0x”以及“,”。
4、單擊“Save & Apply”。
5、單擊新建應用后面的"Edit",進入應用編輯頁面。添加節(jié)點并設置如下參數(shù),然后單擊"Save & Apply"保存配置。
Figure 29: 添加節(jié)點其中“Device EUI”參數(shù),從土壤電導率傳感器示例代碼中獲?。?/p>Figure 30: 獲取設備EUI值
注意:
- 示例中使用的是OTAA加網(wǎng)方式,所以選用的是"OTAA keys"相關參數(shù),根據(jù)實際選擇“OTAA”或“ABP”參數(shù)。
- Device EUI:在傳感器示例代碼中獲取,切記需要刪除各個數(shù)字前的“0x”以及“,”。
6、查看傳感器模塊日志以及RAK網(wǎng)關接收的上行數(shù)據(jù)。
傳感器模塊日志:
- 網(wǎng)關內置服務器側設置完成后,傳感器模塊將自動加入網(wǎng)絡。
- 打開“工具>串口監(jiān)視器”,可以到如下信息,表示該WisBlock 傳感器模塊已入網(wǎng)成功,并開始上傳數(shù)據(jù)。
網(wǎng)關中上行實時數(shù)據(jù):
- 進入“LoRa Network > Application”。
- 單擊應用的“Edit”操作,進入應用設備界面。
- 單擊所選設備的設備名稱或設備EUI鏈接,進入設備詳情頁面。
- 單擊進入“Live Device Data”頁面,可查看實時上行數(shù)據(jù)。
#數(shù)據(jù)格式
在 LoRaWan? 服務器上,數(shù)據(jù)以下列格式到達
字節(jié)1 | 字節(jié)2 | 字節(jié)3 | 字節(jié)4 | 字節(jié)5 | 字節(jié)6 | 字節(jié)7 |
---|---|---|---|---|---|---|
03 | CON1 | CON2 | T1 | T2 | H1 | H2 |
- 字節(jié) 1 是數(shù)據(jù)類型的標記,這里總是 03。
- 電導率作為
CON1CON2
,在數(shù)據(jù)包中將是 00 4a。 - 溫度發(fā)送為
T1.T2
,在數(shù)據(jù)包中將是 00 cb。 - 濕度作為
H1.H2
,在數(shù)據(jù)包中將是 03 e8。
如本實例中網(wǎng)關收到的數(shù)據(jù)為:03 00 4a 00 cb 03 e8。其中03為數(shù)據(jù)類型標識;0x00 0x4a為土壤電導率,將該十六進制數(shù)據(jù)換算成十進制數(shù)據(jù)為 74,即監(jiān)測到土壤導電導率為74 us/cm;0x00 0xcb為土壤溫度,將該十六進制數(shù)據(jù)換算成十進制數(shù)據(jù)為 207,即監(jiān)測到土壤溫度為20.7;0x03 0xe8為土壤濕度,將該十六進制數(shù)據(jù)換算成十進制數(shù)據(jù)為 1000,即監(jiān)測到土壤溫度為10.00% RH。
-
土壤監(jiān)測
+關注
關注
0文章
21瀏覽量
1471 -
RAK
+關注
關注
0文章
48瀏覽量
2058
發(fā)布評論請先 登錄
相關推薦
評論