利用 ESP32-S3 和 CSI 技术打造智能家居

ESP32 系列芯片可以利用 CSI 数据实现动作检测和存在检测。无论是自动调节灯光、风扇,还是节能控制,CSI 技术为智能家居带来了新的可能性。随着 CSI 技术的发展,未来的智能家居将能够更精确地感知和响应我们的行为,实现更高效、更人性化的控制。

Channel State Information(信道状态信息)是无线通信中描述信道状态的详细数据。它通过分析 Wi-Fi 信号在不同子载波上传输时的幅度和相位变化,提供了信道的状态信息。

Wi-Fi 信号从路由器传输到 ESP32。人的动作会干扰 Wi-Fi 信号的传播路径,导致信道状态发生变化。CSI 可以捕捉这些变化,并通过算法分析来推断环境中的活动情况。

利用 ESP32-S3 和 CSI 技术打造智能家居

🌟 视频亮点一览:

1. 当动作检测或者存在检测的计算结果超出了阈值,ESP32 就会判定室内有人在活动。控制灯光调亮并打开电扇。

利用 ESP32-S3 和 CSI 技术打造智能家居


2. 当人体停止动作后,动作检测的结果会低于阈值。但是 CSI 依然可以通过存在检测判断室内是否有人。ESP32 可以根据结果保持灯光继续点亮,并将风扇切换成更舒适的自然风。

利用 ESP32-S3 和 CSI 技术打造智能家居


3. 当人离开屋子后,检测算法的结果会低于阈值,从而确认室内无人,并自动关闭家中电器,以达到节省能源的效果。

利用 ESP32-S3 和 CSI 技术打造智能家居


下面是 CSI 数据的实时检测界面:

利用 ESP32-S3 和 CSI 技术打造智能家居

  • 左上角折线:图展示所收到的 CSI 原始数据;

  • 右上角折线:图展示动作检测算法和人体存在检测算法的结果:

    a. 绿色折线代表动作检测算法的实时计算结果

    b. 紫色折线代表动作检测算法的实时阈值

    c. 蓝色折线代表存在检测算法的实时计算结果

    d. 黄色折线代表存在检测算法的阈值

  • 右下角柱状图:展示动作检测的最终结果。


当一段时间窗口内出现多次计算结果超过阈值的情形,就可以判断环境中发生了动作。


其他应用

Wi-Fi CSI 还可以用于高精度的室内定位。通过分析多个 Wi-Fi 接入点(AP)或多个终端设备(STA)之间的 CSI 数据,定位算法(如指纹定位、到达角度(AoA)分析等可以计算出人所在的位置。

随着人体移动,CSI 数据会持续变化,定位系统可以通过这些变化实时更新位置,实现动态追踪。

我们还可以让室内的智能家居与 CSI 产生联动。例如,当走到书桌前,台灯会自动打开;风扇根据人的位置调整风向。


开发资源

视频中支持 Rainmaker 控制的智能无感风扇采用了乐鑫科技的 ESP32-S3-WROOM-1 模组作为系统主控,利用其 LEDC 与 MCPWM 模块实现三相逆变电路驱动。此外,系统支持接入 RainMaker 实现无刷电机的启停与速度控制。该方案已开源至立创开源硬件平台:

https://oshwhub.com/esp-college/esp-bldc

体验 ESP32 CSI 数据获取及检测算法:

https://github.com/espressif/esp-csi:

- 本文内容来自网络,如有侵权,请联系本站处理。

2025-09   阅读(188)   评论(0)
 标签: 创客 ESP32 物联网

涨知识
74HC595

74HC595是一个8位串行输入、并行输出的位移缓存器。并行输出为三态输出。

评论:
相关文章
【ESP32 C++教程】Unit4-3 红外接收和遥控

本小节主要讲解红外接收和遥控器件,以及遥控操作LED。


【ESP32 C++教程】Unit4-2 模拟量传感器

本小节讲解模拟量传感器使用,旋转电位器,DHT11温湿度传感器和实现自定义传感器类。


【ESP32 C++教程】Unit4-1 数字量传感器

本小节讲解Sensor类及派生类、数字量传感器使用和传感器的推荐交互流程。


【ESP32 C++教程】Unit3-2 触摸输入

本小节讲解ESP32内置触摸引脚的用法,


【ESP32 C++教程】Unit3-1 按键输入

本小节主要介绍按键信号转换、Button类及派生类、和Button交互推荐流程。


【ESP32 C++教程】Unit2-2 Ws2812灯珠

本小节主要介绍Ws2812灯珠的使用、对父类进行扩展实现自定义功能,和指针向下强制转换的使用。


【ESP32 C++教程】Unit2-1 RGB三色LED

本小节主要介绍RGB三色LED的使用,以及多态的具体实现。


【ESP32 C++教程】Unit1-3 ESP32 Arduino 开发框架

ESP32 Arduino Framework是专门针对ESP32开发板的Arduino应用开发框架,为用户开发IOT应用、HMI应用提供一致的开发体验。


ESPConnect:基于浏览器的ESP32管理器

ESPConnect是一个基于现代浏览器的管理器,在你需要快速验证、调试、管理文件、检查状态的时候,它能帮你省下大量打开和切换重型工具的时间。


用ESP32做一个FM收音机

本文介绍两种使用TEA5767收音机模块实现FM收音机的方案,感兴趣的朋友可在此基础上实现更丰富的功能。