Analog Giriş Nedir?

Analog sinyaller, belirli bir aralıktaki sürekli değerleri temsil eder. Dijital sinyallerin (0 veya 1 gibi) aksine, analog sinyaller sonsuz sayıda ara değere sahip olabilir. Örneğin, bir sıcaklık sensöründen gelen voltaj değeri 0V ile 5V arasında sürekli olarak değişebilir. Bu sürekli değişimi okuyabilmek için Arduino'nun analog giriş pinlerini kullanırız.

Arduino Uno'da 6 adet analog giriş pini bulunur. Bunlar A0, A1, A2, A3, A4 ve A5 pinleridir. 


Analog-Dijital Dönüştürücü (ADC)

Arduino, analog sinyalleri doğrudan anlayamaz. Bu yüzden, analog sinyalleri dijital sinyallere dönüştürmek için bir Analog-Dijital Dönüştürücü (ADC) kullanır. Yani 0V ile 5V arasında gelen herhangi bir voltaj değerini dijital bir değere dönüştürür. 

Arduino'daki ADC, varsayılan olarak 10-bit çözünürlüğe sahiptir. Bu ne anlama geliyor?

10-bit çözünürlük demek, analog sinyali 2^10 = 1024 farklı değere dönüştürebiliriz demektir. Arduino'nun çalışma voltajı genellikle 0V ile 5V arasındadır. Bu durumda, 0V değeri 0'a, 5V değeri ise 1023'e karşılık gelecektir. Yani, her bir adım (çözünürlük) yaklaşık olarak 5V/1024≈0.00488V veya 4.88mV'a karşılık gelir. 0V = 0,  4,88mV = 1,  9,76mV = 2,  14,64 = 3  vb. olur. 

Örneğin; herhangi bir sensörden Arduino'nun analog pinine 2,4 volt geldiğini düşünelim. Yukarıda yaptığımız hesaba göre her adım 4,88mV olduğuna göre 2,4V /  4,88mV = 500 dijital değerini elde ederiz.

Bu sayede, bir sensörden gelen voltajdaki küçük değişimleri bile yakalayabilir ve bu değerlere göre kodumuzda işlemler yapabiliriz.

Arduino'da analog bir pinden veri okumak için analogRead() fonksiyonunu kullanırız. Şöyle:

sensor_degeri = analogRead(pin);

pin: Okunacak analog pin numarası (örneğin A0, A1 vb.).

sensor_degeri: Okunan 0 ile 1023 arasındaki değeri depolayacak bir tamsayı değişkenidir.


Neden Analog Giriş Kullanırız?

Analog girişler, dünyadaki birçok sensörle etkileşim kurmamızı sağlar. Arduino'ya dış dünyadan gelen sürekli ve değişken bilgileri okuma yeteneği kazandırır. ADC sayesinde bu analog sinyaller dijital verilere dönüştürülür ve bu verileri kullanarak projelerinizde daha karmaşık ve duyarlı kontroller yapabilirsiniz. Bazı örnekler:

- Sıcaklık Sensörleri (LM35, NTC termistörler): Çevresel sıcaklıktaki sürekli değişiklikleri okumak için.

- Işık Sensörleri (LDR): Ortamdaki ışık şiddetini ölçmek için.

- Potansiyometreler: Elle ayarlanan bir değer (örn. parlaklık, ses seviyesi) sağlamak için.

- Nem Sensörleri: Havadaki veya topraktaki nem seviyesini belirlemek için.

- Basınç Sensörleri: Basınçtaki değişimleri algılamak için.


Örnek Program Kodları:

int pot = 0;

float voltaj = 0;


void setup()

{

      Serial.begin(9600);

}


void loop()

{

      pot = analogRead(A0);

      Serial.print("POT= ");

      Serial.print(pot);

      voltaj = (5.0 / 1023) * pot;

      Serial.print("   voltaj=");

      Serial.print(voltaj);

      Serial.println("volt");

      delay(500);

}


_____________________________________________________________________________________________________________________________________________________


0 comments:

Yorum Gönder

Toplam Sayfa Görüntüleme Sayısı

Seri İletişim Protokolleri

Sensörlerin Arduino İle Kullanımı

Popular Posts

Yararlanılan Kaynaklar

İletişim

gokdag17@gmail.com