الحصول على تسليم مجانا على جميع الطلبات أكثر من 20 جنيه!

باستخدام مستشعر المطر/الثلج مع التوت PI

Using a Rain/Snow Sensor with the Raspberry Pi

 

A مستشعر المطر/الثلج هو جهاز مفيد لأنظمة مراقبة الطقس. يكتشف هطول الأمطار أو الثلوج ويمكنه تشغيل التنبيهات أو أتمتة الإجراءات بناءً على ظروف الطقس. يشرح هذا الدليل كيفية استخدام مستشعر المطر/الثلج مع Raspberry Pi لمراقبة أنماط الطقس ودمج المستشعر في مشاريعك.


ما ستحتاج إليه

  1. راسبيري باي (أي نموذج يدعم GPIO، مثل Pi 3 أو Pi 4)
  2. مستشعر المطر/الثلج (على سبيل المثال، YL-83 أو ما شابه)
  3. لوحة تجارب وأسلاك توصيل
  4. بايثون 3 مثبّت على Raspberry Pi الخاص بك
  5. دبابيس GPIO على Raspberry Pi

الخطوة 1: توصيل الأسلاك حساس المطر/الثلج إلى Raspberry Pi

الـ وحدة مستشعر المطر/الثلج عادةً ما يحتوي على ثلاثة دبابيس رئيسية: VCC وGND ودبوس خرج يتصل بدبوس GPIO في Raspberry Pi.

اتصالات

مستشعر المطر/الثلج دبوس دبوس Raspberry Pi
VCC 3.3V (الدبوس 1)
أرضي الأرضي (الدبوس 6)
المخرجات GPIO (على سبيل المثال، Pin 17، GPIO 0)

الخطوة 2: تفعيل GPIO على Raspberry Pi

تأكد من تمكين GPIO على جهاز Raspberry Pi الخاص بك. يجب أن يكون مفعّلًا افتراضيًا، ولكن إذا لم يكن كذلك، يمكنك تمكينه باستخدام:

sudo raspi-config

انتقل إلى خيارات الواجهة > GPIO وتأكد من تمكينه.


الخطوة 3: إعداد Python

سنستخدم Python لقراءة المخرجات من الـ حساس المطر/الثلج.

  1. ثبّت مكتبة RPi.GPIO (إذا لم يكن مثبتًا بالفعل):

    sudo apt update
    sudo apt install python3-rpi.gpio
    
  2. اكتب كود Python لقراءة خرج المستشعر.

مثال على كود Python

import RPi.GPIO as GPIO
import time

# Set the GPIO mode
GPIO.setmode(GPIO.BCM)

# Pin configuration
sensor_pin = 17  # Pin 17 for rain/snow sensor output

# Set up the GPIO pin as input
GPIO.setup(sensor_pin, GPIO.IN)

def rain_detected(channel):
    print("Rain or Snow Detected!")

# Attach an event detection to the sensor pin
GPIO.add_event_detect(sensor_pin, GPIO.RISING, callback=rain_detected)

try:
    print("Monitoring for rain/snow...")
    while True:
        time.sleep(1)  # Keep the script running

except KeyboardInterrupt:
    print("Exiting...")
    GPIO.cleanup()

الخطوة 4: تشغيل كود Python

  1. احفظ كود Python في ملف، على سبيل المثال، rain_sensor.py.
  2. شغّل البرنامج النصي:
    python3 rain_sensor.py
    

سيستمر هذا البرنامج النصي في مراقبة المستشعر بحثًا عن التغييرات. عندما يكتشف المستشعر هطول المطر أو الثلج (يُشار إليه عادةً بإشارة منخفضة أو عالية)، فإنه يقوم بتشغيل دالة الاستدعاء (callback) rain_detected().


الخطوة 5: اختبار المستشعر

  1. اختبار يدوي: شغّل المستشعر برش الماء يدويًا أو بوضع المستشعر تحت مطر خفيف. إذا كان المستشعر يعمل، يجب أن تطبع وحدة التحكم "Rain or Snow Detected!" عندما يكتشف المستشعر الماء.
  2. معايرة المستشعر: بعض الحساسات تمتلك حساسية قابلة للضبط. إذا كان حساسك يوفّر مقاومة متغيرة (potentiometer)، يمكنك ضبطها لجعل الحساسية أعلى أو أقل.

الخطوة 6: تطبيقات الـ مستشعر المطر/الثلج

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

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

  1. لا يوجد إخراج من المستشعر:

    • تحقق جيدًا من توصيلات الأسلاك لديك.
    • تأكد من تزويد المستشعر بالطاقة بشكل صحيح (VCC إلى 3.3V وGND إلى الأرضي).
  2. قراءات غير متسقة:

    • إذا كان المستشعر شديد الحساسية أو غير حساس بما يكفي، حاول ضبط المقاومة المتغيرة (إن كانت متوفرة) لضبط عتبة اكتشاف المستشعر بدقة.
  3. لا يوجد اكتشاف للمطر:

    • تحقّق من أن يكون المستشعر في مكان يمكنه فيه اكتشاف المطر أو الثلج بفعالية.
    • يمكنك استخدام الـ GPIO.input(sensor_pin) وظيفة لقراءة حالة المستشعر يدويًا وتصحيح الأخطاء.

الخلاصة

باستخدام حساس المطر/الثلج مع Raspberry 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.

اترك تعليقًا