溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何利用樹莓派監(jiān)控家里溫度和濕度

發(fā)布時間:2021-11-20 09:22:02 來源:億速云 閱讀:338 作者:小新 欄目:互聯(lián)網(wǎng)科技

小編給大家分享一下如何利用樹莓派監(jiān)控家里溫度和濕度,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

  1. 硬件需求

    • WIFI無線路由器

    • Raspberry Pi B+

    • DHT11 溫濕度傳感器和4.7k 歐姆的電阻

    • 面包板一塊

    • 一些母對公的杜邦線

  2. 樹莓派運行起來
        首先你的樹莓派已經(jīng)可以正常啟動和工作。
        具體操作請參考官方快速啟動文檔:https://www.raspberrypi.org/help/quick-start-guide/

  3. 更新系統(tǒng)

  4. sudo apt-get update
    sudo apt-get dist-upgrade -y
    sudo reboot

  5. 進入樹莓派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。
        
    下載

  6. 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
  7. 下載和安裝Node.js:
        由于Node.js安裝在嵌入式設(shè)備,樹莓派使用的ARMv7芯片,使用Node.js時則需要關(guān)注Node.js版本,由于node4.0以上版本已經(jīng)提供了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小時左右的時間,可能中間還會出現(xiàn)錯誤退出,繼續(xù)執(zhí)行未完成的命令就好。

            下載相關(guān)依賴包

npm install node-dht-sensor express ejs

    8.硬件設(shè)備接法

   認識樹莓派GPIO排插,可以參考這個:   

https://cache.yisu.com/upload/information/20210521/354/248119.png


    DHT11溫濕度傳感器

https://cache.yisu.com/upload/information/20210521/354/248121.jpg

9、接法:

     1、連接VCC到板的子3.3v,

    2、 GND連接板子的GND,DATA和VCC之間需要放置一個4.7K電阻,

    3、DATA連接GPIO端口

注意:請在樹莓派關(guān)機斷電情況下操作。

  1. 創(chuàng)建一個WIFI訪問的Node.js項目

  2. pi@raspberrypi ~/app $ find
  3. .
    ./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
  4. app.js
  5. 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);
    });


  6. interface.js
    <doctype html>
    <h2>樹莓派</h2>  
    <ul>  
        <li>溫度:<%=temperature%>。C</li>
        <li>濕度:<%=humidity%>%</li>
    </ul>

啟動項目

  1. pi@raspberrypi ~/app $ sudo node app.js 
    Listening on port 3000

訪問頁面
在瀏覽器中輸入:

  1. http://192.168.8.24:3000/interface
  2. 樹莓派
    溫度:20.00。C
    濕度:38.00%

    

以上是“如何利用樹莓派監(jiān)控家里溫度和濕度”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI