SıcakSTEAMTrend

Arduino ile Otomatik Işık Yaptık

Fotocell, fotosel, fotorezistor vb adlarla bilinen bir sensör olan ve ışığın değerini ölçümleyen fotorezistör ile sensörlü lamba yapıyoruz.

İhtiyaç listesinde yer alan bileşenler aşağıdaki galeride ye almakta.

Görsel Miktar Bileşen
1 Arduino Uno R3
1 Fotorezistör
1 Kırmızı LED
1 330 Ω Rezistör
1 1 kΩ Rezistör

Yukarıda şemada görüldüğü gibi kırmızı jumper breadborda 5V enerji vermekte. Kahverengi jumper ise GND pinine breadboardu bağlıyor. Burada dikkat etmemiz gereken şey fotorezistör ile ışık değeri ölçeceğimiz için analog bir pine bağlanması gerek. Biz A0 pinini seçtik. A0 pinine bağlanan bacağı 1 kΩ rezistör (direnç) ile breadboardda yer alan GND (-) sırasına bağlı. Diğer bacağı ise 5V (+) ayağına bağlayarak fotorezistör bağlantımızı tamamlıyoruz.

LED bileşeni bildiğimiz gibi anot ve katot ayağından oluşuyor. Anot ayağını, jumper ile herhangi bir dijital pine bağlıyoruz ki açık/kapalı değer verebilelim. Biz 7 numaralı dijital pini tercih ettik. Katot ayağını ise 330 Ω rezistör ile breadboarddaki GND (-) sırasına bağlıyoruz. Devremiz tamam.

// C++ code
//
void setup()
{
pinMode(7, OUTPUT);
pinMode(A0, INPUT);
digitalWrite(7, LOW);
}
void loop()
{
if (analogRead(A0) < 10) {
digitalWrite(7, HIGH);
} else {
digitalWrite(7, LOW);
}
delay(10);
}

Yukarıdaki kodda öncelikle void setup() fonksiyonu içerisine 7 numaralı pin için output, A0 numaralı pin için de input değerini tanımlıyoruz. Başlangıçta LED sönük olsun diye 7 numaralı pin için LOW değeri giriyoruz. void loop() içerisine ise bir karar mekanizması olan if ile A0 pinini yani orada takılı olan fotorezistörden alınan değeri ölçtürüp 10 birimden küçük olup olmadığını denetletiyoruz ve küçük ise 7 numaralı pinin değerini HIGH olmasını ve bu sayede akım geçmesini kodluyoruz. Değilse 7 numaralı pin LOW olacak.

Diğer STEAM yazıları: STEAM » TETATON

Çalışma ortamı: Tinkercad

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir