A bodemvochtsensor stelt een Raspberry Pi in staat om de bodemvochtigheid te controleren, wat het ideaal maakt voor slim tuinieren, irrigatiesystemen en milieumonitoring bodemvochtsensor met een Raspberry Pi.
Wat u nodig hebt
- Raspberry Pi
- Bodemvochtigheidssensor
- ADC-module (bijv. ADS1115) for analog sensors (indien vereist)
- Breadboard en jumperdraden
- Python geïnstalleerd op de Raspberry Pi
Stap 1: Begrijpen van de Bodemvochtigheidssensor
Er zijn twee soorten bodemvochtsensors:
- Digitale uitgangssensoren bodemvochtsensors) – Geef een HOOG/LAAG signaal wanneer het vochtgehalte een drempelwaarde overschrijdt.
- Analoge uitgangssensoren ADC (Analoog-digitaalomzetter) zoals de ADS1115.
Step 2: Wiring the Sensor to the Raspberry Pi
Voor een digitale output Bodemvochtigheidssensor
| Sensorpin | Raspberry Pi Pin |
|---|---|
| VCC | 3,3V of 5V (Pin 1 of 2) |
| GND | Aarde (Pin 6) |
| D0 (Digitaal) | Elke GPIO (bijv. GPIO17, Pin 11) Bureau |
ADS1115)
| Sensorpin | ADS1115 Pin | Raspberry Pi Pin |
|---|---|---|
| VCC | VCC | 3,3V of 5V (Pin 1 of 2) |
| GND | GND | Aarde (Pin 6) |
| A0 (Analoog) | A0 | I2C (via ADS1115) |
Step 3: Enable I2C on the Raspberry Pi
Omdat sommige sensoren gebruikmaken van I2C (ADS1115 module), enable it:
- Open de Raspberry Pi-configuratietool:
sudo raspi-config - Navigeer naar Interface-opties > I2C activeer deze.
- Herstart de Raspberry Pi:
sudo reboot
Step 4: Install Required Libraries
- Update je Raspberry Pi:
sudo apt update && sudo apt upgrade -y - Installeer de GPIO- en I2C-bibliotheken:
sudo apt install -y python3-rpi.gpio python3-smbus python3-pip pip3 install adafruit-circuitpython-ads1x15
Step 5: Python Code to Read Moisture Levels
For a Digital Sensor
python
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("Bodem is droog!")
else:
print("Bodem is vochtig!")
time.sleep(2)
except KeyboardInterrupt:
print("Afsluiten...")
finally:
GPIO.cleanup()
ADS1115)
python
import time
import board
import busio
import adafruit_ads1x15.ads1115 as ADS
from adafruit_ads1x15.analog_in import AnalogIn
# Initialiseer I2C en ADS1115 python
ADC
i2c = busio.I2C(board.SCL, board.SDA)
ads = ADS.ADS1115python
(i2c)
moisture_sensor = AnalogIn(ads, ADS.P0) # A0 op ADS1115
python
try:
while True:
moisture_level = moisture_sensor.value
print(f"Bodemvochtigheidsniveau: {moisture_level}")
time.sleep(2)
except KeyboardInterrupt:
print("Afsluiten...")
Stap 6: Toepassingen van Bodemvochtigheidssensors
- Slimme irrigatie
- Weather Stations
- Kasautomatisering
- IoT-projecten
Probleemoplossing
-
Sensor detecteert geen vocht
- Controleer de bedrading en zorg voor het juiste voltage.
- Voor analoge sensoren moet u ervoor zorgen dat de ADS1115 module is correct gedetecteerd met behulp van:
sudo i2cdetect -y 1
-
Instabiele metingen
- Vermijd het plaatsen van de sensor in een te natte omgevingen om corrosie te voorkomen.
- Zorg er bij capacitieve sensoren voor dat reinig de sonde-oppervlakken voor nauwkeurige metingen.
Conclusie
Bodemvochtigheidssensoren stellen Raspberry Pi-projecten in staat om planten water geven monitoren en automatiseren slim tuinieren en IoT-toepassingen bodemvochtigheidsniveaus aflezen en geautomatiseerde acties activeren gebaseerd op realtime gegevens! 🌱🚀
