なんかいろいろこんぴゅーたかんけいのなぐりがき

なんか勉強しているこんぴゅーた関係のことのメモやそれ以外のことを書こうかなあ...

logs

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

LEDが光センサになる

通常LEDは電圧を加えると発光するけど、逆にLEDに向けて光を加えると電圧が生じるという性質がある。

なので赤色LEDを光センサの代わりにして遊んでみた。

P1080591.jpg


LEDのカソードをGLDにアノードをアナログ入力につなげた。
それで、アナログ入力の値をとってみると値は暗くなるほど小さくなる。
なので閾値を設定(今回のばあい227)してこれより値が小さくなれば13ピンに電圧を与え、て別につないでおいたLEDを発光させるようにした。


つまり、暗くなると自動的に明るくなるアレである。

Arduino側

int sencer = 2;
double num = 0;
void setup()
{
Serial.begin(9600);
pinMode(13,OUTPUT);
}

void loop()
{
num = analogRead(sencer);
Serial.println(num,DEC);
if(num <= 227)
{
digitalWrite(13,HIGH);
}
else
{
digitalWrite(13,LOW);
}



delay(500);
}

まあ、これで実験を終わってもいいのだけど、センサとして利用しているLEDに手をかざして暗くするとコマンドプロンプト上の顔文字が右に動くようなプログラムを書いてみた。

LEDで遊ぶ


import serial
import time
ser = serial.Serial(3)
x = 5
while True:
num = int(ser.read(5))
if(num <=226):#when dim
x+=1
else:
x-=1
if x >20:
x = 20
elif x<0 :
x = 0

print " " * x,"(ToT)/"
time.sleep(0.5)

やっぱりインデントが無視されるんでファイルもあげとくtxtになってるんで落としてから.pyに拡張子を変更すること。
main_20091123121612.txt

スポンサーサイト

トラックバックURL

http://ilovevim.blog42.fc2.com/tb.php/46-853bf683

この記事へのトラックバック

この記事へのコメント

コメント投稿フォーム

Paging Navigation

Navigations, etc.

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。