littlebot
Published on 2025-03-30 / 0 Visits
0

【源码】基于TensorFlow Lite和Arduino的热舒适度监测系统

项目简介

本项目借助Arduino微控制器和TensorFlow Lite机器学习模型,对室内环境的热舒适度进行预测,并通过Web界面实时展示预测结果。系统先通过Python脚本生成数据集并训练模型,之后将模型部署到Arduino设备,结合Web界面实现蓝牙通信与数据呈现,适用于家庭和办公环境,可助力用户智能调控空调温度,降低能源消耗。

项目的主要特性和功能

  1. 数据生成与模型训练:运用Python脚本生成热舒适度数据集,借助TensorFlow完成模型训练。
  2. 模型转换与部署:把训练好的模型转换为TensorFlow Lite格式,部署到Arduino Nano 33 BLE Sense或ESP32设备。
  3. 实时监测与显示:利用Arduino设备实时采集温湿度数据,计算舒适度并通过Web界面展示。
  4. 多设备支持:支持Arduino Nano 33 BLE Sense和ESP32设备,兼容i2c显示屏和DHT22温湿度传感器。
  5. Web界面交互:提供基于HTML的Web界面,支持蓝牙连接与数据实时更新。

安装使用步骤

1. Python环境准备

  • 安装Python 3及以上版本,同时安装TensorFlow、pandas、pythermalcomfort依赖库。
  • 运行generate_thermal_comfort_data.py生成数据集,按需调整metValueclothesValue参数。
  • 运行generate_thermal_comfort_model.py生成TensorFlow模型并保存。
  • 运行convert_to_tflite.py将模型转换为TensorFlow Lite格式。
  • 使用convert_model.sh脚本将TFLite模型转换为Arduino可用的C++文件。

2. Arduino环境准备

  • 安装Arduino IDE,添加ArduinoBLE、Arduino_HTS221、EloquentTinyML库。
  • 打开Arduino项目文件,导入生成的模型文件(如model.h)。
  • 根据季节设置CURRENT_MODEL_TYPE参数为SUMMERWINTER
  • 连接Arduino设备,选择正确端口并上传代码。

3. Web界面使用

  • 打开web文件夹中的index.html文件,使用支持BLE的浏览器(如Chrome)访问。
  • 点击“Connect”按钮,搜索并配对Arduino设备。
  • 配对成功后,Web界面实时显示温湿度及舒适度数据。

4. ESP32设备使用(可选)

  • 连接ESP32、i2c显示屏和DHT22温湿度传感器,参考引脚配置图。
  • 打开ESP32项目文件,上传代码并运行。

注意事项

  • 确保所有依赖库正确安装,按需调整参数。
  • 项目模型精度损失约2 - 3%,适用于一般场景,可按需优化。
  • 本项目为开源项目,欢迎贡献改进。

下载地址

点击下载 【提取码: 4003】