×

基于Particle Photon 2的温湿度监测器

消耗积分:0 | 格式:zip | 大小:0.00 MB | 2023-06-12

分享资料个

描述

在这个项目中,我们将使用 Particle Photon 2 构建一个简单的温度和湿度监视器。我们还将学习如何使用 Particle 控制台远程记录和监视这些数据。

Particle Photon 2 基于 Feather 外形规格构建,可以使用 Adafruit FeatherWing 生态系统轻松制作原型。我们将使用 FeatherWing Doubler 添加 OLED 显示器。该显示板有一个板载 QWIIC 连接器,我们将使用它来插入 SHT40 温度/湿度传感器。

Photon 2 通过 I2C 总线与显示器和传感器对话。您唯一需要的焊接是将母接头焊接到 FeatherWing Doubler 上。构建的其余部分是即插即用的。

羽翼加倍器

poYBAGSBLfiAU8xlAAI9h_IPLLw013.png
羽翼加倍器
 

 

展示

pYYBAGSBLfuAXP9fAAHj7niqfnM529.png
Adafruit FeatherWing OLED - 128x64 OLED
 

显示器是一个 128x64 OLED 并使用 SH1107 作为驱动器(不是 SSD1306),但同样易于使用并且 Adafruit 为其提供了库。这款 FeatherWing 显示器背面还有一个QWIIC 连接器,可以非常轻松地添加传感器和外围设备。

传感器

poYBAGSBLf6AZRKZAACKxoqW5Uk395.png
Adafruit Sensirion SHT40 温湿度传感器
 

我们正在使用 Adafruit SHT40 传感器分线板。传感器在 3.3V 下工作并通过 I2C 通信。我们将使用 QWIIC 电缆将传感器连接到显示器 FeatherWing

QWIIC电缆

pYYBAGSBLgGASuRXAAH2Zgha_-g586.png
STEMMA QT / Qwiic JST SH 4 针电缆 - 50 毫米长
 

集会

pYYBAGSBLgmAADh-ABKDuSqM7qk976.jpg
 

固件

我们将为显示器和传感器使用(稍作修改的)Adafruit 库。您可以下载整个项目并在 Particle Workbench 中打开它。从那里您可以编译项目并将其闪存到您的终端设备。

固件相当简单。我们定期读取并在 OLED 上显示传感器值。这些值也可用作粒子变量,您可以从控制台或通过 API 调用访问这些变量。我必须更改库的文件夹结构,以便它们在粒子工作台中进行编译。我已将它们全部包含在项目存储库中。

要将固件上传到您的设备,请克隆或下载本教程末尾提到的 GitHub 存储库,然后在您的Particle Workbench中打开该文件夹然后您可以通过 USB 编译和刷新固件。

poYBAGSBLgyATnLWAAFSFdO0hrI868.png
粒子工作台
 

这是假设您已经设置了 Photon 2 并将其声明为您的 Particle 帐户。

上传固件后,您可以使用 Particle 控制台、Particle CLI、Particle Workbench 或 GET 请求访问温度、湿度和电池电压测量值。

变量将出现在粒子控制台中,如下所示。您只需单击 GET 按钮即可获取最新值。

pYYBAGSBLg6AXEEmAABNAw1pzms395.png
粒子控制台
 

 

poYBAGSBLhuAWuiXABpTZ3BBK4A755.jpg
 

 

 


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

评论(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.lene-v.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:'基于Particle Photon 2的温湿度监测器',//标题 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.lene-v.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);