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

【源码】基于MQTT和Node.js的IoT温湿度监控系统

项目简介

本项目借助Wemos D1 mini和DHT11传感器,对教室内的温度与湿度数据进行实时采集,再通过MQTT协议将这些数据发布到MQTT Broker。其他设备和应用程序可订阅该数据,并在Web界面展示。

项目的主要特性和功能

  1. 传感器数据采集:利用Wemos D1 mini和DHT11传感器,实时采集温度和湿度数据。
  2. MQTT数据发布:通过MQTT协议把采集到的数据发布到指定的MQTT Broker。
  3. MQTT Broker:采用Mosquitto作为MQTT Broker,支持数据的发布和订阅。
  4. Web Dashboard:使用Node.js搭建Web服务器,展示订阅到的温湿度数据。

安装使用步骤

1. 设置MQTT Broker

使用Vagrant启动MQTT Broker虚拟机

  • 确保已安装Vagrant和VirtualBox。
  • 在项目根目录下找到mqtt-broker/Vagrantfile文件。
  • 在终端中运行以下命令启动虚拟机并安装Mosquitto: bash cd mqtt-broker vagrant up

手动安装Mosquitto

  • 在Ubuntu系统上运行以下命令安装Mosquitto: bash sudo apt-get update sudo apt-get install -y mosquitto mosquitto-clients
  • 编辑Mosquitto配置文件,允许从任何网络接口连接: bash sudo nano /etc/mosquitto/mosquitto.conf 添加以下内容: bind_address 0.0.0.0

2. 配置Wemos D1 mini

  • 使用Arduino IDE或其他支持ESP8266的开发环境。
  • 打开wemos-d1-mini/mqtt目录下的代码文件。
  • 根据实际网络环境配置WiFi和MQTT Broker的连接信息。
  • 上传代码到Wemos D1 mini。

3. 启动Web Dashboard

使用Vagrant启动Web Dashboard虚拟机

  • 在项目根目录下找到mqtt-client/dashboard/Vagrantfile文件。
  • 在终端中运行以下命令启动虚拟机并安装Node.js: bash cd mqtt-client/dashboard vagrant up

手动安装Node.js

  • 在Ubuntu系统上运行以下命令安装Node.js和npm: bash sudo apt-get update sudo apt-get install -y nodejs npm
  • 进入Web目录并安装依赖: bash cd mqtt-client/dashboard/web npm install
  • 启动Web服务器: bash node app.js

4. 访问Web Dashboard

  • 打开浏览器,访问http://192.168.1.100:3000(根据实际IP地址调整)。
  • 在Web界面上查看实时温湿度数据。

下载地址

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