Ks0049 keyestudio Soil Humidity Sensor: Difference between revisions

From Keyestudio Wiki
Jump to navigation Jump to search
No edit summary
Line 1: Line 1:
<br>
==Introduction==
==Introduction==
This is a simple soil humidity sensor aimed to detect the soil humidity. If the soil is in lack of water, the analog value output by the sensor will decrease, otherwise, it will increase. If you use this sensor to make an automatic watering device, it can detect whether your botany is thirsty to prevent it from withering when you go out. Combine this sensor with Arduino controller can make your plant more comfortable and your garden more smarter.  
This is a simple soil humidity sensor aims to detect the soil humidity. <br>
If the soil is in lack of water, the analog value output by the sensor will decrease; otherwise, it will increase.  
If you use this sensor to make an automatic watering device, it can detect whether your botany is thirsty to prevent it from withering when you go out. <br>
Using the sensor with Arduino controller makes your plant more comfortable and your garden smarter.  
The soil humidity sensor module is not as complicated as you might think, and if you need to detect the soil in your project, it will be your best choice.<br>


The soil humidity sensor module is not as complicated as you might think, so if you need to detect the soil in your project, it will be your best choice. The sensor is set with two probes which are inserted into the soil. If the current goes through the soil, the sensor will get resistance value by reading the current changes between the two probes, then convert the resistance value into moisture content. The higher moisture (less resistance), the higher conductivity the soil has.  <br>
The sensor is set with two probes inserted into the soil, then with the current go through the soil, the sensor will get resistance value by reading the current changes between the two probes and convert such resistance value into moisture content. <br>
The surface of the sensor has undergone metallization process to prolong its service life. Insert it into the soil and then use the AD converter to read it. With the help of this sensor, the plant can remind of you: I need water.
The higher moisture (less resistance), the higher conductivity the soil has.  <br>
Insert it into the soil and then use the AD converter to read it. With the help of this sensor, the plant can remind of you: I need water.
 
 
<br>[[File:KS0049.jpg|500px|frameless|thumb]]<br>
<br>[[File:KS0049.jpg|500px|frameless|thumb]]<br>


<br>
==Specification==
==Specification==
*Power Supply Voltage: 3.3V or 5V
* Power Supply Voltage: 3.3V or 5V
*Working Current: ≤ 20mA
* Working Current: ≤ 20mA
*Output Voltage: 0-2.3V (When the sensor is totally immersed in water, the voltage will be 2.3V) The higher humidity, the higher the output voltage
* Output Voltage: 0-2.3V (When the sensor is totally immersed in water, the voltage will be 2.3V) the higher humidity, the higher the output voltage
*Sensor Type: Analog output
* Sensor type: Analog output
*Interface Definition: Pin1- signal, pin2- GND, pin3 - VCC  
* Interface definition: Pin1- signal, Pin2- GND, Pin3 - VCC  
*Service life: About one year (gold-plated surface for enhancing conductivity and corrosion resistance )
* Packaging : Electrostatic bag sealing
*Module Size: 20X60mm


<br>
==Connection Diagram ==
==Connection Diagram ==
<br>[[File:Ks0049-1.png|700px|frameless|thumb]]<br>


<br>[[File:492.png|500px|frameless|thumb]]<br>
<br>
 
==Sample Code 1 ==
==Sample Code ==
Upload the code to check the analog value on the monitor <br>


<pre>
<pre>
Line 26: Line 35:
  # Example code for the moisture sensor
  # Example code for the moisture sensor
  # Connect the sensor to the A0(Analog 0) pin on the Arduino board
  # Connect the sensor to the A0(Analog 0) pin on the Arduino board
 
  # the sensor value description
  # the sensor value description
  # 0  ~300     dry soil
  # 0  ~300     dry soil
  # 300~700     humid soil
  # 300~700     humid soil
  # 700~950     in water
  # 700~950     in water
*/
*/
 
void setup(){
void setup(){
 
 
  Serial.begin(57600);
  Serial.begin(57600);
 
}
 
void loop(){
void loop(){
 
  Serial.print("Moisture Sensor Value:");
  Serial.print("Moisture Sensor Value:");
  Serial.println(analogRead(0)); 
  Serial.println(analogRead(0)); 
  delay(100);
  delay(100);
}</pre>
}
</pre>


<br>
==Sample Code 2 ==
<pre>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);  // set the LCD address to 0x27 for a 16 chars and 2 line display
void setup() {
  lcd.init();                      // initialize the lcd
  lcd.init();
  // Print a message to the LCD.
  lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("Value:");
}
void loop() {
  int sensorValue = analogRead(A0); // read A0 data and assign to sensorValue
  if(sensorValue<10)
  {
  lcd.setCursor(6,0);
  lcd.print(sensorValue);
  lcd.setCursor(7,0);
  lcd.print("    ");
  }
  if(sensorValue<100)
  {
  lcd.setCursor(6,0);
  lcd.print(sensorValue);
  lcd.setCursor(8,0);
  lcd.print("    ");
  }
  if(sensorValue>99)
  {
  lcd.setCursor(6,0);
  lcd.print(sensorValue);
  }
  if(sensorValue<301)
  {
  lcd.setCursor(0,1);
  lcd.print("dry soil      ");
  }
  if((sensorValue>300)&&(sensorValue<501))
  {
  lcd.setCursor(0,1);
  lcd.print("humid soil  ");
  }
    if(sensorValue>500)
  {
  lcd.setCursor(0,1);
  lcd.print("in water      ");
  }
  delay(200);
}
</pre>
<br>
If upload the code 2, you will see the result as below:<br>
<br>[[File:Ks0049-2.png|500px|frameless|thumb]]<br>
<br>
==Resources ==
==Resources ==


'''Video'''
* '''Video'''<br>
http://video.keyestudio.com/ks0049/


http://www.keyestudio.com/wp/ks0049/
* '''PDF'''<br>
https://drive.google.com/open?id=1Hp8-9BQQKJiEujkw-uQ0XHQxN2jccTgU


'''PDF'''
*'''Get the Libraries of Wire and LiquidCrystal_I2C'''<br>
https://drive.google.com/open?id=1JUS0I9U2N30nYCxN323SlGm9Ywm_GRp2


https://drive.google.com/open?id=1Hp8-9BQQKJiEujkw-uQ0XHQxN2jccTgU


<br>
==Buy from ==
==Buy from ==
'''Official Website'''


http://www.keyestudio.com/keyestudio-soil-humidity-sensor-for-arduino.html
*[https://www.keyestudio.com/free-shipping-keyestudio-soil-humidity-sensor-for-arduino-p0126.html '''Official Website''']


'''Amazon '''
*'''Amazon '''<br>
https://www.amazon.com/keyestudio-Soil-Humidity-Sensor-Arduino/dp/B0177SIDMY/
 
*[https://www.aliexpress.com/store/product/Free-shipping-Soil-moisture-sensor-Moisture-sensor-for-Arduino-automatic-watering-system-with-demo-code/1452162_2051297944.html?spm=2114.12010612.8148356.27.52862462ZM2AO8  aliexpress store]


https://www.amazon.com/keyestudio-Soil-Humidity-Sensor-Arduino/dp/B0177SIDMY/


[[Category: Sensor]]
[[Category: Sensor]]

Revision as of 14:21, 15 April 2019


Introduction

This is a simple soil humidity sensor aims to detect the soil humidity.
If the soil is in lack of water, the analog value output by the sensor will decrease; otherwise, it will increase. If you use this sensor to make an automatic watering device, it can detect whether your botany is thirsty to prevent it from withering when you go out.
Using the sensor with Arduino controller makes your plant more comfortable and your garden smarter. The soil humidity sensor module is not as complicated as you might think, and if you need to detect the soil in your project, it will be your best choice.

The sensor is set with two probes inserted into the soil, then with the current go through the soil, the sensor will get resistance value by reading the current changes between the two probes and convert such resistance value into moisture content.
The higher moisture (less resistance), the higher conductivity the soil has.
Insert it into the soil and then use the AD converter to read it. With the help of this sensor, the plant can remind of you: I need water.  
thumb


Specification

  • Power Supply Voltage: 3.3V or 5V
  • Working Current: ≤ 20mA
  • Output Voltage: 0-2.3V (When the sensor is totally immersed in water, the voltage will be 2.3V) the higher humidity, the higher the output voltage
  • Sensor type: Analog output
  • Interface definition: Pin1- signal, Pin2- GND, Pin3 - VCC
  • Packaging : Electrostatic bag sealing


Connection Diagram


thumb


Sample Code 1

Upload the code to check the analog value on the monitor

/*
  # Example code for the moisture sensor
  # Connect the sensor to the A0(Analog 0) pin on the Arduino board
  # the sensor value description
  # 0  ~300     dry soil
  # 300~700     humid soil
  # 700~950     in water

*/
void setup(){
 
  Serial.begin(57600);
} 
void loop(){
  Serial.print("Moisture Sensor Value:");
  Serial.println(analogRead(0)); 
  delay(100);
}


Sample Code 2

#include <Wire.h> 
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);  // set the LCD address to 0x27 for a 16 chars and 2 line display

void setup() {
  lcd.init();                      // initialize the lcd 
  lcd.init();
  // Print a message to the LCD.
  lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("Value:");
}
void loop() {
  int sensorValue = analogRead(A0); // read A0 data and assign to sensorValue
  if(sensorValue<10)
  {
  lcd.setCursor(6,0);
  lcd.print(sensorValue);
  lcd.setCursor(7,0);
  lcd.print("    ");
  }
  if(sensorValue<100)
  {
  lcd.setCursor(6,0);
  lcd.print(sensorValue);
  lcd.setCursor(8,0);
  lcd.print("    ");
  }
  if(sensorValue>99)
  {
  lcd.setCursor(6,0);
  lcd.print(sensorValue);
  }
   if(sensorValue<301)
  {
  lcd.setCursor(0,1);
  lcd.print("dry soil       ");
  }
  if((sensorValue>300)&&(sensorValue<501))
  {
  lcd.setCursor(0,1);
  lcd.print("humid soil   ");
  }
     if(sensorValue>500)
  {
  lcd.setCursor(0,1);
  lcd.print("in water       ");
  }
  delay(200);
}


If upload the code 2, you will see the result as below:

thumb


Resources

  • Video

http://video.keyestudio.com/ks0049/

  • PDF

https://drive.google.com/open?id=1Hp8-9BQQKJiEujkw-uQ0XHQxN2jccTgU

  • Get the Libraries of Wire and LiquidCrystal_I2C

https://drive.google.com/open?id=1JUS0I9U2N30nYCxN323SlGm9Ywm_GRp2



Buy from

  • Amazon

https://www.amazon.com/keyestudio-Soil-Humidity-Sensor-Arduino/dp/B0177SIDMY/