« Arduinoで作ろう(25) 気温・湿度・気圧のデータロガー | トップページ | Arduinoで作ろう(27) OLED(有機EL)モジュールを使ってみる »

2019年8月26日 (月)

Arduinoで作ろう(26) 気温・湿度・気圧のデータロガー (その2)

Sdcardshieldrtc_3 

 前回のデータロガーに以前使ったRTCモジュールを追加しました。
これで時刻をちゃんと取得できるので,もうExcelで ごにょごにょ しなくて済みます。

スケッチはコレ→ 20190825sd_write2.ino

/*
  SD card datalogger RTCモジュール付き
 */

#include <SPI.h>
#include <SD.h>
#include <Wire.h>
#include <RtcDS3231.h>
#include "SparkFunBME280.h"
RtcDS3231<TwoWire>
Rtc(Wire);
BME280 sensor;
const int chipSelect = 4;

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

void loop() {
   String dataString = "";
    char buff[12] ;
    RtcDateTime dt = Rtc.GetDateTime() ;
    sprintf(buff, " %02u:%02u:%02u", dt.Hour(), dt.Minute(), dt.Second()) ;
    dataString += String(buff);
    dataString += ",";
    dataString += String(sensor.readTempC());
    dataString += ",";
    dataString += String(sensor.readFloatHumidity());
    dataString += ",";
    dataString += String(sensor.readFloatPressure()/100.0);
 
   File dataFile = SD.open("datalog.csv", FILE_WRITE);
    if (dataFile) {
     dataFile.println(dataString);
     dataFile.close();
     Serial.println(dataString);
    }
  delay(600000); //10分(600000ms)ごとに測定
}

24時間測定した結果がこちら↓ 時刻もちゃんと記録できています。
Image1

|

« Arduinoで作ろう(25) 気温・湿度・気圧のデータロガー | トップページ | Arduinoで作ろう(27) OLED(有機EL)モジュールを使ってみる »

Arduino」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



« Arduinoで作ろう(25) 気温・湿度・気圧のデータロガー | トップページ | Arduinoで作ろう(27) OLED(有機EL)モジュールを使ってみる »