Arduino Analog Giriş

0
54
Okunma

Arduino Analog Giriş

Bu örnekte bir değişken direnç (bir potansiyometre veya bir fotoezitör(LDR) kullanıyoruz, bir Arduino veya Genuino kartının bir analog girişini kullanarak değerini okuyoruz ve dahili LED’in göz kırpma oranını buna göre değiştiriyoruz. Direnç analog değeri bir voltaj olarak okunur, çünkü analog girişler böyle çalışır.

Gerekli Donanım

  • Arduino veya Genuino
  • Potansiyometre veya
  • 10K ohm fotodirenç ve 10K ohm direnç
  • pin 13 üzerinde dahili LED veya
  • 220 ohm direnç ve kırmızı LED

Devre

Burada İster LDR’li olan isterseniz de potansiyometre kullanılan örnedği deneyebilirsiniz. İkisinde de mantık ve örnek sonucumuz aynıdır.

Arduino veya Genuino kartına üç kablo bağlayın. İlk önce potansiyometrenin dış pimlerinden birinden (-)’ye gider. İkincisi 5 volttan, potansiyometrenin diğer dış pimine gider. Üçüncüsü analog girişten 0 potansiyometrenin orta pimine gider.

Bu örnekte, kartın pim 13’e takılı yerleşik yerleşik LED’in kullanılması mümkündür. Ek bir LED kullanmak için, daha uzun olan bacağını (pozitif bacak veya anot), 220 ohm dirençle seri halde dijital pim 13’e takın, ve pim 13’ün yanındaki zemine (negatif bacak veya katot) kısa bacak (GND) pimi.

Bir LDR olan devrede, gerilimi ölçmek için ve Analog girişine izin vermek için bir direnç bölücü kullanır. Bu girişler hemen hemen herhangi bir akım çekmez, bu nedenle Ohm yasası ile 5V’a bağlı bir direncin diğer ucunda ölçülen voltaj direnç değerine bakılmaksızın her zaman 5V olur. Fotodirenç değerine orantılı bir voltaj elde etmek için bir direnç bölücü gereklidir. Bu devre bir değişken direnç, sabit bir direnç kullanır ve ölçüm noktası dirençlerin ortasındadır. Ölçülen voltaj (Vout) bu formülü takip eder:

Vout = Vin * (R2 / (R1 + R2))

Burada Vin 5V, R2 10k ohm ve R1 karanlıkta 1M ohm’dan gün ışığında 10k ohm’a (10 lümen) ve parlak ışık veya güneş ışığında (> 100 lümen) 1k ohm’dan az olan fotorezistör değeridir.

Kod

Bu sensorPin başlangıcında, sensorPin değişkeni, potansiyometrenin takılı olduğu analog pim 0’a ve ledPin dijital pim 13’e ayarlanmıştır. Ayrıca sensörünüzden okunan değerleri saklamak için başka bir değişken olan sensorValue de yaratabilirsiniz. .

analogRead() komutu, 0 ila 5 volt arasındaki bir dijital değere, 0 ila 5 volt arasındaki giriş voltajı aralığını dönüştürür. Bu, analog-dijital dönüştürücü veya ADC olarak adlandırılan mikrodenetleyicinin içindeki bir devre tarafından yapılır.

Potansiyometrenin milini çevirerek, potansiyometrenin merkez piminin (veya silicinin) her iki tarafındaki direnç miktarını değiştirirsiniz. Bu, orta pim ile iki dış pim arasındaki göreceli rezistansları değiştirerek, analog girişte farklı bir voltaj verir. Mil tek yönde tamamen çevrildiğinde, merkez pim ile zemine bağlı pim arasında direnç yoktur. Merkez analogRead() voltaj 0 volttur ve analogRead() 0 analogRead() döndürür. Şaft diğer yönde tamamen çevrildiğinde, orta pim ile pim +5 volta bağlandığında direnç yoktur. analogRead() voltaj 5 volttur ve analogRead() döndürür. analogRead() arasında, analogRead() uygulanan voltajın miktarı ile orantılı olan 0 ile 1023 arasında bir sayı döndürür.

sensorValue saklanan bu değer, göz kırpma döngüsünüz için bir delay() ayarlamak için kullanılır. Değer ne kadar yüksekse, döngü ne kadar uzun olursa, değer o kadar küçük olur, döngü o kadar kısa olur. Değer çevrimin başında okunur, bu nedenle açma / kapama zamanı her zaman eşittir.

Kaynak:arduino.cc

1 Yıldız2 Yıldız3 Yıldız4 Yıldız5 Yıldız 1 Oydan 5,00 Puan. Bu yazıya oy vermek ister misiniz?
Loading...
Elektronik, Bilim, Teknoloji, Müzik, Tasarım.
Paylaş

CEVAP VER

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.