Eğitimler
ReadAnalogVoltage
Bu sayfada ... ( gizle )
Analog Gerilimi Okuma
Bu örnek, analog pim 0'da bir analog girişin nasıl okunacağını, analogRead'den () değerlerin voltaja nasıl dönüştürüleceğini ve Arduino Yazılımının (IDE) seri monitörüne nasıl yazdırılacağını gösterir.
Devre
Potansiyometreden üç kabloyu kartınıza bağlayın. Birincisi, potansiyometrenin dış pimlerinden birinden toprağa gider. İkincisi, potansiyometrenin diğer dış piminden 5 volta gider. Üçüncüsü, potansiyometrenin orta piminden analog giriş 0'a gider.
Potansiyometrenin şaftını çevirerek, potansiyometrenin orta pimine bağlı sileceğin her iki tarafındaki direnç miktarını değiştirirsiniz. Bu merkez pimdeki voltajı değiştirir. Merkez ve 5 volta bağlı taraf arasındaki direnç sıfıra yakın olduğunda (ve diğer taraftaki direnç 10 kilohms'ye yakınsa), merkez pimdeki voltaj 5 volta yakındır. Dirençler ters çevrildiğinde, merkez pimdeki voltaj 0 volt veya toprağa yakındır. Bu voltaj, giriş olarak okuduğunuz analog voltajdır .
Kartın mikro denetleyicisinin içinde, analogdan dijitale dönüştürücü veya ADC adı verilen ve bu değişen voltajı okuyan ve 0 ile 1023 arasında bir sayıya dönüştüren bir devre vardır. Mil bir yönde tamamen çevrildiğinde, 0 vardır volt pime gidecek ve giriş değeri 0 olacaktır. Mil ters yönde tamamen çevrildiğinde, pime 5 volt gidecek ve giriş değeri 1023 olacaktır. Arada analogRead () bir sayı döndürür 0 ile 1023 arasında, pime uygulanan voltaj miktarı ile orantılıdır.
Şematik
kod
Aşağıdaki programda, kurulum işlevinde yapacağınız ilk şey, panonuzla bilgisayarınız arasında hat ile seri iletişim, saniyede 9600 bit veriye başlamaktır:
Serial.begin(9600);
Ardından, kodunuzun ana döngüsünde, potansiyometrenizden gelen direnç değerini (0 ile 1023 arasında, int
veri tipi için mükemmel) depolamak için bir değişken oluşturmanız gerekir:
int sensorValue = analogRead(A0);
Değerleri 0-1023'ten pimin okuduğu voltaja karşılık gelen bir aralığa değiştirmek için başka bir değişken, bir float
oluşturmanız ve biraz matematik yapmanız gerekir. 1023.0 tarafından 0.0 ile 5.0, böl 5.0 arasındaki sayılar ölçek ve için çarpın o sensorValue tarafından:
float voltage= sensorValue * (5.0 / 1023.0);
Son olarak, bu bilgileri seri pencerenize yazdırmanız gerekir. Bunu, son kod satırınızdaki Serial.println () komutuyla yapabilirsiniz :
Serial.println(voltage)
Şimdi, Seri Monitörünüzü Arduino IDE'de açtığınızda (üstteki yeşil çubuğun sağ tarafındaki simgeye tıklayarak veya Ctrl + Shift + M tuşlarına basarak), 0.0 - 5.0 arasında sabit bir sayı akışı görmelisiniz. Tencereyi çevirdiğinizde, değerler A0 pinine gelen voltaja karşılık gelen değişecektir.
Ayrıca bakınız
- kurulum ()
- döngü ()
- analogRead ()
- int
- Seri
- şamandıra
- BareMinimum : Bir Arduino çizimini başlatmak için gereken minimum kod.
- Yanıp sönme : Bir LED'i açar ve kapatır.
- DigitalReadSerial : Bir anahtarı okuyun, durumu Arduino Seri Monitöre yazdırın.
- AnalogReadSerial : Bir potansiyometre okuyun, durumunu Arduino Seri Monitöre yazdırın.
- Solma : Bir LED'in solması için analog çıkış kullanımını gösterir.
- ReadAnalogVoltage : Analog girişi okur ve gerilimi seri monitöre yazdırır