Işık Sensörü Uygulaması

Görseldeki devrede Arduino’nun 5 V gerilimi üzerine uygulanan LDR’nin direnç-gerilim değişiminin anlaşılabilmesi için 10 kΩ’luk bir direnç seri bağlanarak gerilim bölücü oluşturulur.


Bağlantı noktasının gerilim değişimi Arduino’nun analog girişine verilir. Aydınlık ortamda LDR’nin
direnci 10 kΩ’un altındadır. Karanlıkta (LDR elle kapatıldığında) LDR direnci MΩ değerine doğru
artar. LDR üzerine düşen gerilim artacağı için LDR ucuna bağlı A0 girişinden alınan bu bilgi 10
bitlik ADC’le 1023 değerine yaklaşır. Gelen bilginin ¼’ü 3 numaralı PWM çıkışından LED’e verilir.
Böylelikte karanlık arttıkça LED’in parlaklığı da artar.

Bu görsel boş bir alt niteliğe sahip; dosya adı ldr-800x718.png
const byte LED = 3;
void setup() {
  pinMode(LED, OUTPUT);
}

void loop() {
  //Analog giriş bilgisini 1/4'ü LDR değişkenine yükle.
  byte LDR = analogRead(A0) / 4;
  analogWrite(LED, LDR);
}

const byte lambaPini = 13;

void setup() {
  Serial.begin(9600); //Seri iletişim başlatıldı.
  pinMode(lambaPini, OUTPUT);
}

void loop() {
  int LDR = analogRead(A0); //A0 girişinden okunan 0-1023 arası veriyi LDR değişkenine yükle.
  Serial.println(LDR); //LDR değişkeninin içeriğini yazdır.
  if (LDR < 500) { // 500'den küçükse...
    digitalWrite(lambaPini, HIGH); // Lambayı yak.
  }
  else { // Lambayı söndür.
    digitalWrite(lambaPini, LOW);
  }
}

Benzer Temrinler & Yazılar

  • ASCII

    //void setup() { Serial.begin(9600); Serial.println("ASCII Tablosu"); for (byte i = 33; i < 127; i++) { Serial.write(i); //Karakteri yaz. Serial.print(", dec: "); //Onluk karşılığını yaz. Serial.print(i); Serial.print(", hex: "); Serial.print(i, HEX); //Onaltılık karşılığını yaz. Serial.print(", oct: "); Serial.print(i, OCT); //Oktal karşılığını yaz. Serial.print(", bin: "); Serial.println(i, BIN); //İkilik karşılığını yaz. } } void loop() {…

  • Gaz Dedektörü Devresi

    Görseldeki MQ-2 gaz sensörü pin yapısı görülmektedir. MQ-2 gaz sensörü, 300 ile 10.000 ppm seviyesindeki yanıcı gaz ve sigara dumanını algılar. Görselde görülen gaz sensörü devresi, ortamda gaz algıladığında uyarı sinyalleri verir. VCC: 5 V besleme. GND: Toprak pini. D0: Dijital veri çıkışı. A0: Analog veri çıkışı. const byte buzzer = 13; // Buzzer'ın takılacağı…

  • if kullanarak debounce engelleme

    const byte butonPini = 2; // Düğmenin bağlı olduğu pin bool kontrolBiti = 0; // Düğmenin basılı olup olmadığını kontrol etmek için bit int sayac = 0; // Sayac değeri void setup() { Serial.begin(9600); // Seri haberleşmeyi başlat pinMode(butonPini, INPUT_PULLUP); // Düğme pini giriş olarak ayarla ve dahili pull-up direncini etkinleştir } void loop() {…

  • Akıllı Ev Aydınlatma Uygulaması NodeMCU 1.0 (ESP-12E)

    Görseldeki devrede NodeMCU ortamdaki kablosuz ağa bağlanmaktadır (STA modu). Seri ekrandan NodeMCU kartının aldığı IP adresi görülür. Bilgisayar görselde veya akıllı telefondan Görseldeki tarayıcı adres çubuğuna NodeMCU’nun IP adresi girilerek odaların lamba kontrolleri gerçekleştirilir. #include <ESP8266WiFi.h> #include <ESP8266WebServer.h> /*Ağ adınızı ve Şifrenizi Giriniz*/ const char* kablosuzAgAdi = "ZyXEL"; // Ağ adınızı girin const char* sifre…

  • Akıllı Ev Isıtma Uygulaması NodeMCU 1.0 (ESP-12E)

    Görseldeki devre, bulunduğu ortamın nem ve sıcaklık bilgisini firebase veritabanına yazar. Görseldeki akıllı telefon uygulamasından bu değerler okunur. NodeMCU kartına bağlı ısıtıcı internet üzerinden kontrol edilir. #include <ESP8266WiFi.h> // NodeMCU kurulumuyla gelir. #include <FirebaseESP8266.h> // FirebaseESP8266 Client v3.8.3 ve Firabasejson v2.6.3 #include "DHT.h" // Adafruit DHT Sensor Library v1.2.3 #define DHTpin 4 // Sensörün bağlandığı…

  • EEPROM.read

    #include <EEPROM.h> byte deger; void setup() { Serial.begin(9600); int hafizaBoyutu = EEPROM.length(); //Kartın hafıza boyutunu al. for (int adres = 0; adres < hafizaBoyutu; adres++) { deger = EEPROM.read(adres); //Analog veriyi 10 ms aralıklarla tüm hafızadan sırayla oku. Serial.print("Adres = "); Serial.print(adres); Serial.print("\t Değer = "); Serial.println(deger); delay(10); } } void loop() { }

Bir Yorum Yazın

E-posta adresiniz yayınlanmayacaktır. Gerekli alanlar * ile işaretlenmiştir.