Merhaba arkadaşlar, potansiyometre ile karaşimşek hız kontrolü uygulamamızda potansiyometre (ayarlı direnç) kullanarak okuyacağımız, 0V ile 5V (0-1023) arasındaki gerilim yardımıyla daha önce yapmış olduğumuz kara şimşek uygulamasının hızını kontrol edeceğiz.

[embedyt] https://www.youtube.com/watch?v=B7lBo7SkzcE[/embedyt]

Malzeme Listesi:

Arduino

Breadboard

5 adet Kırmızı Led

5 adet 330 Ohm Direnç (Turuncu-Turuncu-Kahverengi)

1 adet 10k  Potansiyometre

15 adet Erkek-Erkek Jumper Kablo


Devremizi aşağıdaki devre şemasına göre kuruyoruz.

karaşimşekpot

Devremizi kurduğumuza göre kodumuza geçebiliriz.

#define Pot A0
int sure = 0;
void setup()
{
Serial.begin(9600);
for (int i = 2; i < 7; i++)
{
pinMode(i, OUTPUT);
}
}
void loop()
{
int pot_deger = analogRead(Pot);
sure = map (pot_deger, 0, 1023, 30, 300);
Serial.println(sure);
for (int a = 2; a < 7; a++)
{
digitalWrite(a, HIGH);
delay(sure);
digitalWrite(a, LOW);
}
for (int b = 7; b > 2; b–)
{
digitalWrite(b, HIGH);
delay(sure);
digitalWrite(b, LOW);
}
}

Öncelikle gerekli değişken tanımlamalarını yapıyoruz.

void setup() kısmında Serial.begin(9600); komutuyla serial haberleşmemizi 9600 baud rate hızında başlatıyoruz. Burada serial ekranı kullanmamızın sebebi hata ayıklamaktır. Yani okumuş olduğumuz analog değerler, mantıklı değerler mi? Yoksa parazit değerler mi? Ve ölçeklendireceğimiz süre için bir referans olması lazım; örneğin 30 altında olursa devre karasız çalışıyor. Bunun gibi parametreleri ve hata ayıklama işlemlerini gerçekleştirmemizde serial ekran büyük kolaylık sağlar.

Daha öncede yaptığımız gibi 2, 3, 4, 5 ve 6 numaralı dijital pinlerimizi çıkış olarak ayarlıyoruz.

void loop() döngüsünde potansiyometredeki değeri analog olarak okuyoruz ve pot_deger adlı değişkene atıyoruz. Okumuş olduğumuz bu pot değerini, map() komutuyla 30 ile 300 arasına ölçeklendiriyoruz.

Daha önceden yapmış olduğumuz buton ile kara şimşek uygulamasında kullanmış olduğumuz delay(100); bekleme zamanı yerine burada delay(sure); yazarak kara şimşeğimizin hızını ayarlıyoruz.

Özet olarak dışarıdan alınan analog voltaj (0-1023 veya 0V ile 5V arası) map komutu ile 30-300 arasına ölçeklendirdik ve bu değeri kara şimşek döngümüzde süre olarak kullandık.

Kodumuzu Arduino’ya yükledikten sonra seri ekranımızı açtığımzda karşımıza böyle bir ekran çıkması gerekiyor:

seriekran


Potansiyometre ile karaşimşek hız kontrolü dersimiz işinize yaradıysa ve hoşunuza gittiyse diğer derslerimize göz atmayı unutmayın 🙂

robolinkmarket.com

4 YORUMLAR

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz