工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

Arduinoで温湿度ロガーを作る – DHT11とEthernetシールドでSDカード記録

必要なパーツと用品

DHT11 温湿度センサー(4ピン) ×1
Arduino UNO ×1
Arduino Ethernet W5100 Shield ×1
ジャンパーワイヤー ×1
9V電池 ×1
ブレッドボード ×1
9V電池スナップ ×1

使用するアプリ

プロジェクト概要

このプロジェクトについて

Arduinoを使った初めての実用的なプロジェクトとして、温度と湿度をSDカードに記録するデータロガーを作成します。回路はシンプルですが、SDカードライブラリとDHT11ライブラリを組み合わせるコードはややトリッキーです。

作り方

  1. Arduino UNOにEthernetシールドを装着し、以下の回路をブレッドボード上に組みます。
  2. EthernetシールドのSDカードスロットにフォーマット済みのSDカードを挿入。
  3. スケッチをアップロードすると、自動的に測定を開始し、SDカードに datalog.txt ファイルを作成して記録します。
  4. 電源を切ると記録停止、再投入で再開します。
Arduinoで温湿度ロガーを作る – DHT11とEthernetシールドでSDカード記録

注意: 1〜2時間以上の長時間測定を行う場合は、9V電池ではなくACアダプター(ウォールワート)などの常時電源を使用することを推奨します。電池切れでデータが欠損するのを防げます。

ソースコード

Temp_and_Humid.ino(Arduino)

Arduino IDEの「ファイル」→「スケッチ例」→「SD」→「Datalogger」をベースに、DHT11センサー用のコードを追加したものです。元のサンプルはアナログピン3つ分(0〜2)をループしていますが、DHT11のみ使用するため、57行目の条件を analogPin < 3 から analogPin < 1 に変更しています。

/* SD card datalogger
 * DHT11温湿度センサー対応版
 * SDカード接続: MOSI-pin11, MISO-pin12, CLK-pin13, CS-pin4
 */
#include 
#include 
#include 

dht DHT;
#define DHT11_PIN A0
const int chipSelect = 4;

void setup() {
  Serial.begin(9600);
  while (!Serial) { ; }
  Serial.print("Initializing SD card...");
  if (!SD.begin(chipSelect)) {
    Serial.println("Card failed, or not present");
    return;
  }
  Serial.println("card initialized.");
}

void loop() {
  String dataString = "";
  for (int analogPin = 0; analogPin < 1; analogPin++) {
    int chk = DHT.read11(DHT11_PIN);
    dataString += String(chk);
    if (analogPin < 2) {
      dataString += ",";
    }
  }
  File dataFile = SD.open("datalog.txt", FILE_WRITE);
  if (dataFile) {
    dataFile.println(DHT.temperature);
    dataFile.println(DHT.humidity);
    dataFile.close();
    Serial.print("Temperature = ");
    Serial.println(DHT.temperature);
    Serial.print("Humidity = ");
    Serial.println(DHT.humidity);
    delay(600000);  // 10分間隔(600,000ms)
  } else {
    Serial.println("error opening datalog.txt");
  }
}

回路図

Arduinoで温湿度ロガーを作る – DHT11とEthernetシールドでSDカード記録
Arduinoで温湿度ロガーを作る – DHT11とEthernetシールドでSDカード記録

製造プロセス

  1. EzTempでRaspberry Pi上の温度・湿度をシームレスに監視
  2. Arduinoで作る高精度エナジーモニター&データロガー – Dr. Wattsonボード活用
  3. DHT11温湿度センサーで作る温度アラート – LEDとピエゾブザーで視覚/聴覚通知
  4. ArduinoとBluetoothで作るスマート紛失防止タグ「Find Me」
  5. BME280 温湿度・気圧データを Nextion タッチスクリーンに表示
  6. Arduino超音波センサーとProcessingで作るリアルタイム距離測定ソナー
  7. 非接触温度スクリーニングゲート:Arduino MKR1000で迅速・高精度な検温
  8. DHT11 と Blynk で温湿度をリアルタイム監視する Arduino チュートリアル
  9. Arduino Unoと1Sheeldで作る4x4x4 LEDキューブ – インタラクティブLEDプロジェクト
  10. ゲーム用カスタムArduinoジョイスティックハンドルの製作
  11. 精密温度制御チャコールスモーカーキット:Arduino MKR1000で極上BBQを実現