littlebot
Published on 2025-04-12 / 1 Visits
0

【源码】基于PHP、Python和MySQL的MQTT物联网数据处理系统

项目简介

本项目是基于PHP、Python和MySQL的MQTT服务器客户端项目,借助MQTT协议与服务器通信,可收集传感器数据并控制继电器,同时将数据存储于MySQL数据库。该项目模拟了物联网应用的常见模式,适用于智能农场或智能家居等场景的自动化控制。

项目的主要特性和功能

  1. MQTT客户端功能:利用Python的paho - mqtt库连接到MQTT服务器,接收传感器数据和继电器控制指令。
  2. 数据库操作:运用Python的mysql.connector库创建数据库和表,插入传感器和继电器数据。
  3. Web数据查询:通过PHP脚本从数据库查询并以JSON格式返回传感器和继电器数据,便于前端解析显示。
  4. 数据处理:解析接收到的传感器数据并插入数据库传感器表,解析继电器控制指令以控制继电器开关。

安装使用步骤

前提条件

假设用户已下载本项目的源码文件,且项目在局域网中运行,MQTT代理和Web服务器安装在Ubuntu 16.04系统上。若要在互联网使用,需购买Web主机、设置DNS并修改MQTT服务器地址。

安装步骤

  1. NodeMCU代码烧录:使用“esp.c”文件为NodeMCU烧录代码,需将相关库添加到Arduino库文件夹。
  2. 服务器端安装
    • Mosquitto安装与配置:参考链接https://obrienlabs.net/how-to-setup-your-own-mqtt-broker/ 安装Mosquitto并配置,确保WebSocket正常工作(可忽略用户密码设置过程)。
    • Python库和Python安装:安装“paho - mqtt - client” Python库,若未安装Python 2.7,需进行安装。
    • Web环境安装:安装MySQL、PHP、Apache2,将“Web”文件夹中的文件和文件夹复制到Apache的www/Public HTML文件夹。
  3. 数据库和脚本运行
    • 运行“create_db.py”和“create_tables.py”创建数据库并添加表。
    • 运行“listen_mqtt.py”接收MQTT消息并自动插入数据库。

下载地址

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