基于MQTT应用层协议的物联网家庭温湿度监测系统

本文详细介绍了一种基于MQTT协议的家庭物联网温湿度检测模块设计,涵盖了从硬件选型到软件开发的全过程,实现了温湿度数据的实时采集与云端上传。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

引言

出生于互联网时代的我们,见证了智能手机和个人电脑通过计算机网络互相进行连接,把每个人紧密地连接在一起,形成了一个地球村。而今,我们即将迈入5G时代,在通信技术不断发展的今天,连接到互联网的将不仅是昂贵精密的手机电脑,身边的各种物体也可以通过物联网连接到云端,由物联网平台管理上云的物联网设备,使用者通过浏览器,小程序等接收物发出的通知并且完成想过操作。物联网不仅将物与物连接在一起,也将物与人紧密地连接在一起,让生活更加智慧便捷。这,就是即将到来的AIOT时代。
本次实验主要通过自制一个家庭物联网温湿度检测模块,学习具体的基于MQTT协议的物联网设计制作。在应用的过程中,也加深了对计算机网络各层次之间的理解。
硬件设备原代码附于文末。

需求分析

  • 硬件设备可以读取温湿度信息
  • 硬件设备可连接互联网上传消息
  • 云端物联网平台24小时不间断工作,完成接入设备的管理,消息存储与转发
  • web服务器接收物联网平台的信息,经过处理使用户通过网页访问的方式查询信息

系统设计

系统总体数据流

  • 硬件设备stm32作为终端结点,通过MQTT协议将数据上传至物联网平台,同时接受物联网平台下发的信息。
  • 云服务器作为与用户直接联系的平台,既作为http服务端,使用http协议向用户展示温湿度等信息接收用户发送的命令信息,又作为mqtt客户端与物联网平台交换信息。
  • 物联网平台作为消息的中转站,负责物联网设备的管理与消息的转发。
  • 总体计算机网络应用层协议数据流如下图
    在这里插入图片描述

硬件设备端

各模块设计
  • 为实现开发的便捷性和稳定性,使用意法半导体的STM32F103ZET6作为主控MCU,接收各传感器的消息。负责与服务器建立连接,并将消息构造成MQTT报文,上传至云端物联网平台。
    在这里插入图片描述
  • 使用DHT11温湿度传感器,可同时检测温湿度,测量范围为0-100,精度为1度,采用单总线与主控芯片完成数据传递,单总线协议不是本文主要内容,概不介绍
    在这里插入图片描述
  • 使用ESP8266模块完成硬件设备的物联网功能,ESP8266在数据链路层使用WIFI协议,适用于家庭室内这种不需要经常移动的场合。ESP8266已完整封装TCP/IP协议,只需要通过AT指令连接WIFI网络,然后进入透传模式,主控MCU发送过来的MQTT消息包就会经ESP8266发送至互联网,完成设备之间的解耦。ESP8266模块通过串口与主控MCU完成通讯。
    在这里插入图片描述
硬件设备数据流

在这里插入图片描述

云端物联网服务平台和Web服务器

  • 云端服务全部使用阿里云平台的服务,阿里云的服务具有稳定性强,配置便捷的特点,方便部署物联网应用,云端总体应用架构如下。
    在这里插入图片描述

  • 云端物联网平台使用阿里云物联网平台。阿里云物联网平台为设备提供安全可靠的连接通信能力,向下连接海量设备,支撑设备数据采集上云;向上提供云端API,服务端通过调用云端API将指令下发至设备端,实现远程控制。提供设备接入,设备管理,安全能力和规则引擎。其中规则引擎用来完成数据转发,负责沟通数据在设备间,设备与数据库间,设备与服务器间流转。

  • Web服务器使用阿里云服务器ECS,云服务器(Elastic Compute Service,简称ECS)是阿里云提供的性能卓越、稳定可靠、弹性扩展的IaaS(Infrastructure as a Service)级别云计算服务。云服务器ECS免去了您采购IT硬件的前期准备,让您像使用水、电、天然气等公共资源一样便捷、高效地使用服务器,实现计算资源的即开即用和弹性伸缩。阿里云ECS持续提供创新型服务器,解决多种业务需求,助力业务发展。

MQTT协议

简介

MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值