【RT-Thread作品秀】基于物联网云平台的智能环境监测设计-电路方案

  • x8_310633
    了解作者
  • 2.4MB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-05-14 19:08
    上传日期
【RT-Thread作品秀】基于物联网云平台的智能环境监测设计作者:赵帅 概述智能环境监测系统基于 STM32H7系列芯片开发,通过光照传感器与温湿度传感器采集环境中的光照与温湿度数据,通过WIFI将系统采集到的环境数据实时的上传至物联网云平台,也可以通过PC端软件实时的监控环境数据。该系统适用于家庭、办公室、教室等场所的进行环境监控,该系统具有实时性高、功耗低,丢包率低,随时随地监控数据等特点,是一个实用的设计。 开发环境下位机:硬件:stm32f407-atk-explorer 扩展板:DHT11温湿度传感器,BH1750光照传感器,板载AP6212 WIFI模块 RT-Thread版本:RT-Thread V 4.0.3 开发工具及版本:RT-Sudio 上位机: Qt版本:Qt5 开发工具:Qt Creator4.11.0 RT-Thread使用情况概述内核部分:调度器,信号量,事件集 调度器:创建多个线程来实现不同的工作。 信号量:用来同步线程。 事件集:通知数据采集完成 组件部分:IIC框架, Sensor框架,SAL 套接字抽象层 IIC框架:驱动光照传感器,获取光照强度数据 Sensor框架:将温湿度传感器注册到sensor上。使用该框架提高了代码的复用性。 SAL套接字抽象层:该组件实现了对不同网络协议栈或网络实现接口的抽象,并对上层提供一组标准的API接口,方便网络应用的开发与稳定性。 软件包部分: cJSON:C语言实现的极简的解析 JSON 格式的软件包。 Onenet:RT-Thread 针对 OneNET 平台连接做的的适配,通过这个软件包,可以让设备在 RT-Thread 上非常方便的连接 OneNet 平台,完成数据的发送、接收、设备的注册和控制等功能。 pahomqtt,:本软件包是在 Eclipse paho-mqtt 源码包的基础上设计的一套 MQTT 客户端程序。 Webclient:提供设备与 HTTP Server 的通讯的基本功能。 硬件框架使用stm32h7做为系统主控,通过外接dht11传感器、bh1750传感器来采集外界的温湿度数据与光照强度。 使用AP6211wifi模块,实现设备的联网,以及连接云平台的功能。 软件框架说明下位机流程图: 上位机流程图: 上位机数据的获取是通过调用OneNet云平台的API接口来获取数据,因此需要使用HTTP协议。在QT中,QNetworkAccessManager类可以完成基于HTTP协议的数据传输。既可以向网络发送请求,也可以接收网络的应答。但是,具体的网络请求需要通过QNetworkRequest类实现,网络的应答通过QNetworkReply类来实现。在数据获取成功之后,通过调用QT中JSON相关的API函数,根据数据格式匹配出相应的环境数据。之后发送dataSignal()信号,执行setVallue槽函数将数据显示在用户界面上。通过定时器来定时发送get请求,实现数据实时更新的目的。流程图如下图所示。 软件模块说明art_mqtt_init_entry:初始化mqtt,初始化成功后,释放信号量,通知ArtOneNetUploadThread线程可以向OneNet发送数据。 art_onenet_upload_entry:线程接收到事件后,将数据发送至OneNet云平台 art_dht11_read_entry:温湿度数据采集线程,采集到数据后发送事件 art_bh1750_read_entry:光照采集线程,采集到数据后发送事件 演示效果演示视频
21022.zip
  • 代码地址.rar
    124B
  • FqIv8_2kLF_6DpJuhfVAcQOYyodo.png
    410.7KB
  • 基于物联网云平台的智能环境监测设计.docx
    1.2MB
  • FgAsmzGN7s4uNk7mZdqqptYgJDkR.png
    718.8KB
  • Fjazi1GfW5xmqzNNr602S6X4LBgE.png
    30.8KB
内容介绍
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta charset="utf-8"> <meta name="generator" content="pdf2htmlEX"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <link rel="stylesheet" href="https://static.pudn.com/base/css/base.min.css"> <link rel="stylesheet" href="https://static.pudn.com/base/css/fancy.min.css"> <link rel="stylesheet" href="https://static.pudn.com/prod/directory_preview_static/627ffe399b6e2b6d55708a69/raw.css"> <script src="https://static.pudn.com/base/js/compatibility.min.js"></script> <script src="https://static.pudn.com/base/js/pdf2htmlEX.min.js"></script> <script> try{ pdf2htmlEX.defaultViewer = new pdf2htmlEX.Viewer({}); }catch(e){} </script> <title></title> </head> <body> <div id="sidebar" style="display: none"> <div id="outline"> </div> </div> <div id="pf1" class="pf w0 h0" data-page-no="1"><div class="pc pc1 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="https://static.pudn.com/prod/directory_preview_static/627ffe399b6e2b6d55708a69/bg1.jpg"><div class="c x0 y1 w2 h2"><div class="t m0 x1 h3 y2 ff1 fs0 fc0 sc0 ls0 ws0">&#12304;<span class="ff2 sc1">R<span class="_ _0"></span>T<span class="_ _1"></span>-<span class="_ _1"></span>Thread<span class="_ _2"> </span><span class="ff1 sc0">&#20316;&#21697;&#31168;&#12305;</span></span></div><div class="t m0 x1 h4 y3 ff1 fs1 fc1 sc1 ls0 ws0">&#22522;&#20110;&#29289;&#32852;&#32593;&#20113;&#24179;&#21488;&#30340;&#26234;&#33021;&#29615;&#22659;&#30417;&#27979;&#35774;&#35745;</div><div class="t m0 x1 h5 y4 ff1 fs2 fc0 sc0 ls0 ws0">&#20316;&#32773;&#65306;&#36213;&#24069;</div><div class="t m0 x1 h6 y5 ff1 fs3 fc0 sc0 ls0 ws0">&#27010;&#36848;</div><div class="t m0 x1 h5 y6 ff1 fs2 fc1 sc1 ls0 ws0">&#26234;&#33021;<span class="_ _3"></span>&#29615;&#22659;<span class="_ _3"></span>&#30417;&#27979;<span class="_ _3"></span>&#31995;&#32479;<span class="_ _3"></span>&#22522;&#20110;<span class="_ _3"></span> <span class="_ _3"></span><span class="ff3">STM32H7<span class="_ _4"> </span></span>&#31995;&#21015;<span class="_ _3"></span>&#33455;&#29255;<span class="_ _3"></span>&#24320;&#21457;<span class="_ _3"></span>&#65292;&#36890;<span class="_ _3"></span>&#36807;&#20809;<span class="_ _3"></span>&#29031;&#20256;<span class="_ _3"></span>&#24863;&#22120;<span class="_ _3"></span>&#19982;&#28201;<span class="_ _3"></span>&#28287;&#24230;<span class="_ _3"></span>&#20256;&#24863;<span class="_ _3"></span>&#22120;&#37319;<span class="_ _3"></span>&#38598;&#29615;</div><div class="t m0 x1 h5 y7 ff1 fs2 fc1 sc1 ls0 ws0">&#22659;&#20013;&#30340;&#20809;&#29031;&#19982;&#28201;&#28287;&#24230;&#25968;&#25454;&#65292;&#36890;&#36807;<span class="_ _4"> </span><span class="ff3">WIFI<span class="_ _5"> </span></span>&#23558;&#31995;&#32479;&#37319;&#38598;&#21040;&#30340;&#29615;&#22659;&#25968;&#25454;&#23454;&#26102;&#30340;&#19978;&#20256;&#33267;&#29289;&#32852;&#32593;&#20113;&#24179;&#21488;<span class="_ _3"></span>&#65292;</div><div class="t m0 x1 h5 y8 ff1 fs2 fc1 sc1 ls0 ws0">&#20063;&#21487;<span class="_ _3"></span>&#20197;<span class="_ _3"></span>&#36890;&#36807;<span class="_ _4"> </span><span class="ff3">PC<span class="_ _4"> </span></span>&#31471;<span class="_ _3"></span>&#36719;&#20214;<span class="_ _3"></span>&#23454;<span class="_ _3"></span>&#26102;&#30340;<span class="_ _3"></span>&#30417;<span class="_ _3"></span>&#25511;&#29615;<span class="_ _3"></span>&#22659;<span class="_ _3"></span>&#25968;&#25454;<span class="_ _3"></span>&#12290;<span class="_ _3"></span>&#35813;&#31995;<span class="_ _3"></span>&#32479;<span class="_ _3"></span>&#36866;&#29992;<span class="_ _3"></span>&#20110;<span class="_ _3"></span>&#23478;&#24237;<span class="_ _3"></span>&#12289;<span class="_ _3"></span>&#21150;&#20844;<span class="_ _3"></span>&#23460;<span class="_ _3"></span>&#12289;&#25945;<span class="_ _3"></span>&#23460;<span class="_ _3"></span>&#31561;&#22330;<span class="_ _3"></span>&#25152;<span class="_ _3"></span>&#30340;</div><div class="t m0 x1 h5 y9 ff1 fs2 fc1 sc1 ls0 ws0">&#36827;&#34892;<span class="_ _3"></span>&#29615;&#22659;<span class="_ _3"></span>&#30417;&#25511;<span class="_ _3"></span>&#65292;&#35813;<span class="_ _3"></span>&#31995;&#32479;<span class="_ _3"></span>&#20855;&#26377;<span class="_ _3"></span>&#23454;&#26102;<span class="_ _3"></span>&#24615;&#39640;<span class="_ _3"></span>&#12289;&#21151;<span class="_ _3"></span>&#32791;&#20302;<span class="_ _3"></span>&#65292;&#20002;<span class="_ _3"></span>&#21253;&#29575;<span class="_ _3"></span>&#20302;&#65292;<span class="_ _3"></span>&#38543;&#26102;<span class="_ _3"></span>&#38543;&#22320;<span class="_ _3"></span>&#30417;&#25511;<span class="_ _3"></span>&#25968;&#25454;<span class="_ _3"></span>&#31561;&#29305;<span class="_ _3"></span>&#28857;&#65292;<span class="_ _3"></span>&#26159;</div><div class="t m0 x1 h5 ya ff1 fs2 fc1 sc1 ls0 ws0">&#19968;&#20010;&#23454;&#29992;&#30340;&#35774;&#35745;&#12290;</div><div class="t m0 x1 h6 yb ff1 fs3 fc0 sc0 ls0 ws0">&#24320;&#21457;&#29615;&#22659;</div><div class="t m0 x1 h7 yc ff1 fs4 fc1 sc2 ls0 ws0">&#19979;&#20301;&#26426;&#65306;</div><div class="t m0 x1 h8 yd ff1 fs5 fc1 sc2 ls0 ws0">&#30828;&#20214;&#65306;<span class="ff3 sc1">stm32f407-atk-explorer</span></div><div class="t m0 x1 h8 ye ff1 fs5 fc1 sc2 ls0 ws0">&#25193;&#23637;&#26495;&#65306;<span class="ff3 sc1">DHT11<span class="_ _4"> </span><span class="ff1">&#28201;&#28287;&#24230;&#20256;&#24863;&#22120;&#65292;</span>BH1750<span class="_ _4"> </span><span class="ff1">&#20809;&#29031;&#20256;&#24863;&#22120;&#65292;&#26495;&#36733;<span class="_ _4"> </span></span>AP6212 WIFI<span class="_ _4"> </span><span class="ff1">&#27169;</span></span></div><div class="t m0 x1 h8 yf ff1 fs5 fc1 sc1 ls0 ws0">&#22359; </div><div class="t m0 x1 h8 y10 ff4 fs5 fc1 sc1 ls0 ws0">RT-Thread<span class="_ _4"> </span><span class="ff1 sc2">&#29256;&#26412;&#65306;</span><span class="ff3">RT-Thread V 4.0.3</span></div><div class="t m0 x1 h8 y11 ff1 fs5 fc1 sc2 ls0 ws0">&#24320;&#21457;&#24037;&#20855;&#21450;&#29256;&#26412;&#65306;<span class="ff3 sc1">RT-Sudio</span></div><div class="t m0 x1 h7 y12 ff1 fs4 fc1 sc1 ls0 ws0">&#19978;&#20301;&#26426;&#65306;</div></div></div><div class="pi" data-data='{"ctm":[1.611850,0.000000,0.000000,1.611850,0.000000,0.000000]}'></div></div> </body> </html>
评论
    相关推荐
    • 超市收银系统eclipse+access大学课程设计
      山东科技大学济南校区,课程设计设计,模拟一个超市收银系统,希望对大家有用,用的是eclipseaccess数据库window7环境下JDK1.7
    • Eclipse代官山
      Eclipse代官山
    • eclipseaccess数据库的简单连接
      java web与access数据库的连接,里面包含了eclipse开发软件如何与access数据库连接的关键代码
    • Eclipse In Action
      Eclipse In Action 详细介绍java在Eclipse上的编程应用,是一本不可多得的书籍
    • 满汉楼管理系统(access版)
      这是用Eclipse写的...................
    • eclipse 教程
      书名:Eclipse In Action
    • eclipse汉化4.4.0
      Eclipse4.4新增了新的黑色主题,默认显示行号,允许隐藏quick access工具条等功能。 Eclipse4.4汉化包使用说明 1、首先下载eclipse软件,直接解压到任意目录即安装完成; 2、然后将eclipse汉化包复制到软件安装...
    • eclipse swt包
      包中包括的类有:org.eclipse.swt.SWT.class org.eclipse.swt.SWTError.class org.eclipse.swt.SWTException.class org.eclipse.swt.accessibility.ACC.class org.eclipse.swt.accessibility.Accessible.class org....
    • eclipse插件openexolprer
      eclipse插件 快捷打开文档所在位置 目录包含 dropins --de.guhsoft.jinto-0.13.5 --moreclipboard_1.2.0 --propedit_6.0.3 --site-1.10.6 plugins --openexolprer_1.5.0.jar
    • eclipse插件
      解压后,直接放置在dropins目录下即可。