Skip to main content

Interfacing Raspberry Pi 3 with Soil Moisture Sensor ๐ŸŒฑ


Interfacing Raspberry Pi 3 with Soil Moisture Sensor ๐ŸŒฑ

๐ŸŽฏ Objective

Use the Soil Moisture Sensor with Raspberry Pi 3 to measure soil humidity levels. This setup is ideal for building smart irrigation systems for gardens and farms. ๐ŸŒพ

๐Ÿงฐ Components Required

ComponentQuantity
Raspberry Pi 31
Soil Moisture Sensor (Analog)1
MCP3008 ADC1
Breadboard1
Jumper WiresAs required

⚡ Circuit Connections

Sensor to MCP3008:

Soil Sensor PinConnect To
VCC3.3V (RPi)
GNDGND (RPi)
Analog OutCH0 of MCP3008

MCP3008 to Raspberry Pi:

MCP3008RPi3 GPIO Pin
VDD, VREF3.3V
AGND, DGNDGND
CLKGPIO11
DOUTGPIO9
DINGPIO10
CSGPIO8

๐Ÿง  Python Code

import spidev
import time

spi = spidev.SpiDev()
spi.open(0, 0)
spi.max_speed_hz = 1350000

def read_channel(channel):
    adc = spi.xfer2([1, (8 + channel) << 4, 0])
    data = ((adc[1] & 3) << 8) + adc[2]
    return data

try:
    while True:
        moisture_level = read_channel(0)
        print("Soil Moisture Level:", moisture_level)
        time.sleep(2)
except KeyboardInterrupt:
    spi.close()

๐Ÿ“Š Output

  • Continuously prints soil moisture levels to the console every 2 seconds.
  • Higher value = Dryer soil ๐Ÿ”ฅ
  • Lower value = Wet soil ๐Ÿ’ง

๐Ÿ’ก Applications

  • Smart irrigation systems
  • Automatic watering in gardens and pots
  • Soil monitoring for agriculture

๐ŸŽฏ เค‰เคฆ्เคฆिเคท्เคŸ

Soil Moisture Sensor เค†เคฃि Raspberry Pi 3 เคตाเคชเคฐूเคจ เคœเคฎिเคจीเคคीเคฒ เค“เคฒाเคตा เคคเคชाเคธเคฃे. เคนे เค—ाเคฐ्เคกเคจเคธाเค ी เคธ्เคฎाเคฐ्เคŸ เคตॉเคŸเคฐिंเค— เคธिเคธ्เคŸीเคฎเคธाเค ी เค‰เคชเคฏुเค•्เคค เค†เคนे. ๐ŸŒฟ

๐Ÿงฐ เคฒाเค—เคฃाเคฐे เคธाเคนिเคค्เคฏ

เค˜เคŸเค•เคธंเค–्เคฏा
Raspberry Pi 31
Soil Moisture Sensor (Analog)1
MCP3008 ADC1
เคฌ्เคฐेเคกเคฌोเคฐ्เคก1
เคœंเคชเคฐ เคตाเคฏเคฐเค—เคฐเคœेเคจुเคธाเคฐ

⚡ เคธเคฐ्เค•िเคŸ เค•เคจेเค•्เคถเคจ

เคธेเคจ्เคธเคฐ เคคे MCP3008:

Soil Sensorเค•ुเค े เคœोเคกाเคฏเคšं
VCC3.3V (RPi)
GNDGND (RPi)
Analog OutCH0 (MCP3008)

MCP3008 เคคे เคฐाเคธ्เคชเคฌेเคฐी เคชाเคฏ:

MCP3008RPi3 GPIO
VDD, VREF3.3V
AGND, DGNDGND
CLKGPIO11
DOUTGPIO9
DINGPIO10
CSGPIO8

๐Ÿง  เคชाเค‡เคฅเคจ เค•ोเคก

import spidev
import time

spi = spidev.SpiDev()
spi.open(0, 0)
spi.max_speed_hz = 1350000

def read_channel(channel):
    adc = spi.xfer2([1, (8 + channel) << 4, 0])
    data = ((adc[1] & 3) << 8) + adc[2]
    return data

try:
    while True:
        moisture_level = read_channel(0)
        print("เคฎाเคคीเคคीเคฒ เค“เคฒाเคตा เคชाเคคเคณी:", moisture_level)
        time.sleep(2)
except KeyboardInterrupt:
    spi.close()

๐Ÿ“Š เค†เค‰เคŸเคชुเคŸ

  • เคช्เคฐเคค्เคฏेเค• 2 เคธेเค•ंเคฆांเคจी เคฎाเคคीเคคीเคฒ เค“เคฒाเคตा เค•เคจ्เคธोเคฒเคตเคฐ เคฆเคฐ्เคถเคตเคคो.
  • เคœाเคธ्เคค เคต्เคนॅเคฒ्เคฏू = เค•ोเคฐเคกी เคฎाเคคी ๐Ÿœ️
  • เค•เคฎी เคต्เคนॅเคฒ्เคฏू = เค“เคฒเคธเคฐ เคฎाเคคी ๐ŸŒง️

๐Ÿ’ก เค‰เคชเคฏोเค—

  • เคธ्เคฎाเคฐ्เคŸ เคธिंเคšเคจ เคช्เคฐเคฃाเคฒी
  • เคฌाเค—ेเคฎเคง्เคฏे เค•िंเคตा เค•ुंเคก्เคฏांเคฎเคง्เคฏे เค‘เคŸो เคตॉเคŸเคฐिंเค—
  • เคถेเคคीเคธाเค ी เคฎाเคคी เคคเคชाเคธเคฃी

Comments

Popular posts from this blog

TOUCH PLATE BASED DOOR BELL

Title:  Touch plate based door bell  Circuit:  Components: IC 555 Resistors: 1 M, 100k, 330 ohms Transistor: BC547  PN2222A Capacitor: 10n 1 Copper plate : as touch plate. A 6v battery An LED / Ic UM66 Description: This is the simple circuit for touch plate based security system. In this project what basically done is, circuit detects stray voltages produced by mains voltage and electrostatic built  up in the room.If sufficient static voltage is detected by the plate then chip will charge up. Transistor BC 547 or PN2222A is used basically to increase the sensitivity.In place of led just connect IC um 66(melody IC). Applications: In homes, of course. This can be specially used in places like hospitals, when patients need to call doctor by himself.

Interfacing Load Cell with Raspberry Pi 3 (via HX711) ⚖️

Interfacing Load Cell with Raspberry Pi 3 (via HX711) ⚖️ Interfacing Load Cell with Raspberry Pi 3 (via HX711) ⚖️ A load cell is a transducer that converts force (weight) into an electrical signal. The HX711 is a precision 24-bit analog-to-digital converter (ADC) designed for weigh scales. Today we’ll connect a load cell to Raspberry Pi 3 using the HX711 module. ๐Ÿงช ๐Ÿ”ง Components Required Component Quantity Raspberry Pi 3 1 Load Cell 1 HX711 Module 1 Jumper Wires 6 Breadboard (optional) 1 ๐Ÿ”Œ Pin Connections HX711 Pin Raspberry Pi Pin Pin Number VCC 5V Pin 2 GND Ground Pin 6 DT GPIO 5 Pin 29 SCK GPIO 6 Pin 31 Figure: Load Cell connected to Raspberry Pi 3 via HX711 ๐Ÿ’ป Python Code from hx711 import HX711 import RPi.GPIO as GPIO import time hx = HX711(dout_pin=5, pd_sck_pin=6) hx.set_reading_format("MSB", "MSB") hx.set_reference_unit(1) hx.reset()...

Interfacing Sound Sensor with Raspberry Pi 3

๐Ÿ”น Overview The KY-037 is a high-sensitivity sound detection sensor that can detect noise levels in the environment. It provides both analog and digital outputs. In this tutorial, we’ll interface the digital output of KY-037 with Raspberry Pi 3 Model B+ (without using an ADC like MCP3008) and detect sound events.