KUNJUNGI KAMI

KUNJUNGI KITA DI BUKALAPAK, TOKOPEDIA DAN SHOPEE

Tutorial Menghubungkan Sensor Kelembaban Tanah dengan Arduino


Ketika Anda mendengar istilah 'taman pintar', salah satu hal pertama yang muncul dalam pikiran adalah sistem yang memantau tingkat kelembaban tanah dan secara otomatis menyuplai jumlah air yang diperlukan ke tanaman.


Dengan sistem ini, tanaman dapat disiram hanya saat diperlukan, menghindari penyiraman berlebihan atau kurang.


Jika Anda ingin membangun sistem seperti itu, Anda pasti memerlukan Sensor Kelembaban Tanah.


Bagaimana Cara Kerja  Sensor Kelembaban Tanah ?

Sensor kelembaban tanah beroperasi dengan cara yang sederhana.


Probu dengan bentuk garpu dan dua konduktor terbuka berfungsi sebagai resistor variabel (serupa dengan potensiometer) yang resistansinya berubah dengan konten kelembaban tanah.




resistansi ini bervariasi terbalik dengan kelembaban tanah:


  • Semakin banyak air di tanah, konduktivitas semakin baik dan resistansinya semakin rendah.
  • Semakin sedikit air di tanah, konduktivitas semakin rendah dan resistansinya semakin tinggi.

Sensor ini menghasilkan tegangan keluaran sesuai dengan resistansi, yang dengan mengukurnya kita dapat menentukan tingkat kelembaban tanah.


Gambaran Perangkat

Sebuah sensor kelembaban tanah tipikal terdiri dari dua bagian.


Alat ukur 

Sensor ini mencakup alat ukur berbentuk garpu dengan dua konduktor terbuka yang dimasukkan ke dalam tanah atau tempat mana pun yang kelembaban kontennya akan diukur.


Seperti yang disebutkan sebelumnya, itu bertindak sebagai resistor variabel, dengan resistansi bervariasi sesuai dengan kelembaban tanah.




Modul

Selain itu, sensor ini mencakup modul elektronik yang menghubungkan probu ke Arduino.


Modul ini menghasilkan tegangan keluaran berdasarkan resistansi probu, yang tersedia pada pin Analog Output (AO).


Sinyal yang sama diumpankan ke Komparator Presisi Tinggi LM393, yang mengubahnya menjadi digital dan membuatnya tersedia pada pin Digital Output (DO).




Modul ini mencakup potensiometer untuk mengatur sensitivitas keluaran digital (DO).


Anda dapat menggunakannya untuk mengatur ambang batas, sehingga saat tingkat kelembaban tanah melebihi ambang batas, modul mengeluarkan sinyal rendah jika tidak, maka tinggi.


Pengaturan ini sangat berguna untuk memicu tindakan saat ambang tertentu tercapai. Misalnya, jika tingkat kelembaban di tanah melebihi ambang tertentu, Anda dapat mengaktifkan relay untuk memulai penyiraman tanaman.



Putar knob searah jarum jam untuk meningkatkan sensitivitas dan berlawanan jarum jam untuk menguranginya.


Modul ini juga mencakup dua LED. LED Daya menyala saat modul dihidupkan, dan LED Status menyala saat tingkat kelembaban tanah melebihi nilai ambang.


Pinout Sensor Kelembaban Tanah

Sensor kelembaban tanah sangat mudah digunakan dan hanya memerlukan empat pin untuk dihubungkan.



AO (Analog Output) menghasilkan tegangan keluaran analog yang sebanding dengan tingkat kelembaban tanah, sehingga tingkat yang lebih tinggi menghasilkan tegangan yang lebih tinggi dan tingkat yang lebih rendah menghasilkan tegangan yang lebih rendah.


DO (Digital Output) menunjukkan apakah tingkat kelembaban tanah berada dalam batas yang ditentukan. D0 menjadi LOW ketika tingkat kelembaban melebihi nilai ambang batas (seperti yang diatur oleh potensiometer), dan sebaliknya tinggi.


VCC menyuplai daya ke sensor. Disarankan agar sensor diberi daya dari 3.3V hingga 5V. Harap diingat bahwa keluaran analog akan bervariasi tergantung pada tegangan yang diberikan ke sensor.


GND adalah pin ground.


Eksperimen 1 - Mengukur Kelembaban Tanah Menggunakan Output Analog (A0)

Dalam eksperimen pertama kami, kami akan membaca keluaran analog untuk memperkirakan tingkat kelembaban tanah.


Pengawatan

Mari hubungkan sensor kelembaban tanah ke Arduino.


Mari mulai dengan memberi daya pada sensor. Untuk ini, Anda dapat menghubungkan pin VCC modul ke pin 5V Arduino.


Namun, masalah yang sudah dikenal dengan sensor ini adalah bahwa umur pakainya lebih pendek karena terus-menerus terpapar kelembaban. Lebih lanjut, pemberian daya konstan pada sensor sementara terkubur dalam tanah signifikan mempercepat laju korosi.


Untuk menghindari hal ini, disarankan agar sensor hanya dihidupkan saat pengukuran dilakukan.


Salah satu cara mudah untuk melakukannya adalah dengan menghubungkan pin daya sensor ke pin digital di Arduino dan mengaturnya menjadi HIGH atau LOW sesuai kebutuhan. Juga, daya total yang ditarik oleh modul (dengan kedua LED menyala) sekitar 8 mA, sehingga memberi daya pada modul dari pin digital adalah aman. Jadi, kita akan menghubungkan pin VCC ke pin digital #7 Arduino.


Terakhir, hubungkan pin A0 ke pin ADC A0 Arduino.


Pengawatan ditunjukkan dalam gambar di bawah.



Pengawatan sensor kelembaban tanah dengan Arduino untuk membaca keluaran analog

Mencari Nilai Ambang Batas

Untuk memperkirakan tingkat kelembaban tanah, catat nilai keluaran sensor Anda saat tanah se-kering mungkin dan saat benar-benar jenuh.

Cukup jalankan sketsa di bawah ini dan ambil pembacaan Anda.


void setup() {
	pinMode(sensorPower, OUTPUT);
	
	// Initially keep the sensor OFF
	digitalWrite(sensorPower, LOW);
	
	Serial.begin(9600);
}

void loop() {
	//get the reading from the function below and print it
	Serial.print("Analog output: ");
	Serial.println(readSensor());
	
	delay(1000);
}

//  This function returns the analog soil moisture measurement
int readSensor() {
	digitalWrite(sensorPower, HIGH);	// Turn the sensor ON
	delay(10);							// Allow power to settle
	int val = analogRead(sensorPin);	// Read the analog value form sensor
	digitalWrite(sensorPower, LOW);		// Turn the sensor OFF
	return val;							// Return analog moisture value
}



Ketika Anda menjalankan sketsa tersebut, Anda seharusnya melihat pembacaan yang mirip dengan berikut:


  • Saat tanah kering (sekitar 850)

  • Saat tanah sepenuhnya jenuh (sekitar 400)


Uji ini mungkin memerlukan beberapa percobaan dan kesalahan. Setelah Anda mendapatkan pembacaan tersebut, Anda dapat menggunakannya sebagai ambang batas untuk memicu tindakan.


Kode Arduino

Sketsa di bawah ini memperkirakan tingkat kelembaban tanah menggunakan nilai ambang batas berikut:



  • < 500 terlalu basah
  • 500-750 adalah rentang target
  • > 750 cukup kering untuk disiram"



/* Change these values based on your calibration values */
#define soilWet 500   // Define max value we consider soil 'wet'
#define soilDry 750   // Define min value we consider soil 'dry'

// Sensor pins
#define sensorPower 7
#define sensorPin A0

void setup() {
	pinMode(sensorPower, OUTPUT);
	
	// Initially keep the sensor OFF
	digitalWrite(sensorPower, LOW);
	
	Serial.begin(9600);
}

void loop() {
	//get the reading from the function below and print it
	int moisture = readSensor();
	Serial.print("Analog Output: ");
	Serial.println(moisture);

	// Determine status of our soil
	if (moisture < soilWet) {
		Serial.println("Status: Soil is too wet");
	} else if (moisture >= soilWet && moisture < soilDry) {
		Serial.println("Status: Soil moisture is perfect");
	} else {
		Serial.println("Status: Soil is too dry - time to water!");
	}
	
	delay(1000);	// Take a reading every second for testing
					// Normally you should take reading perhaps once or twice a day
	Serial.println();
}

//  This function returns the analog soil moisture measurement
int readSensor() {
	digitalWrite(sensorPower, HIGH);	// Turn the sensor ON
	delay(10);							// Allow power to settle
	int val = analogRead(sensorPin);	// Read the analog value form sensor
	digitalWrite(sensorPower, LOW);		// Turn the sensor OFF
	return val;							// Return analog moisture value
}
If everything is fine, you should see something

Jika semuanya baik-baik saja, Anda seharusnya melihat sesuatu yang serupa di monitor serial.

keluaran analog sensor kelembaban tanah


Eksperimen 2 – Mengukur Kelembaban Tanah menggunakan Keluaran Digital (D0)

Pada eksperimen kedua kami, kita akan menggunakan keluaran digital untuk menentukan apakah tingkat kelembaban tanah berada dalam batas yang dapat diterima.


Pengawatan

Kita akan menggunakan kembali rangkaian percobaan sebelumnya. Cukup putuskan koneksi ke pin ADC dan hubungkan pin D0 pada modul ke pin digital #8 di Arduino.


Gambar berikut menunjukkan pengawatan tersebut.



pengawatan sensor kelembaban tanah dengan arduino untuk membaca keluaran digital

Menetapkan ambang batas

Modul ini memiliki potensiometer bawaan untuk mengatur ambang batas tingkat kelembaban di atasnya yang modul akan mengeluarkan sinyal LOW dan LED status akan menyala.

keluaran digital sensor kelembaban tanah

Sekarang, untuk menetapkan ambang batas tersebut, masukkan probe ke dalam tanah ketika tanaman Anda membutuhkan penyiraman dan putar potensiometer searah jarum jam sampai LED Status menyala. Kemudian, putar potensiometer kembali berlawanan arah jarum jam sampai LED mati.


Itulah yang perlu Anda lakukan; modul Anda kini siap digunakan.


Kode Arduino

Sekarang, unggah sketsa di bawah ini ke Arduino Anda.


// Sensor pins
#define sensorPower 7
#define sensorPin 8

void setup() {
	pinMode(sensorPower, OUTPUT);

	// Initially keep the sensor OFF
	digitalWrite(sensorPower, LOW);

	Serial.begin(9600);
}

void loop() {
	//get the reading from the function below and print it
	int val = readSensor();
	Serial.print("Digital Output: ");
	Serial.println(val);

	// Determine status of our soil moisture situation
	if (val) {
		Serial.println("Status: Soil is too dry - time to water!");
	} else {
		Serial.println("Status: Soil moisture is perfect");
	}

	delay(1000);	// Take a reading every second for testing
					// Normally you shoul take reading perhaps every 12 hours
	Serial.println();
}

//  This function returns the analog soil moisture measurement
int readSensor() {
	digitalWrite(sensorPower, HIGH);  // Turn the sensor ON
	delay(10);              // Allow power to settle
	int val = digitalRead(sensorPin); // Read the analog value form sensor
	digitalWrite(sensorPower, LOW);   // Turn the sensor OFF
	return val;             // Return analog moisture value
}


Anda seharusnya melihat keluaran serupa di monitor serial.


Tutorial Menggabungkan Sensor Kelembaban Tanah Dengan Arduino 

Teknologi Sensor kelembaban Tanah : Menjaga Tanaman Menjadi Efisien

Sensor Kelembaban Tanah 

Soil Moisture Sensor 

Cara Kerja Sensor Kelembaban Tanah 

Cara Kerja Soil Moisture Sensor 

Mengukur Kelembaban Tanah Dengan Sensor Kelembaban Tanah

Penyiraman Tanah Otomatis 

Membuat Smart Garden dengan Arduino 

Membuat Taman Pintar Dengan Arduino

Experimen Mengukur Kelembaban Tanah 

Prinsip Kerja Sensor Kelembaban Tanah 

Sistem Penyiraman Otomatis Dengan Sensor Kelembaban Tanah 

Sensor Kelembaban Tanah Arduino 

Cara Menggunakan Sensor Kelembaban Tanah 

Rangkaian Sensor Kelembaban Tanah 

Cara Menampilkan Output Sensor Kelembaban Tanah 

Cara Menampilkan Output Sensor Kelembaban Tanah di LED 

Cara Membuat Program Sensor Kelembaban Tanah di Arduino IDE

Cara Seting Sensor Kelembaban Tanah di Arduino