0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【IoT毕设】esp8266模块+机智云AIoT+宿舍事故预防系统

机智云 2022-07-13 15:55 次阅读

摘要:寝室安全对于大学生来说是非常重要的,每当学生离开宿舍时,总会有部分学生担心寝室内用水用电情况,故本文利用机智云esp8266 Wi-Fi模块和嵌入式平台技术,结合各类传感器,设计制作一个宿舍事故预防系统。通过该系统,用户可以机智云平台制作的APP读取寝室用电功率、水流量等数据,同时可利用这个APP远程控制宿舍的用电器开关,从而解决学生对宿舍安全的担忧问题。经过软硬件调试编程开发。

本系统实现了数据采集和上报,手机APP远程查看环境数据和远程控制用电器开关等功能,在提供安全舒适的生活同时,还为广大物联网开发者提供一定的参考价值。

引言


物联网已经出现在人们视线中十几年,自从被提出物联网这一概念之后,受到的关注越来越多。一些器件通过设备与网络连接,从而实现一些功能,这种想法改变了人们对于网络的认知。在这种背景下,各个领域都注入了新的思路来思考与改变,从而在不同程度上推动各个领域的发展。智能家居的出现其实是比物联网的想法出现的时间要早,智能家居到现在已经发展了很多的理论与成果,而且物联网的出现加快了智能家居的发展,智能家居发展非常迅速,从移动端如手机操控到根据环境自动调控,甚至语音控制,直到今天身边经常能听到的人工智能,不得不感叹技术的高速发展。


虽然智能家居这一概念最早国外提出的,但近些年,我国在这方面也是投入较多,当然也取得了一些喜人的成绩,我国许多企业结合本身的性质,在智能家居的概念下迅速发展,其中最有代表性、最令人印象深刻自然是与传统家电深度结合,使得家庭生活更加便利舒适。本文为在智能家居的概念基础上设计了一种基于机智云平台的宿舍事故预防系统。对于机智云平台,这是一个用于物联网开发的云服务平台,为开发者提供了自助式智能硬件开发工具与开放的云端服务。它可以自动生成MCU和移动终端的代码,通过傻瓜化的自助工具、完善的SDK与API服务能力最大限度降低了物联网硬件开发的技术门槛,从而帮助我们更好的完善本系统。


本系统中主控制芯片GD32F103C8T6通过esp8266 Wi-Fi无线通信模块将传感器测量到的宿舍内的一些环境数据发送给基于机智云平台开发的手机APP界面来显示,从而实现远程操作控制,构成一个简易的智能家居系统,从而来达到减少资源浪费及预防宿舍事故的效果,当学生离开宿舍期间,可能忧心的宿舍水电问题,以及电器未断电的情况。主要是采集与寝室安全息息相关的重要数据,其他一些更偏向居住舒适度的环境参数不是本项目的重要研究方向,如有机会,在本系统的未来方向进行完善。


1 系统硬件设计

1.1 主控模块GD32F103C8T6

本系统采用的GD32F103C8T6是基于ARM Cortex-M3处理器32位通用微控制器。其存储器的组织用了哈佛结构,预先定义的存储器映射和高达4GB的存储空间,充分保证了系统的灵活性和扩展性。


在功能实现方面,与STM32系列基本一致,故测试时可以先使用比较熟悉的stm32系列进行开发,然后再将功能逐渐移植到GD32系列,使用国产芯片GD32主要是考虑到stm32系列是毕竟不是我国研发,而我国的发展政策注重发展国产化,目前我国的民用电子军用电子设备中采用的大多是进口电子元器件,一旦我们遭到外国的技术封锁,会在芯片设计上受到非常大的打击,因此电子元器件国产化具有特别重要的现实和军事意义,故本文使用国产的GD32系列。


1.2 ESP8266模块


系统采用ESP8266 Wi-Fi模块为乐鑫公司开发的一种物联网专用芯片,其成本低,设计周期短,并且非常适合做小量数据的无线传输,该模块既可以通过串口用AT指令进行控制,也可使用厂家提供的SDK来进行开发。在工作前,该模块需要烧录固件,本系统烧录的是机智云模块的固件,在烧录模块方面,机智云有提供非常详细的方案,如有其它需求也可以根据其提供的指导进行相应的固件烧录。


ESP8266 Wi-Fi模块采用串口与单片机通信,内置TCP/IP协议栈,ESP8266WFi模块有两种工作模式Soft Ap和Airlink两种方式配置入网。Airlink模式通过路由器和英特网相连,属于英特网内通信;Ap模式将ESP8266作为一个热点。本系统采用的是Airlink模式配置入网。


1.3 水流量传感器


本系统采用YF-S201水流量传感器来进行水流量的检测,最低额定工作电压DC4.5 5V-24V,该水流量传感器主要由塑料阀体、水流转子组件和霍尔传感器组成[1]。叶轮内部镶有不锈钢珠,永远耐磨,密封圈采用上,下受力的结构永不漏水,从结构上而言,非常适合长期的水流量检测,且制作该模块使用的所有材料都符合ROHS检测标准。


当有水流通过水流转子组件时,磁性转子开始转动,其转速会随着水流量增加而增加,使得霍尔水流传感器输出相应脉冲信号,其输出的脉冲个数与水流量的大小有关,水流量越大,其单位时间产生的脉冲个数越多。单片机通过统计单位时间内脉冲的个数,从而得到当前水流量的相对值,并通过Wi-Fi模块发送到手机APP的显示界面上。


1.4 用电功率检测模块


本系统采用CL1N交流单相电流模块来采集电流电压等所需要的电参数,通过电流互感器采集电流参数,电压互感器采集电压参数,并由此计算所以需要的参数,其电压测量范围为5V到500V,电流测量范围为0.04A到50A,其频率范围为45HZ~65HZ,由此可得出有功功率,视在功率,无功功率,功率因素等参数,本系统主要通过此模块来采集宿舍内的电流电压参数,从而得到功率参数,通过其串口协议发送到单片机上,同时该模块可为本系统的后续发展测量其他电参数作铺垫。(总体硬件电路如图1所示)

poYBAGLOd2qAG4rPAAGrxbUhcY8360.png

图1 硬件电路原理


2 系统软件设计

2.1 机智云AIoT平台应用开发

在注册登录后进入开发者界面,选择创建新产品,并设置产品名称,选择产品分类和技术方案、通信方式、数据传输方式等参数。如图所示,本系统设计的产品分类根据情况选择智能家居的生活小家电的其他类,其产品名称为远程监测控制系统,方案为Wi-Fi/移动网络方案,通信方式为Wi-Fi,数据定长,功耗正常。详情如图2所示[2-3]。

poYBAGLOd3KAVBJFAAGTVguohG4301.png

图2 机智云产品开发界面


接下来便是根据系统所需要的具体情况定义相应的数据点,数据点即设备产品的功能的抽象,用于描述产品功能及其参数。本系统所用的数据点包括只读:表示该数据点非控制,数据只支持从设备上报;可写:表示该数据点可控制。设备端可上报该数据点数据;云端/客户端可对该数据点的数据做出控制。通过这两类数据的设立,达成远程控制宿舍电器的开关,对宿舍具体环境参数的测量上报,从而实现代码总体布局,本系统的具体数据点的设立如图3所示选用了两个可写且数据类型为布尔值的数据点、两个只读且数据类型为数值的数据点来实现对应的功能。


pYYBAGLOd4aAQQlzAAF_LqDtuDw585.png

图3 数据点设立界面


在MCU开发界面选择相应的硬件平台,并输入机智云平台对应的安全密钥,然后生成代码包,机智云平台会根据自身选择的硬件方案,自动生成MCU开发中必要的代码,加快应用程序开发流程。本次设计按照图4选择生成独立MCU方案,其硬件平台选择stm32F103C8x,后续代码调试完成可移植到相应的GD32F103C8T6模块,使得项目更加顺利的完成。


pYYBAGLOd5OAeyaBAAEA6qWghnk524.png

图4 硬件方案生成界面


pYYBAGLOd5uAJrKCAADPYjLECBg899.png

图5 手机APP界面


MCU工程弄好后,编译并下载,接下来可以通过机智云平台官网的提供APP测试,进入机智云APP,注册账号登录或者点击跳过,点击添加设备,输入手机连接的路由器的ssid名称和密码,点击下一步,接下来长按KEY2 2S,触发Air Link方式配置入网,此时APP会发出配置包,并提示正在搜索设备,连接好后APP会返回设备列表界面并显示出该设备。在检查单片机联网无问题后,可重新打开机智云生成的代码,进行系统所需对应功能实现的具体代码的编写,单片机联网后手机APP界面如图5所示。//Gizwits协议初始化


pYYBAGLOd6GAAdIFAAD_LtJRVAo824.png


2.2 嵌入式平台开发

本文基于机智云平台生成的SDK进行开发。用户程序入口为user_init(),完成应用的初始化功能:I/O口初始化、机智云服务初始化。初始化完成后进入空循环模式,等待连接Wi-Fi并设置按键回调函数,Wi-Fi定时连接中断,传感器定时检测中断。一旦中断到达,CPU跳转到中断服务函数进行中断处理。


用电功率模块通过电压电流互感器测量对应的电参数,根据P=UI计算出对应的电功率,然后通过串口协议发送给单片机。霍尔水流量传感器内部有水流经过时,会产生对应个数的脉冲,我们使用GD32单片机外部触发定时器计数,得到单位时间里霍尔元件产生的脉冲个数,从而计算出对应的水流量,单片机获取到参数后,发送到ESP8266Wi-Fi模块,然后传输到手机APP。


当检测Wi-Fi到连接成功后,设置数据更新定时器。定时检测用电功率和用水量等环境数据,并将检测数据上传至机智云服务器[4-5]。当初次使用需配置Wi-Fi信息,可长按按键启动一键配置模式,使用手机APP进行配置,配置完成后设备连接Wi-Fi,连接成功后进行数据更新。

poYBAGLOd6mAdXdLAAF7zVuUQGA752.png


3 结语

本文基于机智云物联网平台设计开发了宿舍事故预防系统,主要有传感信息的采集,基于Wi-Fi的信号传输。经过调试,能够在通过手机APP查看宿舍内用电功率和水流量的情况,同时还可以远程操控宿舍的电器的开关,当宿舍用电过载时,还可以自动关闭电器,来达到减少资源浪费及预防宿舍事故的目的。


但在与宿舍电器接洽方面不够深入,只能起到开关的作用,不能对电器进行更精细的调节,该系统在后续应与更多的电器进行连接,例如空调,热水器,并与这些较为精密的电器有跟深入的联系,不局限于单纯的开关。同时,环境参数只采取了与安全相关最重要的部分,在接下来的开发中可以加入更多的环境参数,可根据功率传感器模块进行更深入的电参数测量,也可以加入与宿舍环境息息相关的光照、温湿度、空气质量等环境参数。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ESP8266
    +关注

    关注

    50

    文章

    962

    浏览量

    44813
收藏 人收藏

    评论

    相关推荐

    ESP8266 太空人动画的 OLED 显示

    ESP8266 太空人动画的 OLED 显示
    的头像 发表于 10-08 15:06 205次阅读
    <b class='flag-5'>ESP8266</b> 太空人动画的 OLED 显示

    STM32 ESP8266阿里链接源码

    stm32F103C8T6 ESP8266 物联网电表 登录阿里
    发表于 08-29 14:21 5次下载

    esp32和esp8266代码共用吗

    本文将介绍ESP32和ESP8266两款流行的微控制器在代码共用性方面的可能性与差异性。 一、引言 随着物联网技术的飞速发展,越来越多的智能设备开始进入我们的生活。其中,ESP32和ESP82
    的头像 发表于 08-19 18:23 957次阅读

    esp8266esp32区别是什么

    以下是关于ESP8266ESP32的主要区别: 处理器和架构 : ESP8266 :使用一个Tensilica L106 80MHz的处理器,属于Xtensa架构。 ESP32 :使
    的头像 发表于 08-19 18:16 4211次阅读

    esp8266不烧录可以使用吗

    ESP8266是一款非常流行的Wi-Fi模块,广泛应用于物联网项目中。然而,如果不进行烧录,ESP8266将无法正常工作。 1. ESP8266简介
    的头像 发表于 08-19 17:28 610次阅读

    esp8266wifi模块怎么连接手机

    ESP8266 WiFi模块连接手机主要可以通过两种方式实现: 通过路由器连接(STA模式)和直接作为热点连接(AP模式) 。以下是两种连接方式的步骤: 一、通过路由器连接(STA模式) 配置
    的头像 发表于 08-19 17:27 2132次阅读

    机智ESP8266开发板RGB彩灯控件

    随着智能家居技术的迅猛发展,RGB彩灯控件正逐渐成为现代家庭不可或缺的一部分。在这一潮流中,机智(Gizwits)的ESP8266开发板RGB彩灯控件以其先进的物联网技术和多样化的灯光控制功能,为
    的头像 发表于 08-09 08:10 339次阅读
    <b class='flag-5'>机智</b><b class='flag-5'>云</b><b class='flag-5'>ESP8266</b>开发板RGB彩灯控件

    STM32F103 + ESP8266机智开发常见问题集锦:入门者必读!

    关于ESP8266模块的选择针对初学者,强烈建议选择带有串口的ESP8266开发板!这可以避免像我曾经遇到的烧录固件失败等问题。推荐直接购买已预装机智
    的头像 发表于 07-18 08:11 397次阅读
    STM32F103 + <b class='flag-5'>ESP8266</b>与<b class='flag-5'>机智</b><b class='flag-5'>云</b>开发常见问题集锦:入门者必读!

    ESP8266 IoT_Demo行不通的原因?

    我是ESP8266的新手。 我使用以下开发板: http://www.addicore.com/d1-devboard-p/ad286.htm 基于 ESP8266mod AI Thinker 模块
    发表于 07-11 08:13

    个人机智开发实践:经验总结与技术分享

    无线模块的GAgent固件。例如,我使用了正点原子的esp8266模块,选择了对应的GAgentforESP8266固件。5.MCU方案代码移植6.将
    的头像 发表于 07-05 08:10 298次阅读
    个人<b class='flag-5'>机智</b><b class='flag-5'>云</b>开发实践:经验总结与技术分享

    国产低成本Wi-Fi SoC解决方案芯片ESP8266ESP8285对比差异

    ESP8266ESP8285对比差异 ESP8285相当于在ESP8266基础上多加了1/2MB Flash, ESP8285与
    的头像 发表于 05-17 11:44 1168次阅读
    国产低成本Wi-Fi SoC解决方案芯片<b class='flag-5'>ESP8266</b>与<b class='flag-5'>ESP</b>8285对比差异

    确定ESP8266固件下载成功的方法

    在物联网设备的开发过程中,确定esp8266固件是否成功下载至设备十分关键。以下是一种简单有效的确认方法:机智物联网平台首先,确保你的ESP8266
    的头像 发表于 05-16 08:10 504次阅读
    确定<b class='flag-5'>ESP8266</b>固件下载成功的方法

    使用Wi-Fi ESP8266方案模组接入平台

    ESP8266模块芯片是基于无线通信协议的UARTWi-Fi透传模块芯片,支持802.11b/g/n的无线标准,并带有三种可选择的工作模式。ESP8266
    的头像 发表于 05-10 08:20 1721次阅读
    使用Wi-Fi <b class='flag-5'>ESP8266</b>方案模组接入<b class='flag-5'>云</b>平台

    STM32、ESP8266与MQTT连接阿里物联网的串口通信异常解析

    STM32、ESP8266与MQTT协议连接阿里物联网平台时常见的串口通信异常介绍 在构建物联网应用时,STM32、ESP8266与MQTT协议的结合是实现设备与网络间稳定通信的关键。然而,在连接
    的头像 发表于 04-19 17:19 1361次阅读

    单片机怎么连接wifi模块esp

    Arduino 编写代码并测试连接 使用AT命令进行WiFi配置 常见的问题与解决方法 接下来,让我们逐步了解这些内容。 ESP8266简介 ESP8266是一款低成本的系统级芯片,内置WiFi
    的头像 发表于 12-25 13:42 2288次阅读