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)のデフォルトでは内臓発振器利用の1MHzが指定されてい

記事を読む

SDFormatter

Raspbianの起動SDカードを再利用

一度、Raspbianのイメージを書き込んだSDカードは、フォーマットが違う為にWindowsでは利

記事を読む

no image

Wimeji Client for Arduino

前回紹介したWimeji Client for WindowsXPをArduinoでやってみました。

記事を読む

SDカード・マイクロSDカード

ArduinoでSDカード

電子工作で大量のデータを保存する方法を調べていると、 Arduinoでも比較的簡単にSDカードを

記事を読む

no image

Atmel Studio 6

米粒AVR(ATtiny10)の開発を行う為に、Atmel Studio 6.0をインストールし

記事を読む

no image

米粒AVRでシリアル通信(ただし送信だけ)

米粒AVR(ATtiny10)にUART機能は搭載されていないので、シリアル通信を行う為には自前

記事を読む

no image

Android + Arduino でリモコン

今こんなのを作ってますと言う動画です。   DoCoMoのFOMA携帯

記事を読む

no image

Arduino + USBホストシールド で ADK を試す(その3)

「Arduino + USBホストシールド で ADK を試す(その1)」では、Android上のア

記事を読む

no image

Softmodem Terminal 公開しました。

需要がどれほど有るのか疑問に思いつつ、以前のエントリ(AndroidでSoftModemを試してみた

記事を読む

秋月電子 キャラクタLCD

秋月の小型キャラクタLCD

今回秋月電子で売られている小型のキャラクター液晶2種を買ったので、ちょっと比較してみる。 買っ

記事を読む

Arduinoで温湿度データロガー
Arduinoで温湿度計 #2

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

Arduinoで温湿度計
Arduinoで温湿度計

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

SDカード・マイクロSDカード
ArduinoでSDカード

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

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

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

秋月電子 キャラクタLCD
秋月の小型キャラクタLCD

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

PAGE TOP ↑