LoginSignup
4

More than 5 years have passed since last update.

NefryでGrove温湿度センサー(DHT11)を使うメモ

Last updated at Posted at 2017-02-24

前回に続き、今回はGroveの温湿度センサーを使ってみます。

Grove - Temperature&Humidity Sensor

ライブラリなどを調べるときはDHT11で調べましょう。

ライブラリ追加

Arduino IDE > スケッチ > ライブラリのインクルード > ライブラリの管理からライブラリマネージャを開きます。

スクリーンショット 2017-02-25 5.59.19.png

DHT11で検索しましょう。
DHT sensor library by Adafruitをインストールします。

次に https://github.com/adafruit/Adafruit_Sensor から.zipファイルをダウンロードして、Arduino IDEから Arduino IDE > スケッチ > ライブラリのインクルード > .zip形式のライブラリをインストールを選択します。

温度を計測しつつ、湿度によってLEDを変化させる

見出し通りですが、湿度が60%を超えたら青く、59%以下なら赤くするプログラムです。

#include <Nefry.h>
#include "DHT.h"
#define DHTPIN D4     // what digital pin we're connected to

#define DHTTYPE DHT11   // DHT 11

DHT dht(DHTPIN, DHTTYPE);

void setup() {
  Nefry.println("DHTxx test!");
  Nefry.setLed(0,0,0);
  dht.begin();
}

void loop() {
  Nefry.ndelay(2000);
  float h = dht.readHumidity();
  float t = dht.readTemperature();
  float f = dht.readTemperature(true);

  if (isnan(h) || isnan(t) || isnan(f)) {
    Nefry.println("Failed to read from DHT sensor!");
    return;
  }

  float hif = dht.computeHeatIndex(f, h);
  float hic = dht.computeHeatIndex(t, h, false);

  Nefry.print("Humidity: ");
  Nefry.print(h);
  Nefry.print(" %\t");
  Nefry.print("Temperature: ");
  Nefry.print(t);
  Nefry.print(" *C ");
  Nefry.print(f);
  Nefry.print(" *F\t");
  Nefry.print("Heat index: ");
  Nefry.print(hic);
  Nefry.print(" *C ");
  Nefry.print(hif);
  Nefry.println(" *F");

  //湿度が60%を超えたらLEDが青く光り、59%以下だと赤く光る
  if(h > 60){
     Nefry.setLed(0,0,200,50);
  }else{
     Nefry.setLed(200,0,0,50);
  }
}

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4