Arduino 一番簡単な温度ロガー(LM35使用)

IGU

2010年10月09日 22:43


以前、買った、手の平サイズのマイコン「Arduino(アルデュイーノ)」。
→ 後日改造。「ArduinoのUSB直差し化!

ネットを見ると、例えば部屋の温度や明るさを自動測定して、LAN経由でTwitterに「暑いなう」「朝だなう」等とつぶやくなど、いろいろな回路が紹介されています。

マイコンなので、イーサネット・ボードを組み合わせたり、ライブラリーを追加すると、いろいろな事ができちゃうのが、「Arduino」の面白いところ!


そういうマニアックな世界も面白そうだけど、もっと身近な所にも、マイコンの使い道はあります。
今回は、とってもシンプルなデータロガーを作ってみました。


簡単な温度ロガーを求めて


データロガーとは、センサーなどの入力機器からの情報を、継続的に計測・保存してくれる装置。

例えば、人間が10分おきに、何かのデータをノートに書いていく。というのは、大変だし、単調過ぎて眠くなります。
でも、マイコンだったら朝飯前。キッチリとデータを記録し続けてくれます。

僕はよく、パワーLEDを扱いますが、ある条件で過熱し過ぎないかなど、簡単に記録できる方法は無いか、ずっと探していました。

専用の温度ロガーを買うと、結構な価格がするんです。

自分で作れたら、いろいろ応用が効くし、なんと言っても面白そう!
「Arduino」は、そんな願いもかなえてくれる、マイコンなんです。


見つからないスケッチ


「Arduino」のプログラムは「スケッチ」と呼びます。

C言語に似た記述でプログラムを書いていくのですが、すでに大勢の方がスケッチを公開されています。
初心者でも、それをコピーして改造する事で、自分なりのプログラムを短期間で作る事も可能‥。
これは、ネット社会の便利さですね。


が、しかし。いろいろ検索してみても、温度ロガー単体のスケッチが、意外と見つからないのです。
(スケッチを公開している皆さんは、さすがに腕に自信の方ばかりなのか、いろいろ難しい機能を追加されています)

困った。
僕みたいな初心者は、まず「簡単でちゃんと動く!」スケッチから始めたい所なんですが‥。


スケッチを改造


それでも、ようやくLM35という温度センサーを使ったシンプルなスケッチを見つける事ができました。
→ 「ArduinoとLM35温度センサー

で、ふと引き出しを探してみると、僕の部屋にも同じICのストックがありました。(ラッキー! )
以前、秋月電子でパワーLEDと一緒に発注しておいたものです。

さっそく、上記のスケッチをお借りして、改造していきます。

改造はほんのちょっとですが、これで、自分が欲しかった仕様が完成しました。


手作り! 温度ロガー、完成


左は、10秒毎に、対象の温度を記録していくロガーの様子です。

Arduino(アルデュイーノ)にスケッチを書き込んで、3本足のセンサーIC「LM35」をブレッドボードに配線すると、できあがり。

シリアルポートから、10秒毎に送られてくるデータをパソコンの画面に表示する事ができました。

データはタブ区切りにしているので、コピーしてエクセルにペースト。
グラフ化したのが下の画像。



ノートパソコンの排気口近くにセンサーを置いて、温度を計測してみたものです。
グラフが細かく動いていますが、それでもデータの振れは1℃程度。

今回は温度だけですが、各種センサーを交換すれば、湿度や照度、気圧等も(同時に)PCに記録していく事が可能です。


実際のスケッチ


#define INTERVAL 10 //更新間隔(約 x秒)
int analogpin0 = 0; //analog0に入力

int data = 0;
int summary = 0;
int i,t_1,t_2,time_m,time2,time_h;

long time;

double t_value; //temperature value


void setup() {
analogReference(INTERNAL); //use internal 1.1v reference
Serial.begin(9600);

}


void loop() {

summary = 0;
for(i=0;i

関連記事