WisBlock 土壤电导率监测应用指南

此解决方案展示了如何创建农业土壤电导率传感器节点。传感器节点通过带有 rs485 接口的传感器测量土壤电导率、土壤温度和土壤湿度。然后将此数据传输到 lorawan® 服务器。
figure 1: wisblock土壤电导率监测应用图例 
#前期准备#硬件wisblock base(本示例使用rak5005-o)wisblock core(本示例使用rak4631)wisblock io(本示例使用rak5802)jxbs-3001-ec-rs-4(土壤电导率传感器)lora天线(本示例使用cn470频段)usb连接线直流供电电源网关(网关频段需与传感器模块频段一致,本示例使用rak7268c网关,频段cn470)#软件arduino iderak4630 bsparduino rs485 库arduino modbus 库sx126x-arduino 库 
#硬件安装本章节为 wisblock 传感器节点组装过程。
#lora天线安装1、将lora天线接口对准并放置在rak4631模块的lora天线接口搭接处。
figure 2: 安装lora天线 
2、轻轻按压lora天线接口,将lora天线安装到rak4631上。
#wisblock core安装1、将rak4631模块上的连接器插头对准rak5005-o cup插槽上的连接器插座。保持连接器间平行,将其轻放在插座连接器相应的搭接处。
figure 3: 安装rak4631 
2、平行按压均匀施力,听到扣合声音后,扣压完成。
3、完成后,使用螺钉将模块固定在rak5005-o上。
#wisblock io安装1、将rak5802传感器模块上的连接器插头对准rak5005-o io插槽上的连接器插座。保持连接器间平行,将其轻放在插座连接器相应的搭接处。
figure 4: 传感器节点组装示意图 
2、平行按压均匀施力,听到扣合声音后,扣压完成。
3、完成后,使用螺钉将模块固定在rak5005-o上。
#jxbs-3001-ec-rs-4 土壤电导率传感器安装rak5802采用快速压接端子连接器以简化和确保现场接线过程。快速压接端子可支持20 awg~24 awg线宽的电缆。通常剥线长度约为6~7 mm。
传感器线缆连接到压接端子示意图:
figure 5: 传感器线缆连接到压接端子示意图 
具体操作步骤如下:
1、将rak5802上压接端子的弹簧头按下并稳稳地保持住。
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: 土壤电导率传感器组装 
注意:
请将传感器钢针端避开石块,按照所需测量深度抛开表层土,保持下面土壤原有松紧程度,紧握传感器垂直插入土壤。插入时不要左右晃动,一个测点的小范围内建议多次测量求平均值。
#软件配置本章节介绍wisblock 传感器模块的软件配置。
#arduino ide的下载使用arduino ide对wisblock进行编码和编程。如果您还未安装arduino ide,可在arduino官网中下载。
警告:
如果您所使用的操作系统为windows 10:
请勿从microsoft应用商店中安装arduino ide。请从arduino官网中安装原始的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安装许可协议 
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进行一些配置以便后续对wisblock组装模块进行相关配置。
1、打开arduino ide。
2、进入“文件 > 首选项”。
figure 14: 首选项 
3、单击图中图标,编辑“附加开发板管理器网址”,将wisblock core添加到arduino板列表中。
figure 15: 修改附加开发板管理器网址 
4、复制此urlhttps://raw.githubusercontent.com/rakwireless/rakwireless-arduino-bsp-index/main/package_rakwireless_index.json并粘贴至下图所示区域。如果已存在其他链接,将上述链接粘贴至新的一行。完成后,单击“好”。
figure 16: 添加rakwireless wisblock core bsp 
注意:
如果您使用的是linux,需要通过“pip”安装“adafruit-nrfutil”。
sudo pip3 install adafruit-nrfutil 或 pip3 install --user adafruit-nrfutil
5、重启arduino ide。
6、在“工具”菜单中打开“开发板管理”。
figure 17: 打开开发板管理 
7、如下图所示,在搜索栏中键入“rak”。将会显示出可添加到arduino板列表中的可用rakwireless wisblock core。选择以下板支持包以及相应的版本,并单击“安装”板支持包。
figure 18: 安装wisblock core 
#烧录程序1、将组装的wisblock传感器模块使用usb连接线连接到pc上。
2、在arduino ide中,根据下图所示,选择wisblock core rak4631板。
figure 19: 选择wisblock core rak4631板 
3、根据下图所示,选择示例项目。
figure 20: 选择示例代码 
4、打开示例代码后,双击图中链接,安装示例代码中所需的代码库。
figure 21: 安装所需代码库 
5、修改示例代码中的频段区域,本示例使用的为cn470。
figure 22: 修改频段 
6、完成后,如下图所示,选择正确的串口并单击图中上传图标上传代码。
figure 23: 选择端口号 
连接到rak网关内置服务器#前提条件传感器模块在lorawan®网关覆盖范围之内。已登录商业网关。已在网关web页面“lora network > network settings”中设置网关mode为“network server”,即表示使用网关内置服务器。figure 24: 网关设置为内置服务器模式 
已在网关web页面“channel plan”上配置需要的region。本示例中频段为cn470,通道为80-87。figure 25: 选择频段和通道 
#创建应用并添加节点1、在左侧导航树选择“lora network > application”。
2、输入应用名称,选择“type 1 : unified application key”,单击“add”。
figure 26: 添加节点 
3、设置应用参数。
figure 27: 设置应用参数 
其中“application eui”和“application key”参数,从土壤电导率传感器示例代码中获取:
figure 28: 获取“application eui”和“application key”参数 
注意:
示例中使用的是otaa加网方式,所以选用的是otaa keys相关参数,根据实际选择“otaa”或“abp”参数。application eui:在传感器示例代码中获取,切记需要删除各个数字前的“0x”以及“,”。application key:在传感器示例代码中获取,切记需要删除各个数字前的“0x”以及“,”。 
4、单击“save & apply”。
5、单击新建应用后面的edit,进入应用编辑页面。添加节点并设置如下参数,然后单击save & apply保存配置。
figure 29: 添加节点 
其中“device eui”参数,从土壤电导率传感器示例代码中获取:
figure 30: 获取设备eui值 
注意:
示例中使用的是otaa加网方式,所以选用的是otaa keys相关参数,根据实际选择“otaa”或“abp”参数。device eui:在传感器示例代码中获取,切记需要删除各个数字前的“0x”以及“,”。 
6、查看传感器模块日志以及rak网关接收的上行数据。
传感器模块日志:
网关内置服务器侧设置完成后,传感器模块将自动加入网络。打开“工具>串口监视器”,可以到如下信息,表示该wisblock 传感器模块已入网成功,并开始上传数据。figure 31: 传感器模块日志 
网关中上行实时数据:
进入“lora network > application”。单击应用的“edit”操作,进入应用设备界面。单击所选设备的设备名称或设备eui链接,进入设备详情页面。单击进入“live device data”页面,可查看实时上行数据。 
#数据格式在 lorawan® 服务器上,数据以下列格式到达
字节1字节2字节3字节4字节5字节6字节7
03 con1 con2 t1 t2 h1 h2
字节 1 是数据类型的标记,这里总是 03。电导率作为con1con2,在数据包中将是 00 4a。温度发送为t1.t2,在数据包中将是 00 cb。湿度作为h1.h2,在数据包中将是 03 e8。 
如本实例中网关收到的数据为:03 00 4a 00 cb 03 e8。其中03为数据类型标识;0x00 0x4a为土壤电导率,将该十六进制数据换算成十进制数据为 74,即监测到土壤导电导率为74 us/cm;0x00 0xcb为土壤温度,将该十六进制数据换算成十进制数据为 207,即监测到土壤温度为20.7;0x03 0xe8为土壤湿度,将该十六进制数据换算成十进制数据为 1000,即监测到土壤温度为10.00% rh。

数美科技完成亿元融资 AI在风控领域起到了驱动作用
铅酸蓄电池的安装步骤及注意事项
Klipsch推出新款蓝牙随身音箱,支持蓝牙无线与3.5mm有线
70%!台积电3nm按良率收费!
科创板即将迎来信号链芯片第一股芯海科技
WisBlock 土壤电导率监测应用指南
猎豹CT7犀利又霸气,动感十足,敞开式货车车厢设计,动力感很强,感觉开起来,就能驰骋世界
华为Nova2正式发布:同样的价格,华为Nova2和小米6谁更值得买?
赛普拉斯扩展Traveo汽车用MCU系列产品,推动下一代汽车系统发展
小米手环4NFC版开卖 线下火爆
雾计算如何颠覆云服务市场
韩国文在寅政府表示应暂停部署萨德普京再次放话俄不会坐视“萨德”部署韩国!
Navigator Runtime帮助您最大限度提高多内核效率
如何使用STM32G4 32位MCU系列
STM32启动文件startup_stm32f10x_hd.s的代码讲解
为什么说小米8发布后,整个手机圈基本上就“圆满”了
探讨目前主流3D激光SLAM算法方案
PLC拓展模块的具体用处有哪些
OPPO Reno3 Pro 5G的重量公布,下放到170-179g之间
微星宙斯盾钛5主机正式发布:可配RTX 3090等显卡