Bu uygulamamızda ortamın sıcaklığını Raspberry Pi Pico ile ölçeceğiz. Daha önce bahsettiğimiz üzere kartın üstünde sıcaklık sensörü mevcut. Bu yüzden dışardan herhangi bir sensörden yardım almadan sıcaklığı ölçebiliriz. Sıcaklık sensörü ADC ye bağlı olduğu için hangi pinde olduğunu RP2040 Datasheet’ini inceleyerek öğreniyoruz.
Sıcaklık sensörünün ADC 4 pininde olduğunu öğrendikten sonra kod yazma işlemine geçiyoruz.
Çevirme işlemi yapmamız gerekiyor. Çevirme işlemi en yüksek voltajın pwm değerine bölünmesi ile gerçekleşir. En yük voltaj 3.3V pwm değeri ise 65535[(2^n)-1] dir.
deger_don = 3.3/(65535)
Sıcaklık değerinin formülü Datasheet’te verilmiştir. Formülü uygulatmadan önce ADC voltaj değerini hesaplatmamız gerekli. ADC voltaj değeri sensorden okunan değer ile çevirme işleminin çarpımı sonucudur.
ADC_voltaj = sensor.read_u16() * deger_don
t = 27 - (ADC_voltaj - 0.706)/0.001721
Kodun tamamı aşağıda verilmiştir.
import machine
import utime
sensor = machine.ADC(4)
deger_don = 3.3/(65535)
while True:
ADC_voltaj = sensor.read_u16() * deger_don
t = 27 -(ADC_voltaj - 0.706)/0.001721
print(t, "°C ")
utime.sleep(1)
Ortamın sıcaklığının değer çıktıları aşağıdaki gibidir.
Commentaires