باستخدام مستشعر رطوبة التربة مع التوت PI

Using a Soil Moisture Sensor with the Raspberry Pi

أ مستشعر رطوبة التربة يسمح لـ Raspberry Pi بمراقبة رطوبة التربة ، مما يجعلها مثالية البستنة الذكية وأنظمة الري والمراقبة البيئية. سيمشي هذا الدليل من خلال إعداد واستخدام مستشعر رطوبة التربة مع Raspberry Pi.


ماذا ستحتاج

  1. التوت بي (أي نموذج يحمل دعم GPIO ، على سبيل المثال ، PI 3 ، PI 4)
  2. مستشعر رطوبة التربة (الناتج التناظري أو الرقمي)
  3. وحدة ADC (على سبيل المثال ، ADS1115) لأجهزة الاستشعار التناظرية (إذا لزم الأمر)
  4. الأسلاك الأسلاك والبلوز
  5. بيثون مثبت على التوت PI

الخطوة 1: فهم مستشعر رطوبة التربة

هناك نوعان من أجهزة استشعار رطوبة التربة:

  • مستشعرات الإخراج الرقمية (على سبيل المثال ، مستشعرات رطوبة التربة السعة) - توفير أ عالية/منخفضة إشارة عندما تعبر الرطوبة عتبة.
  • مستشعرات الإخراج التناظرية - توفير جهد متغير على أساس رطوبة التربة ، يتطلب ADC (محول التناظرية إلى الرقماء) مثل ADS1115.

الخطوة 2: توصيل المستشعر إلى التوت PI

لمستشعر رطوبة التربة الرقمي

دبوس المستشعر التوت بي دبوس
VCC 3.3V أو 5V (PIN 1 أو 2)
GND الأرض (دبوس 6)
D0 (رقمي) أي GPIO (على سبيل المثال ، GPIO17 ، PIN 11)

لمستشعر الإخراج التناظرية (مع ADS1115)

دبوس المستشعر ADS1115 دبوس التوت بي دبوس
VCC VCC 3.3V أو 5V (PIN 1 أو 2)
GND GND الأرض (دبوس 6)
A0 (تمثيلي) A0 I2C (عبر ADS1115)

الخطوة 3: تمكين I2C على Raspberry Pi

منذ استخدام بعض المستشعرات I2C (وحدة ADS1115)، تمكينه:

  1. افتح أداة تكوين Raspberry Pi:
    sudo raspi-config
    
  2. انتقل إلى خيارات الواجهة> i2c وتمكينها.
  3. أعد تشغيل Raspberry Pi:
    sudo reboot
    

الخطوة 4: تثبيت المكتبات المطلوبة

  1. قم بتحديث Raspberry Pi:
    sudo apt update && sudo apt upgrade -y
    
  2. تثبيت مكتبات GPIO و I2C:
    sudo apt install -y python3-rpi.gpio python3-smbus python3-pip
    pip3 install adafruit-circuitpython-ads1x15
    

الخطوة 5: رمز بيثون لقراءة مستويات الرطوبة

لمستشعر رقمي

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()

لمستشعر تمثيلي (باستخدام ADS1115)

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...")

الخطوة 6: تطبيقات أجهزة استشعار رطوبة التربة

  1. الري الذكي - نباتات الماء تلقائيًا عندما تكون التربة جافة.
  2. محطات الطقس - مراقبة ظروف التربة عن بعد.
  3. أتمتة الدفيئة - تحسين نمو النبات على أساس مستويات الرطوبة.
  4. مشاريع إنترنت الأشياء - إرسال البيانات إلى منصات السحابة للمراقبة عن بُعد.

استكشاف الأخطاء وإصلاحها

  1. المستشعر لا يكتشف الرطوبة

    • تحقق من الأسلاك وضمان الجهد الصحيح.
    • لأجهزة الاستشعار التناظرية ، تأكد من تم اكتشاف وحدة ADS1115 بشكل صحيح استخدام:
      sudo i2cdetect -y 1
      
  2. قراءات غير مستقرة

    • تجنب وضع المستشعر بشكل مفرط البيئات الرطبة لمنع التآكل.
    • لأجهزة الاستشعار السعية ، تأكد من أسطح التحقيق النظيفة لقراءات دقيقة.

خاتمة

تسمح أجهزة استشعار رطوبة التربة بمشاريع التوت PI مراقبة وأتمتة سقي النباتمما يجعلها مثالية ل تطبيقات البستنة الذكية وإنترنت الأشياء. باتباع هذا الدليل ، يمكنك اقرأ مستويات رطوبة التربة وتشغيل الإجراءات الآلية بناء على البيانات في الوقت الحقيقي! 🌱🚀

اترك تعليقًا

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.