littlebot
Published on 2025-04-09 / 0 Visits
0

【源码】基于树莓派和Arduino的低成本LoRa网关系统

项目简介

本项目是一个低成本的LoRa网关系统,基于树莓派和Arduino构建。可接收、处理和转发LoRaWAN数据包,与各类物联网设备通信,还能监测网关内部环境状况,将数据存储于本地数据库并进行可视化展示。

项目的主要特性和功能

  1. 便捷管理:有简单易用的Web管理界面,便于对网关进行配置和更新。
  2. 状态通知:网关启动和无线电模块重置时,向指定邮箱发警报邮件,定期生成状态报告,监控后处理阶段运行状态。
  3. 数据处理:支持加密和原生LoRaWAN帧格式,具备下行链路功能,实现从网关到终端设备的数据传输。
  4. 云管理:采用简单、灵活且通用的云管理方法,可与多种云服务集成。
  5. 环境监测:支持嵌入式DHT22温湿度传感器,实时监测网关机箱内部环境状况。
  6. 数据存储与展示:支持NoSQL MongoDB,将数据保存到本地数据库;配备Apache Web服务器和基本PHP表单,通过Web浏览器以图形方式可视化展示数据。
  7. 网络连接:网关可作为WiFi接入点,支持蓝牙连接,可通过智能手机的Android应用查看数据库存储的数据。
  8. 配置脚本:提供配置脚本(scripts/config_gw.sh),方便配置网关的MongoDB、WiFi和蓝牙功能。
  9. 代码分离:Arduino代码将网关和交互式终端设备的代码分离,便于开发和维护。

安装使用步骤

安装最新网关版本

  1. 使用SD卡镜像更新(推荐)
    • 下载并解压SD卡镜像,安装到8GB的SD卡上。
    • 将SD卡插入树莓派,连接无线电模块并通电。
    • 使用pi用户登录(用户名:pi,密码:loragateway),建议更改pi用户的密码。
    • 进入lora_gateway/scripts目录:cd /home/pi/lora_gateway/scripts
    • 运行更新脚本:./update_gw.sh
  2. 复制整个仓库并复制文件
    • 创建lora_gateway文件夹并复制文件:mkdir lora_gateway; cd lora_gateway; cp -R../LowCostLoRaGw/gw_full_latest/*.
  3. 仅获取网关部分
    • 若未安装svn,需先安装:sudo apt-get install subversion

配置网关

  1. 运行基本配置脚本:cd /home/pi/lora_gateway/scripts;./basic_config_gw.sh
  2. 如需更高级的配置,可运行config_gw.sh脚本。
  3. 配置完成后,重启树莓派。

启动网关

树莓派通电后,LoRa网关将自动启动。可使用cmd.sh脚本执行网关的主要操作,命令如下:sudo python start_gw.py

连接终端设备

  1. 将LoRa无线电模块连接到Arduino板。
  2. 安装Arduino IDE,检查Arduino AVR板库版本不高于1.6.11。
  3. 在草图文件夹中复制distribution的Arduino文件夹内容。
  4. 打开相应的Arduino草图(如Arduino_LoRa_Simple_temp),编译并上传到Arduino板。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】