Arduino ve breadboard kullanarak bir nem sensörü yaptık ama sensörü suya daldırınca direk yüzde yüz olmasını istiyoruz yani tamamı girince yarısında yüzde elli gibi yeterince hassas olması gerek. Yardımcı olur musunuz?
Kod:
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
const int scad = A0;
int nem_yuzdesi_sonucu;
float yuzde;
float sensorOku() {
float toplam = 0;
int okumaSayisi = 50;
for (int i = 0; i < okumaSayisi; i++) {
toplam += analogRead(scad);
delay(1);
}
return toplam / okumaSayisi;
}
void setup() {
Serial.begin(9600);
lcd.begin(16, 2);
lcd.print("Tar1m 2.0");
delay(2000);
lcd.clear();
}
void loop() {
nem_yuzdesi_sonucu = sensorOku();
yuzde = (1 - (nem_yuzdesi_sonucu / 295.0)) * 508;
if (yuzde > 100) {
yuzde = 100;
}
if (yuzde < 10) {
yuzde = 0;
}
Serial.print("Nem: ");
Serial.print(yuzde);
Serial.println("%");
lcd.setCursor(0, 0);
lcd.print("Nem: ");
lcd.setCursor(5, 0);
lcd.print(yuzde);
lcd.print("%");
delay(1000);
}
Son düzenleyen: Moderatör: