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

【源码】基于ESP8266的日出灯光模拟系统

项目简介

本项目基于ESP8266开发,能够对12V LED灯条或者其他PWM控制光源的亮度进行控制,从而模拟日出效果。该系统适用于家庭自动化场景,能让用户体验被自然光线唤醒的感觉。

项目的主要特性和功能

  1. 支持设置日出时间以及光源达到目标亮度的总时长。
  2. 具备多种控制方式,可通过本地网页、Telegram bot或者MQTT进行控制。
  3. 支持通过WiFi进行OTA远程更新。
  4. 可设置当前亮度和最大目标亮度。
  5. 拥有智能开关模式、按钮集成、闹钟提示等附加功能。

安装使用步骤

硬件安装

准备ESP8266(推荐NodeMCU)、P - Channel MOSFET、12V电源供应器、12V转5V转换器、焊接工具、12V LED灯条(推荐暖白色3528或5050型号),按照电气原理图进行连接,默认GPIO为2。

软件配置

  1. 若使用PlatformIO,复制项目后打开工作环境;若使用Arduino IDE,复制main.cpp和config_example.h。
  2. 将config_example.h重命名为config.h并更新配置信息。
  3. 若要进行OTA更新,先注释掉upload_port = XX.XX.XX.XX,通过USB上传代码,之后更改IP地址并取消注释。

使用方法

本地网页控制

在路由器管理界面或其他途径获取ESP的IP地址,在浏览器中访问该地址,即可在网页界面进行参数设置。

Telegram控制

创建Telegram bot,获取令牌和聊天ID并编辑配置文件。通过发送特定命令,如/settime HH:MM、/setduration MINUTES等进行控制。

MQTT控制

在配置文件中配置发布者IP和主题,发布与Telegram控制相同格式的消息进行控制。

额外说明

可下载“box_and_lid.stl”文件进行3D打印,制作设备安装盒。

下载地址

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