Kapasitif Dokunmatik Kontrol Paneli
Proje Amacı
Fiziksel butonlar yerine TTP223 dokunmatik sensör modülleriyle bir LED grubunu kontrol eder; kod her dokunuşu 'kenar' olarak yakaladığı için parmağınızı sensörde bırakmak LED'i sürekli açıp kapatmaz.
Gerekli Malzemeler
- Arduino Uno
- 3x TTP223 Dokunmatik Sensör Modülü
- 3x LED
- 3x 220Ω direnç
- Breadboard
Gerekli Kütüphaneler
Gerekli ek kütüphane yok, sadece Arduino IDE'nin yerleşik fonksiyonları kullanılıyor.
Pin Bağlantıları
| Bileşen Pini | Bağlantı |
|---|---|
| Dokunmatik 1 OUT | D2 |
| Dokunmatik 2 OUT | D3 |
| Dokunmatik 3 OUT | D4 |
| LED 1 Anot (220Ω üzerinden) | D9 |
| LED 2 Anot (220Ω üzerinden) | D10 |
| LED 3 Anot (220Ω üzerinden) | D11 |
Devre Şeması
Arduino Kodu
| 1 | const int dokunmatiklar[3] = {2,3,4}; |
| 2 | const int ledler[3] = {9,10,11}; |
| 3 | bool ledDurum[3] = {false,false,false}; |
| 4 | bool oncekiDurum[3] = {false,false,false}; |
| 5 | |
| 6 | void setup(){ |
| 7 | for(int i=0;i<3;i++){ |
| 8 | pinMode(dokunmatiklar[i], INPUT); |
| 9 | pinMode(ledler[i], OUTPUT); |
| 10 | } |
| 11 | } |
| 12 | |
| 13 | void loop(){ |
| 14 | for(int i=0;i<3;i++){ |
| 15 | bool dokunuluyor = digitalRead(dokunmatiklar[i]) == HIGH; |
| 16 | if(dokunuluyor && !oncekiDurum[i]){ |
| 17 | ledDurum[i] = !ledDurum[i]; |
| 18 | digitalWrite(ledler[i], ledDurum[i]); |
| 19 | } |
| 20 | oncekiDurum[i] = dokunuluyor; |
| 21 | } |
| 22 | delay(50); |
| 23 | } |
Çalışma Açıklaması
TTP223 modülleri genelde 'dokunma anında HIGH' modundadır; bazı modüllerde jumper ile toggle/momentary mod seçilebilir. Kod 'kenar algılama' kullanır, böylece basılı tutmak sürekli açıp kapatmaz.
Test Bilgisi
Devreyi kurun, kodu yükleyin. Her dokunmatik sensöre parmağınızla dokunun; ilgili LED'in açılıp/kapandığını (toggle) doğrulayın.
Olası Sorunlar ve Çözümleri
Dokunma algılanmıyorsa: TTP223 modülünün jumper ayarının (toggle/momentary mod) beklediğiniz gibi olduğunu kontrol edin. LED'ler yanlış tepki veriyorsa: 'kenar algılama' (önceki durumla karşılaştırma) mantığının kodda doğru çalıştığını gözden geçirin. Yanlış pozitif dokunmalar oluyorsa: sensörlerin birbirine çok yakın yerleştirilmediğinden emin olun (kapasitif etkileşim olabilir).
Alternatif Çözümler
3 dokunmatik sensör yerine tek bir kapasitif dokunmatik şerit (slider) kullanılarak kaydırmalı kontrol (örn. ses seviyesi ayarı) yapılabilir. LED'ler yerine röle eklenerek gerçek ev aletleri dokunmatik olarak kontrol edilebilir. Dokunma süresine göre farklı davranışlar (kısa dokunma=aç/kapat, uzun basma=parlaklık ayarı) eklenebilir.
Benzer Projeler
IR Kumanda ile Çoklu Cihaz Kontrolü
Standart bir IR TV kumandasının tuşlarını okuyup farklı tuşlarla farklı LED'leri kontrol eder — her kumandanın kod seti farklı olduğundan bu projede kendi kumandanızın hex kodlarını önce Seri Monitör'den okuyup koda girmeniz gerekir.
MQ-2 Gaz Alarmı
Ortamdaki yanıcı gaz/duman yoğunluğunu ölçüp tehlikeli seviyede LED ve buzzer ile alarm verir — ama bir uyarı: bu bir eğitim projesidir, sertifikalı bir ev tipi gaz alarmının yerini tutmaz (bkz. Çalışma Açıklaması).
Servo Kontrollü Kilit
Potansiyometreyi çevirerek servo motorun açısını 0-180° arasında kontrol eder; aynı mantık gerçek bir kilit mekanizmasına bağlandığında servo tabanlı bir erişim sistemine dönüşür.