Anda di sini

Pemrograman

Kode Program Membaca Kelembapan Tanah YL69 Arduino NodeMCU

Aditya Suranata - 06 November 2017 22:25:09 0

Berikut adalah kode program untuk membaca kelembapan tanah menggunakan sensor YL69 pada Arduino maupun NodeMCU. Nilai yang dihasilkan oleh program ini adalah dalam bentuk persentase. Kode ini telah dilengkapi dengan fungsi sampling dan kalibrasi batas atas dan batas bawah yang sangat membantu untuk mendapatkan data pembacaan yang paling akurat dan stabil.

Bagaimana cara menggunakannya?

Sangat sederhana sekali, kamu cukup copy paste kodenya ke Arduino. Untuk pengkabelan, kamu harus menghubungkan pin VCC sensor ke Pin 8, dan pin Data analog pada sensor ke pin A0. Kemudian, untuk kalibrasi kamu harus menyiapkan media uji berupa tanah basah. Untuk mendapatkan nilai kalibrasi batas atas atau val_max, kamu harus menguji sensornya pada media yang kamu anggap benar-benar basah atau yang mewakili kelembapan 100%. Begitu juga untuk nilai batas bawah atau val_min, kamu harus menyelupkan sensornya ke media tanah yang kamu anggap paling kering atau mewakili kelembapan 0%. Bagaimana caranya tau? bisa menggunakan alat uji kelembapan tanah analog yang banyak dijual di toko-toko pertanian.

Ketika mencelupkan ke tanah basah, lihat output kalib pada serial monitor catat nilai yang paling stabil. Begitu juga pada tanah kering, catat berapa nilai kalibnya. Setelah mendapatkan nilai kalib yang pas untuk batas atas dan batas bawah, ganti nilai val_max dengan kalib basah, dan val_min dengan kalib kering. Upload ulang kodenya ke Arduino maupun NodeMCU, dan voila.... Emo 59

Bagaimana agar nilai persennya menjadi RH (Relative Humidity) ?

Caranya adalah satu kata yaitu rumit. Banyak orang yang salah kaprah dengan sensor YL69 ini, sensor ini bukan sensor kelembapan yang dapat mengukur kelembapan RH maupaun udara. Ini adalah sensor kelembapan analog murah meriah yang nilai outputnya tidak ada standarnya, alias suka suka kita saja. Sensor hanya mengeluarkan nilai analog dan tugas kita yang mengkalibrasi nilai analog tersebut menjadi range kelembapan seperti basah, sedang, kering maupun nilai dalam bentuk persen.

So... bagi teman-teman yang mumet karena masalah ini, saya sarankan ganti sensor saja ke sensor berjenis SHT. Tapi harganya agak sedikit mahal, paling murah sekitar 175Rban. Ada juga yang versi kaweannya, as always. Nama yang kawean umumnya berkode DHT, harganya relatif murah hingga setengah dari harga yang asli (70Rban >).

Oke, sekian catatan singkat nan padat ini.. semoga bermanfaat.

Eh, btw kodenya lupa... ini ya Biggrin

// Pin analog di A0, ini untuk power
#define PIN_YL69 D8

unsigned int getAnalog(){
  const int sampling = 100;
  unsigned int analog = 0;
  for (int i = 0; i < sampling; i++){
      digitalWrite(PIN_YL69, HIGH);
      int nilaiSensor = analogRead(A0);
      digitalWrite(PIN_YL69, LOW);
      analog += nilaiSensor;
  }
  analog = analog / sampling;
  return analog;
}

uint8_t getSoil(){
  /* Nilai kalibrasi */
  /* HARUS DIATUR SENDIRI */
  // Batas atas
  const int val_max = 730;
  // Batas bawah
  const int val_min = 108;
  const int sampling = 100;
  
  unsigned long analog = 0;
  for (int i = 0; i < sampling; i++){
      digitalWrite(PIN_YL69, HIGH);
      int nilaiSensor = analogRead(A0);
      digitalWrite(PIN_YL69, LOW);
      analog += nilaiSensor;
  }
  analog = analog / sampling;
  if(analog > val_max){
      analog = val_max;
  }
  else if(analog < val_min){
      analog = val_min;
  }
  uint8_t persen = map(analog,val_max,val_min,0,100);
  return persen;
}

void setup(){
  pinMode(PIN_YL69, OUTPUT);
  digitalWrite(PIN_YL69, LOW);
}

void loop(){
  Serial.print("Kalib: ");
  Serial.print(getAnalog());
  Serial.print(" - ");
  Serial.print("Persen: ");
  Serial.print(getSoil());
  Serial.println('%');
  delay(1000);
}

Produk Terkait
Sensor Kelembapan Tanah YL-69 Module Soil Moisture

Sensor Kelembapan Tanah YL-69 Module Soil Moisture

CMP230317-63

Sensor kelembapan tanah analog dengan chip komparator yang sangat stabil, sensor ini dapat bekerja pada logic 3.3V hingga 5V jadi sangat cocok untuk...

24,000 IDR Beli

DHT22 Digital Temperature and Humidity Sensor

DHT22 Digital Temperature and Humidity Sensor

CMP230317-35

DHT22 Digital Temperature and Humidity Sensor, sensor suhu dan kelembapan digital murah merakyat, jauh lebih presisi, lebih akurat dari DHT11.

74,000 IDR Beli

131
Image

Aditya Suranata

Aditya suka menulis, bukan hanya sekedar hobi, menulis menjadi medianya untuk mencurahkan pikiran dan perasaan. Di TutorKeren.com kebanyakan menyumbang tulisan sesuai dengan minat dan keahliannya yaitu pada kategori pemrograman dan elektronika. Selain itu juga gemar menulis mengenai hal-hal umum, seperti ilmu alam, sosial dan beberapa pengalamannya yang mungkin bisa berguna untuk orang lain.

Mari Gabung

Halo Emo 51 , Ada yang ingin disampaikan? Jangan sungkan untuk gabung diskusi ini. Silahkan Login dulu atau Daftar baru.