项目简介
本项目创建了一个分布式智能家居自动化系统,以计算机(PC)作为中央计算系统,ESP32板作为分布式控制器,通过MQTT协议经Wifi实现互连。项目包含三个模块,分别是用C开发的ESP32客户端设备、用Python开发的中央服务器以及用ReactJS开发的前端界面。
项目的主要特性和功能
- 设备管理:支持对设备进行注册和移除操作。
- 设备状态控制:在菜单按下输出设备按钮可改变LED状态,按下警报按钮可改变警报状态。
- 输入设备状态改变:按下ESP上的启动按钮可改变输入设备状态,若警报已激活,会发出声音警告。
- 设备重置:长按ESP上的启动按钮5秒可重启设备,同时重置中央服务器和前端的配置。
安装使用步骤
假设用户已经下载了本项目的源码文件。
依赖环境
- Sound eXchange (SoX),可通过APT获取。
- Node v14.16.0及以上版本。
- Python 3.7及以上版本。
具体安装步骤
前端
在前端目录下,执行以下命令:
bash
$ yarn install
$ yarn start
中央服务器
在中央服务器目录下,执行以下命令:
bash
$ pip install -r requirements.txt
$ python main.py
客户端
在客户端目录下,执行以下命令:
bash
$. $HOME/esp/esp-idf/export.sh
$ idf.py menuconfig
$ idf.py build
$ idf.py -p /dev/ttyUSB0 flash monitor
项目测试
在前端和中央服务器启动后,启动客户端,ESP的MAC地址将被识别并发送到中央服务器。收到MAC地址后,即可注册设备。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】