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

  • 1
    いいね
  • 0
    コメント

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

Grove - Temperature&Humidity Sensor

http://wiki.seeed.cc/Grove-TemperatureAndHumidity_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);
  }
}