智能烟感应监测实现对烟雾的实时监测,并将监测数据通过Wifi上传至机智云,当烟雾量大到一定程度时,同时会向机智云发送一个报警信号。用户也可以用App远程查看本地的烟雾传感数据以及报警状态。

视频教程及实物展示

视频演示教程:

【十分钟开发物联网】 -- 智能烟雾感应报警设备(Wifi模组)

接线实物图和App监测页面:

硬件端接线图

材料清单

名称 推荐购买源 资料下载
通用版机智云 App 免费 https://download.gizwits.com/zh-cn/p/98/99
ShineBlink 万能物联网开发板 淘宝搜索“机智云”或“ShineBlink”店铺有售 shineblink.com
带机智云GAgent固件的ATK-ESP8266模块 淘宝搜索“机智云”店铺有售 gizwits.com
MQ2 烟雾传感器 淘宝有售
黑色底板 该底板只是为了省掉接杜邦线,让外观好看一些,不是必需品,开发者如果没有可以用杜邦线来替代。如果仍想获取该底板,可通过右边提供的PCB工程资料自己打样PCB制作即可 https://fe9a58.link.yunpan.360.cn/lk/surl_y6mpLtWWB9W#/-0

硬件端完整源代码

--使能USB print打印功能
LIB_UsbConfig("CDC")
--机智云平台为每个产品类别分配的唯一PK和PS,一定要改成您自己的PK和PS
PK = "51fcbcb2d53b42158898e7a15875b927"
PS = "c3ac8bc205ed490a8e99a8b071eb3470"
--初始化Wifi模块
LIB_GizWifiConfig(PK,PS,1000,120,"UART0","D5","D10","D8")
Alarm = 0
--配置A0-A3这四个电压采集通道同时开始工作,当每个通道采集满50个点时缓存满,每个点的采集时间间隔为10ms
LIB_ADConfig(50,10000)
--开始大循环
while(GC(1) == true)
doA0_full_flag, A0_tab = LIB_ADCheckBufFull("A0")--每当A0通道的缓存满以后,计算缓存内的50个元素的平均值,并换算成电压值--由LIB_ADConfig(50,10000)可以算出,此处大概是50X10000us=0.5秒执行一次if A0_full_flag == 1 thenSUM = 0for i = 1, #A0_tab do --此处#A0_tab的值是50,表示A0_tab表内的元素个数SUM = SUM + A0_tab[i]endAVER = SUM / #A0_tab --计算平均采样值--将A0通道的AD值转换成实际电压打印出来out_voltage = AVER*3.6/4096.0--打印出传感器输出的电压值,保留小数点后两位,单位Vprint(string.format("voltage=%.2fV\r\n", out_voltage))--向机智云服务器发送(烟雾传感器电压值)浮点型小数值(范围应是-100.00~500.00)--由于LIB_Giz4GConfig函数种设置的1000ms上传一次传感器的电压值--所以这里即使调用LIB_SendToGizCloud函数发送也不会即时更新LIB_SendToGizCloud("Rf3", out_voltage)
if out_voltage > 1.00 then --烟雾越大电压值越高,最高3.3V
Alarm = 1
--向云发送是否需要报警
LIB_SendToGizCloud("In1", Alarm)
else
Alarm = 0
--向云发送是否需要报警
LIB_SendToGizCloud("In1", Alarm)
endend
end

上面代码中出现的"LIB_"开头的库函数的详细介绍可点击查询。

机智云接入和App开发(三个选择)

选择一:机智云+通用版APP访问设备(难度最低)

通过《Wifi设备接入机智云教程》我们可以很快掌握机智云的接入流程,并使用现成的通用版机智云App即可很快的实现手机App远程访问我们的开发板。

本例中我们使用了"In1”状态位型数据点作为向机智云发送是否烟雾超标的报警信号的数据通道,记得在机智云平台修改相应的数据点的名称。

本例中我们使用了"Rf3”,这个两位小数浮点型数据点来作为向机智云发送烟雾传感器电压值的数据通道,记得在机智云平台修改相应的数据点的名称。

另外别忘了在设置"In1"数据点时,选择“报警”选项。

这样我们就能在https://iiot.gizwits.com/机智云物联网后台中查看到烟雾报警信息了。

► 选择二:机智云+零代码定制版App访问设备(难度较低

在选择二之前,必须完成上面选择一的工作,然后参考《赛博坦零代码App开发(Wifi版)》教程实现定制版App访问设备。

开发好以后的页面如下:

► 选择三:定制化开发APP或微信小程序(难度较高

如果有一定开发能力,开发者可以考虑在机智云免费提供的开源代码上做一定的定制开发形成自己的App。

如果开发者希望开发一个专属的App,机智云也会提供代码开源的安卓和IOS SDK框架,帮助开发者快速完成App开发,开发者仅需关注App的UI和UE设计即可,而相对复杂的协议与错误处理等事项可忽略。关于开源SDK的介绍和获取请进入App开发准备工作以及向导 - 机智云了解更多内容。

如果开发者希望开发一个专属的微信小程序应用, 可以进入App开发准备工作以及向导 - 机智云了解相关开发教程。

十分钟开发物联网:烟雾感应监测(Wifi版)相关推荐

  1. 十分钟开发物联网:智能加湿器(Wifi版)

    智能加湿器设备集成了温湿度传感器.加湿器控制单元.以及Wifi传输模块,ShineBlink万能核心板采集温湿度传感器数据,并将它们上传至机智云,然后我们就可以在远程通过手机App或者Web网页端来访 ...

  2. 十分钟开发物联网:智能气象站(4G版)

    本文实现的气象站集成了各种常用的气象测量传感器(包含:温度.湿度.气压.紫外线.PM2.5.风速.雨水感应),ShineBlink万能核心板采集这些传感器数据,并将它们上传至机智云,然后我们就可以在远 ...

  3. 十分钟开发物联网:汽车防盗GPS追踪(4G版)

    追踪汽车的GPS定位信息以及获取汽车当前运动的三轴加速度值,通过GPS定位信息我们可以判断汽车当前的位置,通过三轴加速度值我们可以判断当前汽车的运动状态(比如是否在运动中或者停止中). 视频教程及实物 ...

  4. 十分钟开发物联网:智慧农业大棚环境监测(4G版)

    农业大棚环境监测设备集成了大棚中一些关键指标的测量传感器(包含:二氧化碳.光照强度.温度.湿度.紫外线),ShineBlink万能核心板采集这些传感器数据,并将它们上传至机智云:然后我们就可以在远程通 ...

  5. php ios表情包,十分钟开发一款 iOS 表情包 App

    十分钟开发一款 iOS 表情包 App 在最近更新的 iOS 10 系统中,苹果开放了 iMessage Stickers 的开发,通俗的说法就是我们现在可以为 iMessage 开发表情包了. 表情 ...

  6. 十分钟开发一款应用,这15个国产低代码开发平台太秀了!

    "低代码开发"最早可追溯到20世纪90年代至21世纪初的编程语言和工具(百度百科).阿里云智能总裁张建锋在钉钉6.0发布会上也表示,"低代码开发",将成为新一代 ...

  7. 十分钟了解物联网主流通信协议

    编者荐语: 以下文章来源于华为云IoT ,作者我是卤蛋 这个文章来自网络,原文链接:https://www.cnblogs.com/hwiot/p/11944839.html,看了全文,觉得不错,因此 ...

  8. 十分钟开发一个调用Activity的PhoneGap插件

    在HybridApp开发中,非常多业务我们是没有办法通过HTML5+js实现的,比方调用第三方的包括Activity的jar包,一些必须使用原生代码才干实现的功能,比方复杂的UI的效果,调用通讯相关的 ...

  9. 十分钟开发出神经网络五子棋

    本文讲述了使用确定性神经网络SDK开发神经网络五子棋的过程,通过控制台项目.MFC对话框项目分别展示了详细的操作和代码,并附带了一个可用于自主创业的实用案例.另外,此处所述的五子棋可以轻易地扩展成其它 ...

最新文章

  1. Android 录音功能直接拿去用
  2. C/C++连接MySql数据库
  3. 在 M1 芯片 Mac 中使用原生 Java 优雅地玩 Minecraft
  4. js 检测input输入值是否全是汉字
  5. c++ const static
  6. django-学生列表的删除操作
  7. 大数据分析必须要会的python函数操作!!!
  8. SVD 与 PCA 的直观解释(2): 特征值与特征向量
  9. Java知识点汇总以及常见面试题
  10. 网络安全实验1——口令攻击和钓鱼攻击
  11. Wing IDE Pro 6 for Mac(Python开发工具)安装破解图文教程
  12. Python代码规范之---代码不规范,亲人两行泪
  13. 软件项目管理学习(一)
  14. U盘安装苹果系统教程,菜鸟一步一步也能成大牛
  15. 负载均衡10年发展,应用交付成核心架构
  16. # [解构如何运用的解构--报错 throw new TypeError(‘Router.use() requires a middleware function but got a ‘ + gett
  17. 利用算子求解图像梯度
  18. 景甜成为特步新晋品牌代言人
  19. 微博消息分析-大数据项目
  20. 英文外链博客资源40个

热门文章

  1. android裁剪图片功能,Android通过ClipDrawable实现图片裁剪功能
  2. Flink电商实时数仓项目03-DWM层
  3. 如何使用机器学习对CFD模拟结果进行预测
  4. Java操作PDF之iText超入门
  5. Windows10 Intel SGX 环境配置
  6. 「世界の中心に立って、愛を叫ぶ」という本を読んだ後の感想
  7. vue预渲染之prerender-spa-plugin解析(二)
  8. 苹果cmsv10如何添加迅雷下载地址
  9. tf.pad详解(能懂版)
  10. matlab地震波褶积正演程序 直达波有频散