×

LoRa技术的智能家庭无线-室内空气质量侦测方案

消耗积分:0 | 格式:rar | 大小:1.95 MB | 2022-12-28

香香技术员

分享资料个

家庭智慧化是我们一直以来努力的目标,市面上也出现很多智慧的产品,大抵可以分为两类: 一类是大场作品如华硕、Google、Apple小米等等;一类是独立购买的单一功能产品,如无线门铃、智慧插座、无线灯控等等。大厂作品的好处是系统整合完整,可以互相支援连动,但是缺点也很明显,就是‘天地万物﹐朕赐给你的才是你的﹐朕不给﹐你不能抢。 ’,就是大厂没出的你就不能用独立购买单功能的好处是想要什么买什么,但是缺点就是,没有整合,当设备一多起来,光遥控器就要搞死你。

这个系列就要要来合并上面两个优点整合起来,将家里会用到的设备全部无线化,又有统一的界面可以管理。既然讲到无线,当然要提到最适合DIY应用的LoRa无线技术。LoRa有4大优点:
1.使用免授权费就可以使用的Sub1GHz频段,绕射能力强,传输距离长,全家都收的到
2.尺寸小巧,而且省电,不用常常换电池
3.市面上唯一可以建构网路的IOT技术,适合家庭应用
4.设计图与code原厂都开放网路可以查询,建置成本低廉

这次为了简化开发难度我们使用诠鼎代理群登的LoRa模组S76S,S76S的好处是尺寸小巧,只有11mm x 13mm,而且有开发版,脚位有外拉出来,方便开发

之前的第一系列温湿度计无线化帮助我们有了第一个无线的产品跟平台,第二集有了方便可移动的照度侦测,现在就来第三集: 智慧家庭无线化三:室内空品侦测

目标:
1. DIY制作包含LoRa模组的照度计
2. 接收小主机要可以使用电脑,手机监看,并作资料统计
3. 要可以一个小主机接收多个感应器资料
4. 可以整合第一、二集的资料

使用元件:

实作:

一、感应器端硬体设置:
日本夏普SHARP 原厂灰尘感测器GP2Y1014AU,比上代GP2Y11010AU精度提高15%,在一致性上可以和PM2.5激光感测器对比.可测量0.8微米以上的微小粒子,感知烟草产生的烟气和花粉,房屋粉尘等.体积小,重量轻,便于安装. 接线示意图如下

实际接线图如下

二、ATMEGA328跟照度计读取设定:
这个空气侦测元件的原理就是利用光学来感测空气中的尘埃粒子,其内部对角安装红外线发光二极体和光电晶体,使其能够探测空气中尘埃反射光
即使非常细小的如烟草烟雾颗粒也能够被检测到,通常应用在空气净化系统中。
所以我们透过D2脚位点亮内部的LED,再用类比A0依照粒径转换公式去换算出空气品质的数值
宣告与启动设定画面

三、S76S设定:
S76S使用的是群登P2P的程式码
这个程式码的特点是已经定义好他的群组为1个Master对32个Slave,每一个Slave占用的时间为0.5秒,所以询问完一个群组为16秒钟
32个Slave的设计是适合智慧家庭的
架构图如下:
设定如下:
详细设定可以参考第一集或是可以看附件的手册
我们这里直接写好子函式,呼叫就可以设定设定

四、ATMEGA328+空气品质侦测器GP2Y1014AU+LoRa:
以上全部设定完成之后,以Arduino端只要做一件事情,就是将空气品质的资料透过S76S送出去,因为这是空品侦测,不需要控制,所以只要单向传送就可以了。

资料传送子函式:

感应器端主程式:

完整的程式码请看附件

五、接收器端硬体设置:

将S76S的3.3V与GND分别接到ESP-32S左右两边的pin19,再将S76S的TX、RX分别接到ESP-32S的pin17与pin16
接线示意图如下

实际接线图如下

六、S76S设定:
S76S的设定同上,差别是,改成设定为Master,在启动即可
一样已经写成子函式直接呼叫即可设定

七、ESP-32S设定:

ESP-32S的部分,一样可以利用ARduino编辑程式,
实际操作说明:
宣告设定

启动设定

网路校时子函式

网路传送子函式:

主程式:

展示:
因为这个方案是利用ESP-32S将资料用UDP的方式丢出 所以接收端就非常自由,只要可以接收UDP讯号的设备都可以当作 接收界面
在这里是用IBM开发的Node-Red去做画面演示

第一步:先将流程图一一拉出来设定好:
如下图

第二步就是将资料显示出来就大功告成了
如下图:因为是室内所以空气品质不错,有一小段数值拔高,是我为了测试是否有作用对侦测器哈气,表示有用

附件档案列表

场景应用图

program_35391_news_scenery_diagram_url.png

展示板照片

program_35391_news_pic_front_url.jpegprogram_35391_news_pic_back_url.jpeg

方案方块图

program_35391_news_func_diagram_url.png

架构图Sensor

program_35391_news_other_diagram_url_1.png

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

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !

'+ '

'+ '

'+ ''+ '
'+ ''+ ''+ '
'+ ''+ '' ); $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code ==5){ $(pop_this).attr('href',"/login/index.html"); return false } if(data.code == 2){ //跳转到VIP升级页面 window.location.href="//m.obk20.com/vip/index?aid=" + webid return false } //是会员 if (data.code > 0) { $('body').append(htmlSetNormalDownload); var getWidth=$("#poplayer").width(); $("#poplayer").css("margin-left","-"+getWidth/2+"px"); $('#tips').html(data.msg) $('.download_confirm').click(function(){ $('#dialog').remove(); }) } else { var down_url = $('#vipdownload').attr('data-url'); isBindAnalysisForm(pop_this, down_url, 1) } }); }); //是否开通VIP $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code == 2 || data.code ==5){ //跳转到VIP升级页面 $('#vipdownload>span').text("开通VIP 免费下载") return false }else{ // 待续费 if(data.code == 3) { vipExpiredInfo.ifVipExpired = true vipExpiredInfo.vipExpiredDate = data.data.endoftime } $('#vipdownload .icon-vip-tips').remove() $('#vipdownload>span').text("VIP免积分下载") } }); }).on("click",".download_cancel",function(){ $('#dialog').remove(); }) var setWeixinShare={};//定义默认的微信分享信息,页面如果要自定义分享,直接更改此变量即可 if(window.navigator.userAgent.toLowerCase().match(/MicroMessenger/i) == 'micromessenger'){ var d={ title:'LoRa技术的智能家庭无线-室内空气质量侦测方案',//标题 desc:$('[name=description]').attr("content"), //描述 imgUrl:'https://'+location.host+'/static/images/ele-logo.png',// 分享图标,默认是logo link:'',//链接 type:'',// 分享类型,music、video或link,不填默认为link dataUrl:'',//如果type是music或video,则要提供数据链接,默认为空 success:'', // 用户确认分享后执行的回调函数 cancel:''// 用户取消分享后执行的回调函数 } setWeixinShare=$.extend(d,setWeixinShare); $.ajax({ url:"//www.obk20.com/app/wechat/index.php?s=Home/ShareConfig/index", data:"share_url="+encodeURIComponent(location.href)+"&format=jsonp&domain=m", type:'get', dataType:'jsonp', success:function(res){ if(res.status!="successed"){ return false; } $.getScript('https://res.wx.qq.com/open/js/jweixin-1.0.0.js',function(result,status){ if(status!="success"){ return false; } var getWxCfg=res.data; wx.config({ //debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId:getWxCfg.appId, // 必填,公众号的唯一标识 timestamp:getWxCfg.timestamp, // 必填,生成签名的时间戳 nonceStr:getWxCfg.nonceStr, // 必填,生成签名的随机串 signature:getWxCfg.signature,// 必填,签名,见附录1 jsApiList:['onMenuShareTimeline','onMenuShareAppMessage','onMenuShareQQ','onMenuShareWeibo','onMenuShareQZone'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 }); wx.ready(function(){ //获取“分享到朋友圈”按钮点击状态及自定义分享内容接口 wx.onMenuShareTimeline({ title: setWeixinShare.title, // 分享标题 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享给朋友”按钮点击状态及自定义分享内容接口 wx.onMenuShareAppMessage({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 type: setWeixinShare.type, // 分享类型,music、video或link,不填默认为link dataUrl: setWeixinShare.dataUrl, // 如果type是music或video,则要提供数据链接,默认为空 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ”按钮点击状态及自定义分享内容接口 wx.onMenuShareQQ({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口 wx.onMenuShareWeibo({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ空间”按钮点击状态及自定义分享内容接口 wx.onMenuShareQZone({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); }); }); } }); } function openX_ad(posterid, htmlid, width, height) { if ($(htmlid).length > 0) { var randomnumber = Math.random(); var now_url = encodeURIComponent(window.location.href); var ga = document.createElement('iframe'); ga.src = 'https://www1.elecfans.com/www/delivery/myafr.php?target=_blank&cb=' + randomnumber + '&zoneid=' + posterid+'&prefer='+now_url; ga.width = width; ga.height = height; ga.frameBorder = 0; ga.scrolling = 'no'; var s = $(htmlid).append(ga); } } openX_ad(828, '#berry-300', 300, 250);