Arduino ile HIH-4030 Nem Sensörü
Her zaman nemli ortamları deneyimlesek de nem oranı doğru bir şekilde tahmin edebileceğimiz bir şey değildir. Bunun nedeni ise nem hakkında konuşurken bağıl nemden bahsetmemiz. Bağıl nem sıcaklığa bağlıdır. Bu nedenden dolayı tek başına sıcaklık değiştiğinde bile bağıl nemin değeri değişir. Bu sebepten nem değerini tahmin etmek zordur. Fakat HIH-4030 Nem Sensörü ile bağıl nemi ölçmek gayet basit. HIH-4030 düşük güçle çalışan ve analog çıktı veren bir sensördür.
HIH-4030 nem sensörünüzü Arduinonuza bağlamak çok kolay. Yalnızca yapmanız gereken 5V/Toprak ile güç verip sensörünüzü Arduinonuzdaki analog pine bağlamak olacak. İsterseniz 3.3V ile de güç verebilirsiniz. Eğer böyle bir şeye karar verdiyseniz yapmanız gerek kodunuzdaki “supplyVolt” değerini 5 den 3.3 e çevirmelisiniz.
► İlginizi Çekebilir : Arduino ile TEMT6000 Ortamsal Işık Sensörü
Programlama
Not: Bağıl nemi bulabilmek için ölçeceğiniz ortamdaki gerçek sıcaklık değerini bilmeniz gerekiyor.
Bundan dolayı sensörünüzü bir termometre ile kullanmanız gerekiyor. Sizin için bu olayı basitleştirmek gerekirse kodumuzdaki nemi bulabilmek için kullandığımız fonksiyona aktardığımız bir sıcaklık sabiti bulunuyor. Kodumuzda nemi bulurken işte bu sıcaklık sabitini termometreniz ile ölçtüğünüz sıcaklık değeri ile değiştirmeniz yararınıza olacaktır.
Not: HIH-4030 Nem Sensörü ışığa karşı duyarlı bir sensör bundan dolayı sensörünüzde ölçüm yaparken en iyi performansı alabilmek için sensörünüzü parlak ışıktan korumalısınız.
Kullanmanızı Tavsiye Ettiğimiz Termometreler.
-TMP102
-DS18B20
Kod:
void setup(){
Serial.begin(9600);
}
void loop(){
//bağıl nemi doğru hesaplayabilmek için sıcaklığa ihtiyacımız var.
float temperature = 25; //buradaki değeri termometrenizde bulduğunuz sıcaklık değeri ile değiştirmelisiniz
float relativeHumidity = getHumidity(temperature);
Serial.println(relativeHumidity);
delay(100); //çıktımızı rahat okumak için yavaşlatır.
}
float getHumidity(float degreesCelsius){
//Bağıl nemi hesaplar
float supplyVolt = 5.0;
// Sensördeki değeri okur:
int HIH4030_Value = analogRead(HIH4030_Pin);
float voltage = HIH4030_Value/1023. * supplyVolt; // convert to voltage value
// çıktı voltaj değerini bağıl neme dönüştürür
// Eşitlik HIH-4030/31 verisafasından çekilmiştir.
// Bu eşitlik sensörünüze kalibre edilmemiştir.
float sensorRH = 161.0 * voltage / supplyVolt - 25.8;
float trueRH = sensorRH / (1.0546 - 0.0026 * degreesCelsius); //sıcaklığı düzenler
return trueRH;
}
Kaynak:
►bildr.org
- Dünyanın En Görkemli 10 Güneş Tarlası
- Dünyanın En Büyük 10 Makinesi
- 2020’nin En İyi 10 Kişisel Robotu
- Programlamaya Erken Yaşta Başlayan 7 Ünlü Bilgisayar Programcısı
- Üretimin Geleceğinde Etkili Olacak 10 Beceri
- Olağan Üstü Tasarıma Sahip 5 Köprü
- Dünyanın En İyi Bilim ve Teknoloji Müzeleri
- En İyi 5 Tıbbi Robot
- Dünyanın En Zengin 10 Mühendisi
- Üretim için 6 Fabrikasyon İşlemi
- DrivePro Yaşam Döngüsü Hizmetleri
- Batarya Testinin Temelleri
- Enerji Yönetiminde Ölçümün Rolü: Verimliliğe Giden Yol
- HVAC Sistemlerinde Kullanılan EC Fan, Sürücü ve EC+ Fan Teknolojisi
- Su İşleme, Dağıtım ve Atık Su Yönetim Tesislerinde Sürücü Kullanımı
- Röle ve Trafo Merkezi Testlerinin Temelleri | Webinar
- Chint Elektrik Temel DIN Ray Ürünleri Tanıtımı
- Sigma Termik Manyetik Şalterler ile Elektrik Devrelerinde Koruma
- Elektrik Panoları ve Üretim Teknikleri
- Teknik Servis | Megger Türkiye