2009.07.03
コレは使える!Arduinoで部屋の状況を自動つぶやき君@Twitter(後編)
コレは使える!Arduinoで部屋の状況を自動つぶやき君@Twitter(前編)に引き続き、後編では、実際に Arduino を使って楽しいガジェット制作をやってみよう。
作ってみたのは、センサーで「室温」と「部屋の明るさ」を取得して Twitter に自動ポストする【つぶやき君】である。

こんな感じで、ArduinoからTwiiterに自動ポストされる
仕様は、
- 基本的に15分間隔で「室温」と「部屋の明るさ」をつぶやく
- 設定温度を超えたら「暑いよ、暑いよ」とつぶやき続ける
- 明るさが変わったら、その時点でつぶやく
という感じ。パソコンなしで、LANケーブルと電源を挿しただけで動かすのもポイント。
必要なのは、
- Arduino Duemilanove 328(Arduino本体)
- Arduinoイーサネット・シールド(ネット接続用)
- CdSセンサ 5mmタイプ
- 温度センサ LM35DZ
- ブレッドボード
- 抵抗 10kΩ
- ジャンパワイヤ 5本
- LED 1個
だ。Arduino本体とイーサネットシールドはネットで購入、それ以外は秋葉原の秋月電子で買っている。
なお、上記には参考のためにリンクを貼ったけど、抵抗やLEDは100個も必要ない(笑
それからジャンパワイヤは色が違った方が使いやすい。
そこで、まあ、抵抗やワイヤ、LEDなどをお持ちじゃなければこのArduinoをはじめようキット
がなんと言ってもオススメだ。(けど、現在また在庫切れ?)
CdSセンサも付いてくるので、あとはイーサネットシールドと温度センサを買うだけでOK。
それから Arduino単体 で動作させたいので秋月電子で 9V/2A 電源も買ってきた。
後はもちろん、USBケーブルやネットにつながる環境、パソコンも必要。
Twitterのアカウントも新規に取得しておくと良い。既存アカウントでも良いけど、テストなつぶやきを大量にはき出してしまう可能性がある。。。
LEDの点灯から詳しく紹介しようと思ったけど、それこそカンタンすぎてすぐにできるので、いきなり完成を目指そう。
★ 開発環境(IDE)のゲット
公式サイト(http://www.arduino.cc/)のDownloadメニューから、IDEを取ってこよう。
Windows版はそのまま解凍して exe を起動すればインストール不要で使えるようだ。レジストリ、いじってないのかな?
けど、マイドキュメント直下にプログラムを保存したりするので、そこは注意。
★ Arduinoを接続
Arduino DuemilanoveをパソコンのUSBで接続すると、ハードウェアを検知する。
ドライバは、先に落とした IDE の driverフォルダ内 に入っているのでそこを指定。
後ほどIDEで設定する必要があるので、デバイスマネージャを開いてどのポートにつながったのかを確認。
ポート番号が大きいとうまく動作しないなんてことが本やネットに書いてあるけど、手元の XP や Vista で 10番 や 22番 につながってる環境でも特に問題はないようだ。
★ LEDを点灯させてみる
最初ぐらいは動作確認をしておこう。
KAYACな方のこのブログがよくまとまっていて、参考になる。
http://level0.kayac.com/2009/04/getting_started_arduino_01.php
LEDの点灯が確認できたら、イーサネットシールドを載っけて次のステップへ。
★ DHCPライブラリ
本家はこちらだけど、こちら(http://shin-ishimaru.cocolog-nifty.com/blog/2009/06/arduinoarduinod.html)に詳しく書いてあるのでこれを参考に必要ファイルを落とす。
★ Twitterライブラリ
Twitterライブラリの本家はこちら。
だけど、こちら(http://shin-ishimaru.cocolog-nifty.com/blog/2009/06/arduino15twitte.html)にも詳しく書いてあるので、このプログラムを参考にする。
★ 回路組み立て
Twitterへのつぶやきは成功した!となったら、いよいよ回路を組み立てだ。
Arduinoに限らず、電子工作全般に言えることだけど、うっかりショートさせると壊れてしまうことがあるので注意しよう。
参考に写真をアップします。
LM35 ⇒ +V(1番穴)、Vout(2番穴)、GND(3番穴)
CdS ⇒ 1番穴、5番穴
10kΩ ⇒ 3番穴、5番穴
赤線 ⇒ Arduino 5V出力 に接続
緑線 ⇒ Arduino アナログ 0ピン に接続
青線 ⇒ Arduino アナログ 1ピン に接続
黒線 ⇒ Arduino GND に接続
となってます。
それから、実際に走らせたソースをアップしておきます。
つぶやき君ソースコード
右クリックで保存などしてください
基本的には15分毎に「室温」と「部屋の明るさ」を Twitter へポストしてます。
けど、
- 部屋の明るさが変わったら、15分を待たずに即時つぶやき
- 30℃を超えたら「暑いよ、暑いよ」と警告
という機能も入れました。
完成したこの「つぶやき君」をオフィスに放置しておけば、室温が異常に上がった時や、最後に退出する人が電気を消したり、逆に誰かが電気を点けたタイミングで Twitter につぶやきが飛ぶことになる。電源供給もしているので、パソコンは必要ない。
温度はともかく、部屋の明るさはセキュリティ上どうなんだとか、なんだか監視されてるみたいといった意見もあったので、残念ながらTwitterのIDは非公開で。
それにしてもカンタンにできてしまった。
次はなにを作ろっかなぁ。


[...] » コレは使える!Arduinoで部屋の状況を自動つぶやき君@Twitter(後編): エ… [...]
Posted at 2009.07.19 6:31 PM by bIZ dIG iT» ブログアーカイブ » Arduinoが気になる