جدول المحتويات:

مستشعر Raspberry Pi Park: 3 خطوات (بالصور)
مستشعر Raspberry Pi Park: 3 خطوات (بالصور)

فيديو: مستشعر Raspberry Pi Park: 3 خطوات (بالصور)

فيديو: مستشعر Raspberry Pi Park: 3 خطوات (بالصور)
فيديو: Top 5 complex DIY projects with Raspberry Pi. 2024, يوليو
Anonim
Image
Image
الأشياء التي سوف تحتاجها
الأشياء التي سوف تحتاجها

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

الخطوة 1: الأشياء التي سوف تحتاجها

ستحتاج إلى المكونات التالية بخلاف إعداد Raspberry Pi.

  1. HC-SR04 جهاز استشعار المسافة بالموجات فوق الصوتية
  2. Led (X3)
  3. 330Ω المقاوم (X3)
  4. 10KΩ المقاوم (x2)
  5. أسلاك العبور للذكور / الذكور والإناث
  6. اللوح

الخطوة 2: هل الأسلاك

هل الأسلاك
هل الأسلاك
هل الأسلاك
هل الأسلاك
هل الأسلاك
هل الأسلاك
  1. مشغل مستشعر المسافة هو GPIO 4 ، والصدى GPIO 18 ، والضوء الأخضر 17 ، والضوء الأصفر 27 ، والضوء الأحمر 22.
  2. 330 أوم مقاومات للمصابيح وهي متصلة بالساق الإيجابية للمصابيح ثم GPIO.
  3. مقاومات 10 كيلو أوم مخصصة لدبوس صدى مستشعر المسافة والاتصال بـ GPIO.

الخطوة 3: الكود

استيراد RPi. GPIO كوقت استيراد GPIO

تحذيرات GPIO (خطأ)

GPIO.cleanup ()

GPIO.setmode (GPIO. BCM)

TRIG = 4

صدى = 18

أخضر = 17

أصفر = 27

الأحمر = 22

إعداد GPIO (TRIG ، GPIO. OUT)

GPIO.setup (ECHO ، GPIO. IN)

إعداد GPIO (أخضر ، GPIO. OUT)

إعداد GPIO (أصفر ، GPIO. OUT)

إعداد GPIO (أحمر ، GPIO. OUT)

def green_light ():

إخراج GPIO (أخضر ، GPIO. HIGH)

إخراج GPIO (أصفر ، GPIO. LOW)

خرج GPIO (أحمر ، GPIO. LOW)

def yellow_light ():

إخراج GPIO (أخضر ، GPIO. LOW)

إخراج GPIO (أصفر ، GPIO. HIGH)

خرج GPIO (أحمر ، GPIO. LOW)

def red_light (): GPIO.output (أخضر ، GPIO. LOW)

إخراج GPIO (أصفر ، GPIO. LOW)

إخراج GPIO (أحمر ، GPIO. HIGH)

def get_distance ():

خرج GPIO (TRIG ، صحيح)

time.sleep (0.00001)

إخراج GPIO (TRIG ، خطأ)

بينما GPIO.input (ECHO) == خطأ: البدء = time.time ()

بينما GPIO.input (ECHO) == صحيح: النهاية = time.time ()

signal_time = نهاية البداية

المسافة = إشارة الوقت / 0.000058

مسافة العودة

احيانا صحيح:

المسافة = get_distance ()

time.sleep (0.05).

طباعة (مسافة)

إذا كانت المسافة> = 25:

ضوء اخضر()

elif 25> مسافة> 10:

ضوء أصفر()

مسافة elif <= 5:

ضوء أحمر()

إذا كانت المسافة أكبر من أو تساوي 25 سم ، فإننا نعرض الضوء الأخضر. إذا كان حجمه بين 10 و 25 سم ، فسوف يتحول لونه إلى اللون الأصفر ، ثم يتحول إلى اللون الأحمر لأقل من أو يساوي 10 سم.

موصى به: