一板网电子技术论坛

风筝
发表于: 2022-4-20 15:50:34 | 显示全部楼层

在本篇文章中,我们将介绍如何制作基于物联网LoRa的智慧农业和远程监控系统。智慧农业意味着监测影响作物生产的环境条件以及跟踪牲畜健康指标。基于LoRa的农业物联网技术可提高效率,减少对环境的影响,最大限度地提高产量并最大限度地减少开支。基于LoRa设备和LoRaWAN协议的智慧农业用例已经表现出明显的优势,例如商业农场的用水量减少了50%。


在本文中,我们将使用LoRa土壤湿度传感器电路板模块,该模块基于Atmega328P微控制器、LoRa模块RFM95和AHT10温湿度传感器。AHT10温湿度传感器测量当地空气温度和湿度。电容式土壤湿度传感器测量土壤湿度。所有测量数据都可以无线发送至15公里的距离,并且可以被接收器读取。发射器和接收器都是使用LoRa模块设计。

IoT-LoRa-Based-Smart-Agriculture-Remote-Monitoring-System.jpg


发射器运行在低功耗模式下。使用AAA电池,该设备可以运行一年以上。可根据需要控制设备功率,增大数据发送间隔。因此,这项技术的优势包括远距离、低功耗的无线质量,能够使用低成本传感器将数据从农场发送到云端,然后对其进行分析以改善运营。


所需的组件

●    AHT10土壤湿度传感器发射器

●    LoRa接收器

●    USB转UART模块(FTDI模块)

●    AAA电池

●    Micro-USB数据线


LoRa发射器:土壤湿度传感器+AHT10温湿度传感器

发射器电路板由Lora土壤湿度传感器和AHT10温湿度传感器组成。该电路板使用的微控制器是支持Arduino编程的Atmel的Atmega328P。AHT10传感器收集当地空气温度和湿度。电容式土壤湿度传感器检测土壤湿度。该传感器基于555定时器。Lora无线接收器和发射器必须采用相同的工作频率。否则,它不会从另一个接收任何数据。发射器使用LoRa模块RFM95将本地环境数据传输到网关。

LoRa-Soil-Moisture-Sensor.jpg


Lora发射器由一对AAA电池供电。设备每隔几分钟定期传输数据,然后进入睡眠模式以节省电池电量。根据代码和硬件设置,这项传感器功能可以关闭,或者只在短时间内开启。因此,由于睡眠模式和低功耗模式,电池寿命可以延长几个月。电容式土壤湿度传感器涂有防水涂料,因此即使传感器长时间浸入土壤中也不会产生任何腐蚀作用。该模块适用于智能农场、灌溉、农业等应用。


ATmega328芯片集成了Arduino引导加载程序,因此可以使用Arduino IDE轻松编程。我们只需要一个USB转TTL转换器模块。


LoRa接收器:Lora Radio (433M/868M/915M)

Lora Radio接收器是基于ATmega328和433MHZ/868MHz/915MHz RFM95 LoRa模块的主板。LoRa Radio接收器允许用户以低数据速率发送数据并达到极远的范围。它提供超长距离扩频通信和高抗干扰性,同时最大限度地减少电流消耗。它在此板上具有Arduino pro mini 3.3V 8MHz引导加载程序,并使用CP2104作为USB转串口使用Arduino IDE上传代码。在这个LoRa智慧农业项目中,我们将使用它作为接收器网关。

lora-agriculture-sensor.jpg


设置Lora土壤湿度发射器

为了将代码上传到发射器,需要焊接一个5针的插头。所以首先在这里焊接插头。

USBSoil.jpg


现在您需要连接USB转UART模块以使用Arduino IDE上传Atmega328的代码。请注意,USB转UART转换器中的DTR需要连接到复位引脚。如果没有DTR,您可能需要手动按下复位按钮来上传代码。


在模块背面安装AAA电池。


现在为了使用Arduino IDE对Lora传感器电路板进行编程,在Arduino IDE中选择默认的一个电路板。从顶部的Arduino IDE菜单中,选择Tools-> Board-> Arduino Pro 或 Pro Mini。同时选择Tools-> Processor-> Atmega328P(3.3V,8Mhz)。

Lora_Soil_07.jpg


设置Loara接收器

Lora接收器不需要USB转UART模块,因为它可以使用Micro-USB数据线直接编程。


该板使用相同的电路板型号进行编程。所以在Arduino IDE中选择Arduino Pro 或 Pro mini以及ATmega328P (3.3V,8Mhz) 处理器。


发射器代码

使用Lora发射传感器数据的代码共分为3个文件:Main.ino、I2C_AHT10.cpp和I2C_AHT10.h文件


在编译代码之前需要将RFM95库添加到Arduino IDE中。因此,从下面的链接下载RFM95库并将其添加到库文件夹中。


根据您使用的电路板修改Lora频率的宏定义是433Mhz还是868Mhz还是915Mhz。

如果你的Lora电路板是433MHz:

  1. #define RF95_FREQ 433.0
复制代码

以下是发射器代码的3个文件: Main.ino.rar (1.91 KB, 下载次数: 3)

I2C_AHT10.cpp.rar (1.66 KB, 下载次数: 3) I2C_AHT10.h.rar (862 Bytes, 下载次数: 3)


接收器的代码

以下是Lora接收器的代码: Receiver.rar (1014 Bytes, 下载次数: 4)


基于物联网LoRa的智慧农业和远程监控系统

现在让我们制作一个基于LoRa的智能农业的简单演示。现在您可以打开发送器和接收器的串口监视器。Lora发射器和接收器将启动并相互通信。

LoRa-Based-Smart-Agriculture.jpg


发射器将读取土壤湿度数据,该数据可以转换为百分比值。同样,AHT10将收集空气湿度和温度数据,然后传输到Lora网关。

Lora_Soil_4.jpg


发射器发送数据后进入深度睡眠模式或省电模式。在数据传输模式下,它消耗大约0.2mA的电流。在省电模式下,电流降低至0.75µA。通过增大数据传输的间隔,电池寿命可以增加到几个月。

Logged-Data.jpg


以上就是基于物联网LoRa的智慧农业与远程监控系统的全部内容。如果有任何疑问,请随时在本帖下面回复。

跳转到指定楼层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题 675 | 回复: 1398



手机版|

GMT+8, 2022-10-7 06:30 , Processed in 0.023237 second(s), 7 queries , Gzip On, MemCache On. Powered by Discuz! X3.4

YiBoard一板网 © 2015-2022 地址:河北省石家庄市长安区高营大街 ( 冀ICP备18020117号 )

快速回复 返回顶部 返回列表