Arduino

Arduino Potansiyometre ile LED Parlaklığı Kontrolü

Aykut AKMAN 10 ay önce Yorumlar (0) 4 Dakika Okuma
Arduino Potansiyometre ile LED Parlaklığı Kontrolü
E-Posta : 864 0

Arduino projelerinde potansiyometre kullanarak LED'in parlaklığını kontrol etmek, hem analog girişlerin kullanımını öğrenmek hem de PWM (Pulse Width Modulation) mantığını anlamak için harika bir uygulamadır. Bu projede, potansiyometreden alınan analog veriyi kullanarak bir LED'in parlaklığını değiştireceğiz.

Proje İçin Gerekli Malzemeler

  1. Arduino Uno (veya başka bir Arduino modeli)
  2. 1 x LED
  3. 1 x 220 Ohm direnç
  4. 1 x Potansiyometre
  5. Breadboard
  6. Bağlantı kabloları

Devre Bağlantısı

Çalışan simülasyonu görmek için tıklayınız.

arduino-potasiyometre-ile-led-parlaklık-kontrolü-devre-şeması

Potansiyometre Bağlantısı

  • Potansiyometrenin orta bacağını (veri pini), Arduino'nun A0 pinine bağlayın.
  • Potansiyometrenin bir bacağını 5V pinine, diğer bacağını GND pinine bağlayın.

LED Bağlantısı

  • LED'in uzun bacağını (anod), Arduino'nun 9 numaralı PWM pinine bağlayın.
  • LED'in kısa bacağını (katod), 220 Ohm direnç üzerinden GND pinine bağlayın.

Arduino Kodu

Aşağıda, potansiyometreden alınan analog veriye bağlı olarak LED'in parlaklığını ayarlayan kod yer almaktadır:

// Potansiyometre ve LED pin tanımları
const int potPin = A0; // Potansiyometrenin bağlı olduğu pin
const int ledPin = 9;  // LED'in bağlı olduğu PWM pin

void setup() {
  // Seri iletişim başlatılır (isteğe bağlı)
  Serial.begin(9600);
}

void loop() {
  // Potansiyometreden analog veri okunur (0-1023)
  int potValue = analogRead(potPin);
  
  // PWM için değer 0-255 aralığına dönüştürülür
  int brightness = map(potValue, 0, 1023, 0, 255);

  // LED parlaklığı ayarlanır
  analogWrite(ledPin, brightness);

  // Seri monitöre veri yazdırılır (isteğe bağlı)
  Serial.print("Potansiyometre Değeri: ");
  Serial.print(potValue);
  Serial.print(" | LED Parlaklık: ");
  Serial.println(brightness);

  delay(10); // Çok hızlı okumayı önlemek için küçük bir gecikme
}

Kod Açıklamaları

Pin Tanımlamaları

  • potPin: Potansiyometrenin bağlı olduğu analog pin.
  • ledPin: LED'in bağlı olduğu PWM pin.

analogRead(potPin)

  • Potansiyometreden gelen analog veriyi okur. Bu değer 0 ile 1023 arasında bir sayı döndürür.

map(potValue, 0, 1023, 0, 255)

  • Potansiyometreden gelen 0-1023 arasındaki veriyi, LED parlaklığını kontrol etmek için uygun olan 0-255 aralığına dönüştürür.

analogWrite(ledPin, brightness)

  • LED'e PWM sinyali göndererek parlaklığını ayarlar. Değer 0 (tamamen kapalı) ile 255 (maksimum parlaklık) arasında değişir.

Serial.print

  • Seri monitör üzerinden potansiyometreden okunan değer ve LED parlaklık seviyesi gösterilir.

Projenin Çalışma Prensibi

  • Potansiyometreyi çevirdiğinizde, potansiyometreden okunan analog veri değişir.
  • Bu değer, LED'e gönderilen PWM sinyalini etkiler ve LED'in parlaklığı buna göre ayarlanır.
  • Seri monitörde, potansiyometreden okunan değer ve LED'in parlaklık seviyesi gösterilir (isteğe bağlı).

Ekstra İpuçları

  • Potansiyometre yerine başka analog sensörler kullanabilirsiniz. Örneğin, bir ışık sensörü veya sıcaklık sensörüyle LED parlaklığını kontrol edebilirsiniz.
  • LED yerine başka cihazlar bağlayabilirsiniz. Örneğin, bir DC motorun hızını kontrol etmek için benzer bir yapı kullanılabilir.

Bu proje, Arduino'nun analog girişleri ve PWM sinyalleriyle çalışmanın temelini anlamak için mükemmeldir. Artık potansiyometre ile LED parlaklığı kontrolü yapabilir, projelerinize bu temel bilgiyi entegre edebilirsiniz!

Sıkça Sorulan Sorular

Potansiyometre, direnç değerini manuel olarak ayarlayabileceğiniz bir elektronik bileşendir. Arduino projelerinde genellikle analog girişler aracılığıyla veri okumak için kullanılır. Bu veri, LED parlaklığı, motor hızı gibi parametreleri kontrol etmek için kullanılabilir.

  • Potansiyometre: Orta bacak (veri pini) bir analog giriş pinine (örneğin, A0), diğer bacaklar 5V ve GND'ye bağlanır.
  • LED: LED'in uzun bacağı bir PWM çıkış pinine (örneğin, 9), kısa bacağı GND'ye bağlanır.

Arduino Uno, Nano, Mega gibi PWM çıkışına ve analog girişe sahip herhangi bir model kullanılabilir. Arduino Uno bu proje için en yaygın kullanılan modeldir.

Potansiyometreden analog değerler okunur (0-1023). Bu değerler, PWM için uygun aralığa (0-255) dönüştürülür. Arduino'da bu işlem için map() fonksiyonu kullanılır.

PWM, dijital bir sinyali belirli bir frekansta açıp kapatarak analog bir davranış elde etme yöntemidir. LED parlaklığını ayarlamak için Arduino'da analogWrite() fonksiyonu kullanılarak PWM sinyalleri gönderilir.

Potansiyometre ile DC motorların hızını, servo motorların konumunu veya LCD ekranların kontrastını kontrol edebilirsiniz. Ayrıca, ses seviyesi ve ışık yoğunluğu gibi parametreler için de kullanılabilir.

  • Potansiyometre yerine bir ışık sensörü bağlayarak çevredeki ışık seviyesine göre LED parlaklığını ayarlayabilirsiniz.
  • Farklı LED'ler veya RGB LED kullanarak renk ve parlaklık kontrolü sağlayabilirsiniz.
  • Seri monitör, projeyi test etmek ve potansiyometreden okunan değerleri görüntülemek için kullanışlıdır ancak zorunlu değildir. Seri monitör olmadan da LED kontrolünü gerçekleştirebilirsiniz.

  • Yanlış bağlantılar (özellikle potansiyometre orta bacağının A0'a bağlanmaması).
  • LED'in uygun bir dirençle korunmaması.
  • Kodda PWM pininin doğru atanmadığı durumlar.
  • Potansiyometrenin fiziksel bir arızası.
  • Evet, ışık sensörü (LDR), sıcaklık sensörü, fotoğraf sensörü veya herhangi bir analog veri sağlayan cihaz kullanılabilir.

    Aykut AKMAN

    Aykut AKMAN

    Bilişim Öğretmeni

    Bu Gönderiye Yorum Yapılmamış

    Yorum Yap

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

    Diğer Yazılar

    PHP Temel Bilgileri ve Sözdizimi Php

    PHP Temel Bilgileri ve Sözdizimi

    Aykut AKMAN 1 yıl önce