Botanicalls Twitterをつくる。
植物がお水足りないとtwitterする。
電流の量で水が足りてるか足りてないかを判定してtwit。
Arduinoに書き込むソースコードに関して。
Arduinoのバージョンはatmega168以降じゃないとだめ。
atmega8だとコンパイルエラーが出る。
回路に関しては
備品(Parts)の中の
(1) 2N2222A or 2N3904 transistorは東芝のトランジスタを使用
とりあえず秋月だったか千石だったかで
10個パックの安いのを買ったと思う
あと(1) Adafruit XPort shieldは使ってません。
あったら便利ではあると思うけど日本に売ってるんだろうか、$15。
とりあえずここまで。
2008年10月10日金曜日
Botanicalls memo
ラベル: arduino, botanicalls, XPort
2008年7月11日金曜日
SensorBase
SensorBaseにセンサ値をArduinoとXPortを使って送る。
Making Things TalkやArduino開発でおなじみTom様のサイト
tigoe.netを参考に進めていく。
Arduinoはセンサの値をとって、
それをXPort経由であるサーバにあるPHPに送る。
PHPはSensorBaseにログインして
受け取ったセンサ値を特定のデータ表に入力する。
温度など色んなセンサ値を今後アップしたいのですが
とりあえずはお手軽な距離センサの値をウェブに送ってみる。
回路図はこんな感じ:
ソースコードは先ほどあげた
Logging sensor data to a Web Database using Sensorbase.org
をほぼそのまま使用。
SensorBaseにログインするためのPHPスクリプトとかは自分仕様に書き換える!
PHPスクリプトはSFCサーバにあげた。
ITCの人にお願いしてPHP拡張してもらったし。
昨日設定した黒macPHPで動くかはまた今度チェックしよ。
全部できたら、センサ値はSensorBaseの
plantr_testというテーブルに送り込まれているはず…
むむむ。
何かが来ている履歴はあるけど数値は来ていない。
Arduinoコードのloop()の中に
Serial.println(voltage, DEC);
を足してセンサ値をArduinoソフトでモニターしてみる。
void loop() {
// read the data from the sensor:
voltage = analogRead(0);
Serial.println(voltage, DEC):
// check the state of the HTTP request:
stateCheck();
// set the LEDs to inform the user about the state of the request:
setLEDs();
}
するとどうやらセンサの値は読んでいる。
Arduinoを5Vのアダプタで電源供給してあげて
パソコンからの接続を外したら
数値がアップされたーーー!
でも定期的に数値がアップされる様にはまだなってない。
ちなみに
SFCサーバにあげたPHPを開いてみると、"Data successfully slogged!"と
データがちゃんとSensorBaseに送られてることがわかる。