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

【源码】基于ESP32的学校铃声控制系统

项目简介

本项目是一个基于ESP32的学校铃声控制系统,具备时间同步、铃声控制、Web服务器管理和数据展示等功能,可实现学校铃声的自动化控制和设备信息的监控展示。

项目的主要特性和功能

  1. 时间同步:ESP32初始化时从配置的NTP服务器调整时间,每小时进行新同步,确保时间准确,同步时间以UNIX Epoch time格式存储,便于外部管理和监控。
  2. 铃声控制:铃声触发时间存储在 timeToStudy() 函数,分短铃(课间用,默认3秒)和长铃(课间开始或结束等,默认7秒)。固定节假日在 DiadeAula() 函数定义,该函数返回是否触发铃声。短铃和长铃持续时间可通过 tempoCurtotempoLongo 变量修改。
  3. Web服务器管理:提供Web服务器用于被动管理设备,通过HTTP请求,设备返回JSON文档,包含项目信息、系统信息、当前时间、NTP同步信息、课程时间等,方便监控设备时间。
  4. 数据展示:返回的JSON数据可在其他平台(如Zabbix、Grafana)上展示。

安装使用步骤

硬件准备

  1. 准备ESP32(30引脚)、5V继电器模块(单通道或双通道)、可调电源(HW-131)、400点实验板、NTP服务器(可通过互联网或本地提供)。
  2. 若使用可调电源HW-131,用7 - 12V电源;若没有,直接将5V电源连接到ESP32的VIN端口和5V继电器。

软件安装

  1. 确保已安装Arduino IDE 2.0。
  2. 将所有.ino文件放在同一目录下。
  3. 打开Arduino IDE,选择正确的开发板(ESP32)和端口。
  4. 编译并上传代码到ESP32。

使用方法

  1. 设备启动后,ESP32自动尝试从配置的NTP服务器同步时间。
  2. 通过HTTP请求访问设备,获取JSON格式的设备信息和课程时间信息。
  3. 根据返回的JSON数据,在其他平台上进行数据展示和监控。

下载地址

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