重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
小编给大家分享一下如何利用树莓派监控家里温度和湿度,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
成都创新互联公司是少有的网站建设、成都网站建设、营销型企业网站、小程序制作、手机APP,开发、制作、设计、卖友情链接、推广优化一站式服务网络公司,2013年至今,坚持透明化,价格低,无套路经营理念。让网页惊喜每一位访客多年来深受用户好评
硬件需求
WIFI无线路由器
Raspberry Pi B+
DHT11 温湿度传感器和4.7k 欧姆的电阻
面包板一块
一些母对公的杜邦线
树莓派运行起来
首先你的树莓派已经可以正常启动和工作。
具体操作请参考官方快速启动文档:https://www.raspberrypi.org/help/quick-start-guide/
更新系统
sudo apt-get update sudo apt-get dist-upgrade -y sudo reboot
进入树莓派SSH,下载和编译芯片库
确定树莓派芯片型号, 我的是树莓派B+,CPU是 博通BCM2836所以我下在的是:t http://www.airspayce.com/mikem/bcm2835/bcm2835-1.46.tar.gz
注:实际上支持2836, 通过cpuinfo查询史实际上是2709,可以查看:http://bbs.21ic.com/forum.php?mod=viewthread&tid=1180900。
下载
wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.46.tar.gz
安装
tar xzvf bcm2835-1.46.tar.gz cd bcm2835-1.46 ./configure make sudo make check sudo make install
下载和安装Node.js:
由于Node.js安装在嵌入式设备,树莓派使用的ARMv7芯片,使用Node.js时则需要关注Node.js版本,由于node4.0以上版本已经提供了armv7的bin包,但是由于存在兼容性问题我们还是使用node-v0.12.7.tar.gz
下载
wget http://nodejs.org/dist/v0.12.7/node-v0.12.7.tar.gz
编译Node.js
tar xzvf node-v0.12.7.tar.gz cd node-v0.12.7 ./configure make sudo make install
这个过程需要花费2小时左右的时间,可能中间还会出现错误退出,继续执行未完成的命令就好。
下载相关依赖包
npm install node-dht-sensor express ejs
8.硬件设备接法
认识树莓派GPIO排插,可以参考这个:
/upload/otherpic51/248119.png
DHT11温湿度传感器
/upload/otherpic51/248121.jpg
9、接法:
1、连接VCC到板的子3.3v,
2、 GND连接板子的GND,DATA和VCC之间需要放置一个4.7K电阻,
3、DATA连接GPIO端口
注意:请在树莓派关机断电情况下操作。
创建一个WIFI访问的Node.js项目
pi@raspberrypi ~/app $ find
. ./views ./views/interface.ejs ./app.js ./js ./public ./public/pictures ./public/css ./public/js ./public/js/interface.js ./public/js/jquery-1.8.3.min.js
app.js
var sensorLib = require('node-dht-sensor'); var express = require('express'); var ejs = require('ejs'); var app = express(); app.set('views', __dirname + '/views'); app.set('view engine', 'ejs') app.use(express.static(__dirname + '/public')) var DHT11_GPIO = 21; //GPIO端口 var DHT11 = 11; //传感器型号 sensorLib.initialize(DHT11, DHT11_GPIO); app.get('/interface', function(req, res){ var readout = sensorLib.read(); // console.dir(readout) res.render('interface', {temperature: readout.temperature.toFixed(2), humidity: readout.humidity.toFixed(2)}); }); var server = app.listen(3000, function() { console.log('Listening on port %d', server.address().port); });
interface.js树莓派
- 温度:<%=temperature%>。C
- 湿度:<%=humidity%>%
启动项目
pi@raspberrypi ~/app $ sudo node app.js Listening on port 3000
访问页面
在浏览器中输入:
http://192.168.8.24:3000/interface
树莓派 温度:20.00。C 湿度:38.00%
以上是“如何利用树莓派监控家里温度和湿度”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!