Arduino

LDR Elemanıyla Ölçülen Işık Seviyesini Ledler Yardımıyla Gösteren Uygulamayı TinkerCAD Platformunda Yapma

Bu uygulamadaki amaç, LDR ile ışık seviyesinin ölçülüp LED’ler ile gösterilmesini sağlamaktır.
Gerekli Devre Elemanları
• 1 adet mikrodenetleyici kart
• 1 adet breadboard
• 1 adet LDR
• 7 adet LED
• 7 adet 220Ω (kırmızı, kırmızı, kahverengi, altın rengi) direnç
• 1 adet 10KΩ (kahverengi, siyah, sarı, altın rengi) direnç
• Bağlantı kabloları
Adım 1: Bu uygulamada LDR ile oluşturulan gerilim bölücü devresinden okunan 150 ile 600 arasındaki değerler map(LDR,150,600,1,7); komutuyla yeniden örneklenerek 0 ile 7 seviyesinde LED ile gösterilecek şekilde ayarlanmaktadır. 
Normalde potansiyometre kullanıldığında okunan analog değer 0 ile 1023 arasında olabilirken, LDR yapısından ve üretiminden dolayı 150 ile 600 arasında bir değer alabilmektedir. Bu değerler her LDR için farklılık gösterebilir. Program yüklenip seri porttan okunduktan sonra kullanılan LDR’ün minimum ve maksimum
değerleri alınarak map(LDR,minumum,maksimum,1,7); komutunda değişiklik yapmak gerekir.
Adım 2: LDR ile ışık seviyesinin ölçülüp LED’ler ile gösteren uygulamanın program kodları aşağıdaki gösterilmektedir. Programın aşamaları aşağıdaki gibidir.
• Programın void setup() fonksiyonu içinde 2 adet for döngüsü kullanılmıştır.
• for (i=2;i<=seviye;i++) digitalWrite(i,1); komutuyla mikrodenetleyici kartın 2. portundan seviye değişkeninde tutulan değerin gösterdiği porta kadar 1 yapar.
• for (i=2;i<=seviye;i++) digitalWrite(i,1); komutuyla da mikrodenetleyici kartın seviye
değişkeninde tutulan değerin gösterdiği porttan 8. porta kadar 0 yapar.
• Bu şekilde LDR’ün ürettiği değerler LED’ler ile ifade edilmiş olur.
• Programda aynı zamanda LDR değerleri ve 1 ile 7 arasında yeniden örneklenen değerler seri port ekranında görülmektedir.
int i; // For döngüleri için değişken tanımlar.
void setup() {
Serial.begin(9600);
for (i=2;i<=8;i++)
pinMode(i, OUTPUT); // 2’den 8’e kadar portları çıkış yapar.
}
void loop() {
int LDR = analogRead(A0);
int seviye=map(LDR,160,600,1,7);
Serial.print(“LDR Değeri=”);
Serial.print(LDR); // seviye değişkenini seri porta yazdırır.
Serial.print(“\t Seviye=”);
Serial.println(seviye); // seviye değişkenini seri porta yazdırır.
for (i=2;i<=seviye;i++) digitalWrite(i,1);
for (i=seviye+1;i<=8;i++) digitalWrite(i,0);
delay(1);
}
 

İlgili Makaleler
Robot Tabanlı Proje Geliştirmede Kullanılan Mikrodenetleyici Kartı
7 Segment Display’in Uzaktan Kumanda ile Kullanımı
Robotik Kodlama Çalışma Soruları
Robot Tabanlı Proje Geliştirmede Eğitsel Robot Bileşenleri
Eğitsel Robotun Devre Şeması
Sıcaklık Sensörü ile Okunan Değerlerin LCD Ekranda Gösterilmesi
Mesafe Sensöründe Okunan Değerlerin LCD Ekranda Gösterilmesi
Mikrodenetleyici Kart İle Birlikte Kullanılan 7 Segment Display Elemanı ve Özellikleri
TinkerCAD Platformunu Kullanarak Merhaba Dünya Mesajını LCD Ekranda Görüntüleyen Arduino Uygulaması
LDR İle Ölçülen Işık Şiddetinin LCD Ekranda Gösterilmesi
Potansiyometre ile LED Lambalarının Yanıp Sönme Hızının Ayarlanması
Seri Port Ekranında Merhaba Dünya Mesajını Yazdıran Arduino Uno Uygulaması
Potansiyometre Seviyesinin LED ile Gösterilmesi İşlemini TinkerCAD Platformunda Yapma
Arduino Uno Kart ile Trafik Lambası Kontrolü
Eğitsel Robotun Montajı
LCD Ekranda Yazılan Yazının Sağa veya Sola Kaydırılması
RGB LED ile Uzaktan Kumandanın Kullanımı
Arduino Uno Kart İle Ledlerin Yanmasını Buton İle Kontrol Eden Uygulamayı TinkerCAD Platformunda Yapma
Arduino Uno Kart Kullanarak Anahtar İle Kontrol Edilen Dijital Giriş Uygulamasını TinkerCAD Platformunda Yapma
Mikrodenetleyici Kartla Mesafe Sensörü Uygulamaları
Yorumlar
  Ahmet  dediki;
Hasan arkadaşımız hatasına bende yaşadım ama çözümünü void setup () dışına int i yazarsa program çalışıyor yoksa çalışmıyor bilginize . İyi Akşamlar
26.02.2024 19:02:52

  hasan  dediki;
merhabalar aynı dervreyı yaptım tınkercad uzerınden calıstırdıgımda kod hatası alıyorum bu kod hatası bu yardımcı olur musunuz kod hatası: In function ''void setup()'': 3:6: error: ''i'' was not declared in this scope In function ''void loop()'': 13:6: error: ''i'' was not declared in this scope 14:6: error: ''i'' was not declared in this scope
16.04.2023 14:04:26

Yorum Ekle
   
Kötü
İyi