我的订单购物车(0)联系客服 帮助中心供应商合作 嘉立创产业服务群
领券中心备货找料立推专区爆款推荐TI订货PLUS会员BOM配单PCB/SMT工业品面板定制

这是做了个AI版米家?!还开源了

2025-07-11 10:50:06阅读量:1813

做了一个AI版LoRa 网关系统

类似AI版米家的功能!

能帮我管理家居设备家庭环境出远门也不用担心空调没关!

在AI加持下,天气冷还会提醒我加衣服……小编OS:可是它在关心我也……图片

AI版

一些创友们看了表示:

拓展性很强啊!兼容AI拓展板,说不定还能支持摄像头图像识别老人/小孩跌倒、入室检测、火警告警、忘关灯处理、雷雨告警实用功能

……

拓展性很强

结合LoRa 网关本身低功耗的优势

好像很有看点呢……

拓展性

接下来,我们就一起看看这个【LoRa 网关系统】的开源方案吧!看看会不会让你也碰撞出一些“拓展火花”!

 

01
功能&亮点
 

遵循星形拓扑结构!用非LoraWAN模块软件实现了Lora网关的功能:

功能&亮点

 

也就是说,做了这个AI网关,我不再是面对冷冰冰的远程控制页面,而是多了一个知冷知热的家庭小管家?

独居打工人表示,真有点心动了……

无图无真相!

看看功能演示!

传感器数据采集与分析▼

传感器数据采集与分析

传感器数据采集与分析
传感器数据采集与分析
 

AI智能建议▼

AI智能建议

手机 App 远程管理▼

手机APP远程控制
02
硬件设计方案
 

本项目采用STM32+ESP32的双主控结构。

原理图1

原理图1

 原理图2

原理图2

PCB图

PCB图

底座板原理图

底座板原理图

底座板PCB图

底座板PCB图

模块功能原理

01 
STM32
 

项目核心控制器

  • 驱动 LoRa 模块(RA-01SC),实现子节点间的无线通信

  • 控制 OLED 显示(基于 U8g2 图形库)

  • 通过 Flash 芯片(W25Q64)存储历史数据

  • 作为子节点时接入各类传感器(如温湿度、光敏等)

 

02 
ESP32
 

智能处理模块,仅网关节点使用

  • 与 STM32 通信,获取各 LoRa 子节点的数据

  • 连接 Wi-Fi,接入ChatAnawhere访问大模型 API 进行智能分析

  • 支持用户个性化 Prompt,实现差异化智能建议

  • 接入HomeAssistant,实现智能家居(也可接入其他物联网平台)

  • 支持用户自定义分析规则与策略(Prompt + 模型)

03 
若需低功耗运行
 

低功耗运行,子节点可不接 ESP32 与 Flash 电路,仅保留 STM32 和 LoRa 部分。

 

 

 

03
软件设计方案
 

 

该项目的侧重点在于使用Lora模块,通过C语言编写代码,实现自组网,子节点的上线/下线自动管理,60s内子节点未发送数据自动下线,并且新的子节点上电即上线,网关节点自动接入,并显示在主页的子节点列表内。

可以通过对程序的设定来设置主节点/子节点,以及其对应的节点名称和节点地址。

底座板PCB图

对于每个节点创建一个LoraNetGate类型的结构体变量,存储对应的信息,该方式的好处在于子节点和网关节点可以共用一套代码。并且,子节点和网关节点可以通过代码的运行来进行切换(远程节点配置)。

缺点在于占用的内存空间比单独作为网关节点/子节点要大,这个劣势可以后续通过进一步的优化代码来减小。

底座板PCB图

网关节点拥有一个GateList结构体变量,该变量存储各个子节点的数据,例如类型、地址、名称,该结构体变量下又存在一个Sensor结构体变量,用于存储子节点的传感器数据。

Sensor结构体变量
Sensor结构体变量

 

 

04
复刻指南
 

 

包含外壳、PCB、元器件的“白嫖”说明。

01 
外壳
 

附件中下载底座和盖子的STL文件,使用嘉立创免费3D打印,领好券后,将模型上传,材料根据自己的需求选择即可。

外壳

外壳

 

02 
PCB打板
 

下载附件中的智能Lora网关_2025-06-27.zip文件,打开嘉立创下单助手

 PCB打板

登录领取每月两张的免费打板券后,上传下载好的GerBer文件,选择好对应的参数免费打板即可。

 

03 
元器件购买
 

板子上的所有元器件可以在工程介绍的下方BOM表里找到,想要直接下单的可以按照下方操作:

元器件购买步骤
元器件购买
元器件购买
元器件购买
04 
项目难点说明
 

1.Lora天线设计

这方面我没有合适的仪器,所以没有做阻抗匹配,导致Lora通信距离上有所欠缺,后期会进行优化。

2.Lora信道占用问题

在子节点变多的情况下,Lora信道占用时间较长,导致主节点无法有效获取最新发送数据的子节点的数据,虽然子节点的代码内部加入了信道占用判断,但是由于测试时各个节点公用一个信道,并且数据收发的间隔时间较短,导致当子节点过多时,网关节点无法较为及时的接收到每个子节点的信息(经测试,当子节点大于三个时,接收就会漏数据)。

可以通过子节点差时发送、增大数据上报间隔时间来解决。

 

 

HomeAssistant配置、服务器部署

敬请期待...

 

小白一枚,希望大佬们评论指正...

 

作者公布的项目DIY成本为

65元

DIY成本

 

05
开源网址
 

本项目已开源!

——想复刻想给作者点赞复制开源网址 前往原文。

开源网址:

https://oshwhub.com/hzyyxhzgy/smart-gateway-openai-family-hub

广告图片