Arduinoで温湿度計 #2

公開日: 電子工作 | , , , , ,

Arduinoで温湿度データロガー

今回は、前回作った温湿度計にRTCモジュールとSDカードアダプタを取り付けて温湿度データロガーを作りました。

Arduinoで温湿度データロガー

Arduinoで温湿度データロガー

ブレッドボード1枚に収まらなかったので、2枚使ってます。

電源にUSBモバイルバッテリーを使って動かしています。
これでPC不要、Arduinoだけで温湿度ログが取得できます。

 

回路

Arduinoで温湿度データロガー 回路図

部品 数量 記号 備考(秋月電子へのリンク)
Arduino 1   Arduino UNO
温湿度センサー 1 U1 AE-HDC1000
LCDモジュール 1 U2 AE-AQM0802
RTCモジュール 1 U3 AE-RX-8025NB
SDカードアダプタ 1 U4 AE-MICRO-SD-DIP
コンデンサー 1 C1 0.1uF
ダイオード 3 D1-D3 小信号用ダイオード
抵抗 5 R1-R5 10kΩ
タクトスイッチ 2 SW1,SW2 DTS-6

 

 

プログラム

Download – thermo_hygro_logger.ino

Arduino UNO用のソースファイルです。
コンパイル・書き込みはArduino 1.0.5を利用して確認しています。

 

動作説明

このプログラムは、1秒毎に温湿度をLCDへの表示・SDカードに記録をします。
LCD表示・SDカード記録以外の時間Arduinoは、スリープ状態を保ち消費電力を抑えています(たぶん)。
スリープから1秒毎にウェイクアップして、処理が終了するとまたスリープする動作を繰り返します。
1秒毎に起きるトリガーは、RTCモジュールのINTAのパルス出力を利用しています。

ログを記録できる時間の長さはチェックしていません。
10時間程は実際に動作させてみましたが、問題無くログ取りが出来ました。
尚、経過時間(Elapse)は、unsigned intで保持しているので、65535秒で一旦0に戻ります。

 

操作方法

ログモード

Arduinoを普通に起動(リセット)すると、ログモードになります。
ログモードでは、1秒毎に温湿度をLCDに表示し、そしてSDカードに記録していきます。

LCD表示内容

SW2を押し続けると、LCDへの表示の内容が変わります。

《温湿度表示》→《日時表示》→《ファイル名・経過時間表示》

  • 温湿度表示
    Arduinoで温湿度データロガー
    上が温度(℃)、下が湿度(%)
     
  • 日時表示
    Arduinoで温湿度データロガー
    上が日付(年/月/日)、下が時間(時:分:秒)
     
  • ファイル名・経過時間表示
    Arduinoで温湿度データロガー
    上がログファイル名(拡張子を省いた表示)、下が経過時間(時:分:秒)
     
ファイルについて

記録されるファイルの内容はテキストデータです。
ファイル名は、DATA0001.LOG~DATA9999.LOGのうち、若い番号順に空いているファイル名が自動で選択されます。

 

カレンダー設定モード

SW1を押しながらArduinoを起動(リセット)すると、カレンダー設定モードになります。
このモードで、RTCモジュールの日付・時間を設定できます。

SW1で項目選択、SW2で変更(+1)となっています。

項目は

《年》→《月》→《日》→《時》→《分》→《確認》

の順番で変わります。
《確認》の時に《YES》を選ぶと、設定した内容がRTCモジュールに書き込まれます。
設定の中止はできません。
どうしても中止したい場合はArduinoの電源を切るかリセットを行って下さい。

※年の指定は2015~2030年まで
※曜日の指定は出来ません。(そもそも利用していません)
※秒は常に0に設定されます。

Arduinoで温湿度データロガー Arduinoで温湿度データロガー

Arduinoで温湿度データロガー Arduinoで温湿度データロガー

Arduinoで温湿度データロガー Arduinoで温湿度データロガー

 

SDカードエラー

動作にはSDカードが必須で、SDカードが認識できないとエラー表示で動作を停止します。
また、動作中のSDカードの抜き差しも禁止です。

Arduinoで温湿度データロガー

 

関連記事

no image

米粒AVRでアナログ入力を試してみた

米粒AVR(ATtiny10)に搭載されている8ビット4チャンネルのアナログ入力を試してみました

記事を読む

no image

Androidで一眼レフカメラのシャッターを制御する(MicroBridge接続)

以前書いた、Androidで一眼レフカメラのシャッターを制御するでは、AndroidとArduino

記事を読む

soundIR 送信機

赤外線リモコン送信機(イヤホンジャック接続)の回路

前回は受信機で、今回は送信機を作ってみました。 受信機と違って、送信機の作成は少し面倒です。

記事を読む

no image

AndroidにPS2キーボードを繋いでみた

@yishiiさんの素のAndroid端末を外部のキーにより操作する実験と言う記事を参考に、Ardu

記事を読む

no image

米粒AVRの動作周波数

  米粒AVR(ATtiny10)のデフォルトでは内臓発振器利用の1MHzが指定されてい

記事を読む

Hello Tiny10

米粒AVRでI2C通信を使ってLCD表示

前の記事で紹介したI2Cライブラリを使った、LCDの表示のライブラリ的なもの  

記事を読む

no image

Android+Arduinoでリモコン3 その1(AndroidAccessory接続)

何度か、Android+リモコンのネタを書いたことがあるのですが、今回はAndroid Access

記事を読む

Raspberry Piを買った

先日、Raspberry Pi(ラズベリーパイ)を買いました。 Raspberry Piは噂で

記事を読む

no image

米粒AVRで小型8連ナイトライダーを作ってみた

米粒AVR(ATtiny10)を2つ使って、8つのLEDを順番に点灯しています。 &nbs

記事を読む

米粒AVRからAndroidへデータを送る

米粒AVRでSoftModem的なこと

米粒AVRとAndroidを繋いで、データのやりとりを行ってみたいと思います。 2つを繋ぐイン

記事を読む

Arduinoで温湿度計 #2

今回は、前回作った温湿度計にRTCモジュールとSDカードアダプタを

Arduinoで温湿度計

秋月電子の温湿度モジュールを使って、温湿度計を作ってみました。 以前

ArduinoでSDカード

電子工作で大量のデータを保存する方法を調べていると、 Arduin

秋月のリアルタイムクロック(RTC)モジュール

今回は秋月電子のI2C接続のリアルタイムクロック(RTC)モジュールを

秋月の小型キャラクタLCD

今回秋月電子で売られている小型のキャラクター液晶2種を買ったので、

PAGE TOP ↑