基于ESP8266的智能家庭检测系统

利用空暇时间,做了一个软硬件结合的项目,项目结束了,写篇文章来记录下吧!

目录

  • 基于ESP8266的智能家庭检测系统
  • 绪论
    • 项目背景
    • 项目方法
    • 应用场景
  • 系统总体设计
    • ESP8266 NodeMcu
    • 心知天气API
    • MQTT协议
    • MQTT系统架构
  • 详细设计与实现
    • 系统硬件设计
    • 网关程序的实现
    • HTTP API接口的实现
    • 控制台的搭建
      • 手机控制台的搭建
      • 电脑控制台的搭建
  • 系统测试
    • 测试方案
    • 测试结果
  • 总结

绪论

项目背景

时代的发展日新月异,在科学技术进步飞快的今天,万物互联,实现智能化已成为当今时代的主题元素,物联网应用场景层出不穷,而其中实现家居智能化的智能家居产业最为贴近人们的衣食住行。
智能家居作为物联网时代的产物,贯穿了互联网技术、通信以及物联网技术,对家庭进行监测以及相关的控制,智能家居的不断发展已经极大简单化、便利化了人们的日常生活。因此,本文尝试打造一套智能家庭检测系统,实现家庭检测预警以及便利化的智能控制。另外,本文针对的智能家庭检测系统不仅可以便利化老百姓的日常生活,而且对物联网开发者也具有一定的参考价值。

项目方法

本文针对的智能家庭检测系统通过利用具有WiFi功能的ESP8266 NodeMcu CP210X系列开发板以实现通信和控制功能。该物联网开发板搭配了温湿度传感器、火焰报警传感器、人体感应模块、雨滴传感器、舵机、直流电机、双路电机驱动模块以及LED,设计并完成了一套智能家庭检测系统。
该系统中,通过Arduino IDE开发技术对集成了WiFi功能以及单片机功能的ESP8266 NodeMcu开发板进行开发,以实现检测控制以及通信功能,并且通过MQTT协议实现对MQTT服务器(本文采用的是然也物联服务平台)进行主题信息的接收、存储以及发送。另外,ESP8266芯片的WiFi频段属于2.4GHz,故在上电启动后将自动连接相同频段的家用WiFi或者手机热点。连接WiFi成功后,将建立与MQTT服务器的连接。在连接MQTT服务器成功的情况下,ESP8266芯片、MQTT服务器以及手机端、电脑端将形成三点一线的信息传输架构,以实现通信功能。其中,除订阅发布传感器网络所得参数,也将利用HTTP协议通过HTTP API接口(本文采用的是天气数据API接口–心知天气服务平台)获取JSON格式的相关天气信息并进行解析传输至客户端。
在整个系统中,电脑WEB端、手机APP端、ESP8266 NodeMcu开发板既具有发送端设备的角色,也可作为接收端设备的角色。其中,电脑WEB控制台通过Node-Red开发技术实现控制台的搭建;手机APP利用的是然也物联平台提供的一站式设备接入和管理功能,从而搭建手机控制台。

应用场景

针对本系统,用户可以根据自己的需求进行应用场景的搭建。如下图所示,即为本文针对该系统自制的一套应用场景示例。

针对该系统,应用场景总共包括厨房场景、储藏室场景、卧室场景、阳台场景、客厅场景五大场景。
厨房场景:众所周知,厨卫安全是每个家庭都会关注的重点部分,一旦出现问题,很难想象会造成什么样的后果。本系统的搭建将会实时检测厨房场景下的火焰情况,并及时告知用户做出处理。用户可通过手机APP或以电脑WEB控制台的方式进行查询当前厨房情况。
储藏室场景:在人们的日常生活中,储藏室一般会安排在光线比较暗淡的地方,本示例系统针对这一情况,配置了感应LED,可以很好的为人们的进入提前消除黑暗,很大程度上减少了磕磕碰碰情况发生的可能性。
阳台场景:该系统应用在阳台场景下是一个智能晾衣架的设计,人们生活中经常存在上班前或者上学前晾晒好的衣服被突如其来的降雨淋湿的情况。雨水的降落我们不能控制,但我们可以控制我们的晾衣架。本系统针对此问题特别设计了智能晾衣架这一人性化的设计,足以解决上述问题带来的烦恼,是一个可以解决人们现实生活中实际问题的设计。
客厅场景:该示例系统针对客厅场景做出了温湿度的实时检测设计,该设计也可定制于其他用户需要的场景下。用户可以手机APP端或电脑WEB端实时查询室内温湿度情况,同时,针对温湿度这一影响人们体感舒适程度的情况,本系统还在此场景下搭建了智能风扇这一设计方案,用户可以远程进行智能风扇的控制,是一款比较舒心的设计。
卧室部分测试:源于人性化为出发点,本系统示例针对卧室场景,配置了壁灯,通过手机APP或电脑WEB控制台进行点亮,这一设计比较适用于儿童卧室,试想一下,加班工作的你在晚上早早的为孩子点亮一抹柔光将会是多么温馨的陪伴。

系统总体设计

ESP8266 NodeMcu

本系统中,ESP8266芯片以Wireless Station模式通过WiFi完成网络连接,实现无线通信,从而完成系统的通信工作。

心知天气API

本系统采用的是ESP8266 NodeMcu开发板进行整体系统功能实现,此开发板上嵌入具有WiFi功能的ESP8266芯片实现了数据的无线传输。ESP8266 WiFi芯片是一款体积小、功耗低的产品,同时其价格低廉这一实际特点比较容易得到用户的青睐。
本系统通过HTTP协议访问心知天气API实时获取相关天气信息,由于获取的信息格式是JSON数据格式,因此,需要对该数据格式进行解析,从而实现数据的正确交互。

MQTT协议

本系统采用然也物联平台提供的社区版MQTT服务。它提供面向个人用户的免费MQTT服务。它的服务端地址:iot.ranye-iot.net;MQTT端口:1883。本系统中ESP8266 NodeMcu作为设备One接入MQTT服务器;手机APP端作为设备Two接入MQTT服务器;电脑WEB端作为设备Three接入MQTT服务器。

MQTT系统架构

MQTT智能家庭检测系统架构,如下图。

详细设计与实现

系统硬件设计

该智能家庭检测系统硬件设计包括检测部分、反馈部分及存储部分。通过温湿度传感器、人体感应模块、火焰报警传感器、雨滴传感器检测器件获取相关数据参数,并送至ESP8266 NodeMcu开发板,并通过ESP8266芯片的WiFi通信功能实现数据上传至MQTT服务器进行存储。反馈部分主要有舵机、直流电机、感应LED。在触发时,感应器件会做出反应,同时也可通过手机APP、电脑WEB控制台发布主题信息至MQTT服务器,再传至ESP8266 NodeMcu实现各反馈模块的控制。该系统详细思路连接图,如下图所示。

系统硬件实物连接图,如下。

网关程序的实现

ESP8266 NodeMcu开发板具有WiFi连接功能,可作为网关。
网关程序实现流程设计,如下图所示。

HTTP API接口的实现

针对本系统中对心知天气HTTP API访问,ESP8266通过上文所述提供的API接口地址及端口号加以个人私钥对其进行访问,获取JSON数据格式的天气信息并对其信息格式进行解析。然后,传送至MQTT服务器,实现信息的云存储。最后,传送至用户端。如下图所示,即是ESP8266访问心知天气平台并传输至云端设计流程图。

控制台的搭建

手机控制台的搭建

手机APP利用的是然也物联平台提供的一站式设备接入和管理功能,从而搭建手机控制台。这没什么好说的,自己写个APP端也有好多工具可以利用。

电脑控制台的搭建

除手机检测控制之外,用户也可通过电脑WEB端进行检测控制。本系统中,网页控制台的搭建通过由IBM新兴技术服务团队构建的开源可视化物联网编排工具Node-RED进行开发,此开发工具可基于浏览器的流程编辑器连接设备、服务器和 API 应用。
通过Node-Red搭建WEB控制台,其中网页控制端的dashboard主页面布局。

如下图即为网页控制端主页面,用户也可以通过左侧菜单栏切换至任一场景下的单独信息监控界面。

系统测试

测试方案

本系统搭建完成后,对其进行整体测试。
测试方案将根据该系统所针对场景搭建的特性分为硬件测试方案和软件测试方案,硬件测试方案包括厨房测试部分、储藏室测试部分、阳台测试部分、客厅测试部分、卧室测试部分;软件测试方案主要为手机APP端和电脑WEB端控制台的测试。测试方案陈述如下。
厨房测试部分方案:针对系统接入的火焰检测传感器,通过打火机进行火焰模拟,检测是否可以及时在手机APP端和电脑WEB端显示火焰情况。
储藏室测试部分方案:针对系统接入的人体感应模块,搭配感应LED,检测是否在感应到人体变化时会触发感应LED将其点亮,同时是否将会在手机APP端和电脑WEB端实时显示人体感应模块所能检测范围的感应情况。
阳台测试部分方案:该场景下的智能晾衣架设计,用湿纸团模拟雨水,检测是否智能晾衣架会根据实际状况进行相应的反馈控制以及是否会进行用户端雨水天气状况的实时反馈。
客厅测试部分方案:该系统对客厅场景搭配了温湿度传感器用以检测是否可以实时检测温湿度检测值,并传送至MQTT服务器,最终显示至手机APP端及电脑WEB端。同时,针对该场景下的智能风扇,是否可以在手机APP端以及电脑WEB端进行正确控制。
卧室测试部分方案:该系统针对卧室场景下配置了壁灯,是否通过手机APP或电脑WEB控制台进行点亮。
控制台测试部分方案:手机APP端和电脑WEB端是否可以实时以及一定时间间隔订阅并显示系统相关主题参数以及相关天气信息。另外,是否可以根据实际情况进行主题信息的发布。

测试结果

本系统在测试的过程中,可能会出现很小的时延问题,但是这并不影响系统正常运行,如果更换更为灵敏的硬件模块可能会有更好的效果。总之,系统整体运行情况良好。如下图为手机APP端的测试效果图、图十九为电脑WEB端的测试效果图。

下图为电脑WEB端的测试效果图。

总结

本文针对家庭场景设计的基于ESP8266的智能家庭检测系统旨在便利化人们的生活,使人们少一些生活上不必要的担忧。从某方面来说,也将会间接的舒缓人们的心情。总之吧,本系统的制作达到了设计的最初目的。
以后继续努力,开发一些更有难度的软硬件项目。

基于ESP8266的智能家庭检测系统相关推荐

  1. 基于ESP32的智能家庭健康系统

    M5Stick-c ESP8266 项目背景及概述: 项目最初的想法来源于当下疫情局势,每个人都关心自己及家人的健康状况.因此本产品旨在应用于人们居家隔离或复工复产过程中,对个人身体情况的实时监测.同 ...

  2. Android烟雾监控应用,基于Android的智能家庭监控系统研制

    摘要: 传统的家庭监控系统存在无法远程控制,布线复杂,智能化程度不高等问题.随着无线传感网络和移动互联网迅速的普及在人们的生活中,新一代开源嵌入式软件和硬件技术的不断进步,为智能家庭监控系统的发展提供 ...

  3. 物联网——基于ESP8266的智能学生请假系统,微信小程序与ESP8266的远程信息交互——Prat1

    第一次发文,没什么经验,排版也不会,凑合 本人只是工控专业的一名学生,刚接触物联网不到2个月,分享下目前所学习的经验(头发 -999999) 先介绍下这个东西是干啥的 目前俺们学校学生请假依旧是传统的 ...

  4. 毕业设计 基于树莓派的智能家庭监控系统

    文章目录 0 前言 1 简介 2 主要器件 3 监控系统 Python 实现 安装 OpenCV motion mjpg-streamer 4 部分代码 5 最后 0 前言

  5. 基于 STM 32 的温湿度检测系统

    STM32 最小系统不含外设控制,原理简单,分析最小系统是嵌入式入门的基础.我 们通过课程设计能够综合运用所学嵌入式系统课程和其他先修课程的理论和实际知识, 以及利用 Altium Designer. ...

  6. android有关医疗实现功能,基于Android的智能医疗监测系统的设计与实现_问答库

    随着社会经济的快速发展,工作压力的进一步加大,如今人们对个人健康越来越关注,为了有效减轻家庭医疗支出同时,让人们足不出户就能享受到自身健康检测的高质量医疗服务,智能医疗监测系统成为关注的焦点.另一方面 ...

  7. 基于STM32的智能行车辅助系统(自动大灯,倒车报警,自动雨刷,温湿度传感器,TFT 1.3寸LCD屏幕显示,ESP8266WIFI)

    基于STM32+ESP8266的智能行车辅助系统 基于STM32的智能行车辅助系统(自动大灯,倒车报警,自动雨刷,温湿度传感器,TFT 1.3寸LCD屏幕显示,ESP8266WIFI),这是一个课程设 ...

  8. 最简单DIY基于ESP8266的智能彩灯⑦(APP通过彩虹调色板和WIFI控制WS2812彩灯)

    ESP8266和ESP32智能彩灯开发系列文章目录 第一篇:最简单DIY基于ESP8266的智能彩灯①(在网页用按钮点亮普通RGB灯) 第二篇:最简单DIY基于ESP8266的智能彩灯②(在网页用按键 ...

  9. matlab对摄像头实时运动目标检测,基于Matlab实时运动目标跟踪检测系统

    2012.03 COMPUTER SECURITY 17 学术.技术 基于 Matlab 实时运动目标跟踪检测系统 汪惠兰,林航飞,李赔龙 (同济大学 交通运输与工程学院,上海 201804) 摘 要 ...

最新文章

  1. AI人工智能的未来?AI科技与AI教程?答案都在这里!
  2. if you want to reserve a place at the college library
  3. linux vim修改字符串,Linux系统vi(vim)编辑器命令说明
  4. 两台linux建立GRE隧道
  5. oracle12c新特点之可插拔数据库(Pluggable Database,PDB)
  6. java对象的序列化和反序列化_Java对对象的序列化和反序列化详解
  7. socket长连接server c语言,使用socket建立长连接
  8. 让axios读取本地模拟数据报错404: Error: Request failed with status code 404
  9. 免费会员管理系统实现门店微信会员营销
  10. 陶哲轩实分析 习题5.5.2
  11. 啥是map啥是reduce
  12. pc投屏android软件,Scrcpy安卓电脑投屏软件下载
  13. kata-container安装步骤
  14. 好诗分享_《我想和你一起生活 》
  15. 【zephyr】 设备驱动和设备模型_apds9660 接近(Proximity)传感器(二)
  16. 【GoodERP专题】第一章 GoodERP应用专题之good_expense 费用报销 的使用
  17. SAI新手如何入门?板绘新手如何使用SAI绘画?
  18. 云南新开普一脸通解决方案、医院智慧餐饮一卡通、高校一脸通解决方案
  19. GPS模块(G28U7FTTL)(1)——与单片机通信
  20. 深度:揭秘阿里巴巴的客群画像

热门文章

  1. Sublime Text 3 汉化的简单方法
  2. 英语语法回顾4——定语和定语从句
  3. android获取外放设备,Android 监听耳机外放设备
  4. 平均路径损耗、小尺度衰落、大尺度衰落的区别
  5. Katex一些常用使用方法
  6. 烽火ExMobi引领企业移动应用平台浪潮
  7. Bug heroes虫虫英雄······超详细翻译+基本攻略
  8. PHP获取真实客户端的真实IP
  9. 动态模糊神经网络用于自学习
  10. SVN设置忽略文件夹