Bu eğitimde, SunFounder'dan ESP32 modülünü kullanarak bir potansiyometreden DC voltajını nasıl ölçeceğimizi öğreneceğiz. Proje ayrıca potansiyometrenin konumuna göre bir LED'in nasıl söndürülüp yakılacağını da gösterecektir. Potansiyometreyi saat yönünün tersine çevirdikçe voltaj okuması azalır ve LED buna göre söner. Bu alıştırma, ESP32'deki analogdan dijitale dönüştürücünün (ADC) kullanımı hakkında pratik bir anlayış sağlayacaktır.
potansiyometrePotansiyometre veya değişken direnç
ESP32, yerleşik Wi-Fi ve Bluetooth özelliklerine sahip güçlü bir mikrodenetleyicidir ve bu da onu IoT projeleri için ideal kılar. Bu eğitimde, bir potansiyometreden voltaj seviyelerini okumak için analog giriş özelliklerini kullanacağız ve ayrıca bu okumalara dayanarak bir LED'in parlaklığını kontrol edeceğiz. Sonuç, potansiyometreyi ayarladıkça yoğunluğu değişen duyarlı bir LED olacaktır.
Donanım Açıklaması
Bu proje için aşağıdaki bileşenlere ihtiyacımız olacak:
ESP32 Modülü: Potansiyometrenin voltajını okuyacak ve LED'i kontrol edecek ana mikrodenetleyici.
Potansiyometre: Voltajı ayarlamak için kullanılan değişken bir direnç. Üç pini vardır: ikisi sabit dirençler için, biri değişken olan içindir.
LED: Parlaklığı potansiyometrenin konumuna göre kontrol edilecek bir ışık yayan diyot.
Direnç: LED'den geçen akımı sınırlamak için 220 ohm'luk bir direnç.
Potansiyometre, pinleri arasındaki direnci değiştirerek çalışır ve ESP32'nin ADC'si aracılığıyla okuyabileceği bir voltaj üretmesini sağlar. LED parlaklığı, analog okumaya dayalı olarak kendisine verilen gücü ayarlamak için Darbe Genişliği Modülasyonu (PWM) kullanılarak kontrol edilir.
Veri Sayfası Ayrıntıları
Bağlantı Talimatları
ESP32-23-fading-LED_pot-wiring
Bileşenleri bağlamak için potansiyometreyi bağlayarak başlayın. Dış pinlerinden birini ESP32 üzerindeki 3.3V güç kaynağına bağlayın. Diğer dış pini toprağa (GND) bağlayın. Potansiyometrenin orta pini, analog voltajı okumak için kullanılan ESP32 üzerindeki 35 numaralı pine bağlanacaktır.
Ardından, LED için uzun pini (anot) 220 ohm'luk bir direnç üzerinden ESP32 üzerindeki 26 numaralı pine bağlayın. LED'in kısa pinini (katot) toprağa bağlayın. Tüm bağlantıların güvenli olduğundan emin olun ve hasarı önlemek için LED'in yönünü tekrar kontrol edin.
Kod Örnekleri ve Açıklaması
Aşağıdaki kod parçacığı, ESP32'yi potansiyometreyi okumak ve LED'i kontrol etmek için nasıl ayarlayacağınızı gösterir:
const int potPin = 35; // Potansiyometre bağlı
const int ledPin = 26; // LED bağlı
// PWM ayarları
const int freq = 5000; // PWM frekansı
const int resolution = 12; // PWM çözünürlüğü (bit)
Bu alıntıda, potansiyometre ve LED için pinleri tanımlıyoruz. PWM frekansı ve çözünürlüğü de ayarlanır ve bu, LED'in parlaklık seviyelerini belirleyecektir.
Kurulum fonksiyonunda, seri iletişimi başlatıyoruz ve LED için PWM ayarlarını yapılandırıyoruz. Bu kurulum, program başladığında bir kez çalışır.
Son olarak, döngü fonksiyonu sürekli olarak potansiyometre değerini okur ve LED parlaklığını ayarlar:
void loop() {
int potValue = analogRead(potPin); // potansiyometrenin değerini oku
uint32_t voltage_mV = analogReadMilliVolts(potPin); // Voltajı milivolt cinsinden oku
ledcWrite(ledPin, potValue);
// Seri çıktı kısaltma için atlandı
}
Döngüde, potansiyometreden analog değeri okuyoruz ve LED parlaklığını kontrol etmek için çeviriyoruz. Seri çıktı, potansiyometre değerini ve voltajı göstererek okumaların doğrulanmasına yardımcı olur.
Gösterim / Beklentiler
Devre doğru şekilde kurulduğunda ve kod yüklendiğinde, potansiyometreyi çevirmek seri monitörde görüntülenen voltaj okumasında buna karşılık gelen bir değişiklikle sonuçlanmalıdır. LED, potansiyometre ayarlandıkça yumuşak bir şekilde sönüp yanmalıdır. LED beklenildiği gibi tepki vermezse, bağlantıları kontrol edin ve potansiyometrenin düzgün çalıştığından emin olun (videoda 11:30'da).
Video Zaman Damgaları
00:00 Başlangıç
2:02 Pot Nedir
4:15 Potun direncinin ölçülmesi
6:59 Dokümantasyon sayfası
8:56 Bağlantı açıklaması
12:28 Arduino kodu açıklaması
15:58 Arduino IDE'de ESP32 kartı ve COM portunun seçilmesi
17:40 ESP32 ile pot değerinin okunmasının gösterimi
Açıklama: Amazon Ortaklığı olarak, nitelikli satın alımlardan kazanç sağlıyoruz. Bu, bir bağlantıya tıklayıp satın alma işlemi yaptığınızda, size ek bir maliyet olmadan küçük bir komisyon alabileceğimiz anlamına geliyor.