Käyttämällä maaperän kosteusanturia Raspberry Pi: n kanssa

Using a Soil Moisture Sensor with the Raspberry Pi

Eräs maaperän kosteusanturi antaa vadelma PI: n seurata maaperän kosteutta, mikä tekee siitä ihanteellisen Älykäs puutarhanhoito, kastelujärjestelmät ja ympäristön seuranta. Tämä opas opastaa sinut maaperän kosteusanturin asettamisen ja käyttämällä Raspberry Pi: n kanssa.


Mitä tarvitset

  1. Raspberry Pi (Mikä tahansa malli, jolla on GPIO -tuki, esim. Pi 3, pi 4)
  2. Maaperän kosteusanturi (analoginen tai digitaalinen lähtö)
  3. ADC -moduuli (esim. ADS1115) analogisille antureille (tarvittaessa)
  4. Leipälevy- ja hyppyjohdot
  5. Python asennettu Raspberry Pi

Vaihe 1: Maaperän kosteusanturin ymmärtäminen

Maaperän kosteusantureita on kahta tyyppiä:

  • Digitaaliset lähtöanturit (esim. Kapasitiiviset maaperän kosteusanturit) - tarjoa a Korkea/matala Signaali, kun kosteus ylittää kynnyksen.
  • Analogiset lähtöanturit - Tarjoa muuttuva jännite, joka perustuu maaperän kosteuteen, vaatii ADC (analoginen-digitaalimuunnin) Kuten ADS1115.

Vaihe 2: Anturin johdotus Raspberry Pi: hen

Digitaalisen lähdön maaperän kosteusanturille

Anturitappi Raspberry Pi -tappi
VCC 3,3 V tai 5 V (nasta 1 tai 2)
Hölynpöly Maa (nasta 6)
D0 (digitaalinen) Mikä tahansa GPIO (esim. GPIO17, PIN 11)

Analogiselle lähtöanturille (ADS1115)

Anturitappi ADS1115 -nasta Raspberry Pi -tappi
VCC VCC 3,3 V tai 5 V (nasta 1 tai 2)
Hölynpöly Hölynpöly Maa (nasta 6)
A0 (analoginen) A0 I2C (ADS1115: n kautta)

Vaihe 3: Ota I2c käyttöön Raspberry Pi

Koska jotkut anturit käyttävät I2C (ADS1115 -moduuli), ota se käyttöön:

  1. Avaa Raspberry Pi -määritystyökalu:
    sudo raspi-config
    
  2. Siirtyä jhk Käyttöliittymävaihtoehdot> I2C ja ota se käyttöön.
  3. Käynnistä Raspberry Pi uudelleen:
    sudo reboot
    

Vaihe 4: Asenna vaadittavat kirjastot

  1. Päivitä Raspberry Pi:
    sudo apt update && sudo apt upgrade -y
    
  2. Asenna GPIO- ja I2C -kirjastot:
    sudo apt install -y python3-rpi.gpio python3-smbus python3-pip
    pip3 install adafruit-circuitpython-ads1x15
    

Vaihe 5: Python -koodi lukemaan kosteustasoja

Digitaalianturille

import RPi.GPIO as GPIO
import time

SENSOR_PIN = 17  # GPIO Pin connected to D0
GPIO.setmode(GPIO.BCM)
GPIO.setup(SENSOR_PIN, GPIO.IN)

try:
    while True:
        if GPIO.input(SENSOR_PIN):
            print("Soil is Dry!")
        else:
            print("Soil is Moist!")
        time.sleep(2)
except KeyboardInterrupt:
    print("Exiting...")
finally:
    GPIO.cleanup()

Analogiselle anturille (ADS1115: n avulla)

import time
import board
import busio
import adafruit_ads1x15.ads1115 as ADS
from adafruit_ads1x15.analog_in import AnalogIn

# Initialize I2C and ADS1115 ADC
i2c = busio.I2C(board.SCL, board.SDA)
ads = ADS.ADS1115(i2c)
moisture_sensor = AnalogIn(ads, ADS.P0)  # A0 on ADS1115

try:
    while True:
        moisture_level = moisture_sensor.value
        print(f"Soil Moisture Level: {moisture_level}")
        time.sleep(2)
except KeyboardInterrupt:
    print("Exiting...")

Vaihe 6: Maaperän kosteusanturien sovellukset

  1. Älykäs kastelu - Veden kasvit automaattisesti, kun maaperä on kuiva.
  2. Sääasemat - Seuraa maaperän olosuhteita etäyhteyden kautta.
  3. Kasvihuoneen automaatio - Optimoi kasvien kasvu kosteustasojen perusteella.
  4. Internet -projektit - Lähetä tietoja pilvialustoille etävalvontaa varten.

Vianetsintä

  1. Anturi ei tunnista kosteutta

    • Tarkista johdotus ja varmista oikea jännite.
    • Analogisten anturien varmista ADS1115 -moduuli havaitaan oikein Käyttämällä:
      sudo i2cdetect -y 1
      
  2. Epävakaat lukemat

    • Vältä anturin asettamista liian märkäympäristöt korroosion estämiseksi.
    • Varmista kapasitiivisten anturien suhteen Puhtaat koetinpinnat tarkkoihin lukemiin.

Johtopäätös

Maaperän kosteusanturit sallivat Raspberry Pi -projektien tarkkaile ja automatisoi kasvien kastelua, mikä tekee niistä ihanteellisia Älykäs puutarhanhoito- ja Internet -sovellukset. Seuraamalla tätä opasta voit Lue maaperän kosteustasot ja laukaise automatisoidut toimet Perustuu reaaliaikaiseen tietoon! 🌱🚀

Jätä kommentti

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.