7.0 KiB
قم ببناء ضوء ليلي - Raspberry Pi
في هذا الجزء من الدرس ، ستضيف مؤشر LED إلى Raspberry Pi الخاص بك وتستخدمه لإنشاء ضوء ليلي.
المعدات
يحتاج ضوء الليل الآن إلى مشغل.
المشغل هو ** LED ** ، الصمام الثنائي الباعث للضوء الذي ينبعث منه الضوء عندما يتدفق التيار خلاله. هذا مشغل رقمي له حالتان ، تشغيل وإيقاف. يؤدي إرسال القيمة 1 إلى تشغيل مؤشر LED و 0 يؤدي إلى إيقاف تشغيله. LED هو مشغل Grove خارجي ويجب توصيله بقبعة Grove Base على Raspberry Pi.
منطق ضوء الليل في الكود الزائف هو:
تحقق من مستوى الضوء.
إذا كان الضوء أقل من 300
قم بتشغيل LED
غير ذلك
قم بإيقاف تشغيل LED
قم بتوصيل الصمام
يأتي Grove LED كوحدة نمطية مع مجموعة مختارة من مصابيح LED ، مما يسمح لك باختيار اللون.
المهمة - قم بتوصيل LED
قم بتوصيل الصمام.
-
اختر مؤشر LED المفضل لديك وأدخل الأرجل في الفتحتين على وحدة LED.
المصابيح هي صمامات ثنائية باعثة للضوء ، والصمامات الثنائية هي أجهزة إلكترونية يمكنها حمل التيار في اتجاه واحد فقط. هذا يعني أن مؤشر LED يحتاج إلى الاتصال بالطريقة الصحيحة ، وإلا فلن يعمل.
أحد أرجل مؤشر LED هو الدبوس الموجب ، والآخر هو الدبوس السالب. LED ليس مستديرًا تمامًا وهو مسطح قليلاً من جانب واحد. الجانب المسطح قليلاً هو الدبوس السالب. عندما تقوم بتوصيل مؤشر LED بالوحدة ، تأكد من توصيل دبوس الجانب المستدير بالمقبس المميز بعلامة ** + ** على الجزء الخارجي من الوحدة ، وأن الجانب المسطح متصل بالمقبس الأقرب إلى منتصف الجزء وحدة.
-
تحتوي وحدة LED على زر دوران يسمح لك بالتحكم في السطوع. اقلب هذا على طول الطريق لتبدأ بتدويره عكس اتجاه عقارب الساعة بقدر ما سيذهب باستخدام مفك براغي صغير من فيليبس.
-
أدخل أحد طرفي كبل Grove في المقبس الموجود في وحدة LED. سوف تذهب في اتجاه واحد فقط.
-
مع إيقاف تشغيل Raspberry Pi ، قم بتوصيل الطرف الآخر من كابل Grove بالمقبس الرقمي المميز بعلامة ** D5 ** على قبعة Grove Base المرفقة بـ Pi. هذا المقبس هو الثاني من اليسار ، على صف المقابس بجوار دبابيس GPIO.
برمجة ضوء الليل
يمكن الآن برمجة ضوء الليل باستخدام مستشعر الضوء Grove و Grove LED.
المهمة - برمجة ضوء الليل
برمجة ضوء الليل.
-
قم بتشغيل Pi وانتظر حتى يتم التمهيد
-
افتح مشروع Nightlight في VS Code الذي أنشأته في الجزء السابق من هذه المهمة ، سواء كان يعمل مباشرة على Pi أو متصل باستخدام امتداد Remote SSH.
-
أضف الكود التالي إلى ملف
app.py
للاتصال لاستيراد المكتبة المطلوبة. يجب إضافة هذا إلى الأعلى ، أسفل سطور "الاستيراد" الأخرى.from grove.grove_led import GroveLed
تستورد العبارة from grove.grove_led import GroveLed`` GroveLed
من مكتبات Grove Python. تحتوي هذه المكتبة على رمز للتفاعل مع Grove LED.
-
أضف الكود التالي بعد إعلان "light_sensor" لإنشاء مثيل للفئة التي تدير مؤشر LED:
led = GroveLed(5)
يُنشئ السطر
led = GroveLed (5)
مثيلًا لفئةGroveLed
التي تتصل بالطرف ** D5 ** - دبوس Grove الرقمي الذي يتصل به مؤشر LED.💁 جميع المقابس لها أرقام دبوس فريدة. الدبابيس 0 و 2 و 4 و 6 هي دبابيس تمثيلية ، والدبابيس 5 و 16 و 18 و 22 و 24 و 26 هي دبابيس رقمية.
-
أضف فحصًا داخل حلقة "while" وقبل "time.sleep" للتحقق من مستويات الإضاءة وتشغيل مؤشر LED أو إيقاف تشغيله:
```python
if light < 300:
led.on()
else:
led.off()
```
💁 يجب وضع مسافة بادئة لهذا الرمز إلى نفس مستوى خط الطباعة ('Light level:'، light) `ليكون داخل حلقة while!
💁 عند إرسال القيم الرقمية إلى المشغلات ، تكون القيمة 0 هي 0 فولت ، والقيمة 1 هي أقصى جهد للجهاز. بالنسبة لـ Raspberry Pi مع مستشعرات ومشغلات Grove ، يكون الجهد 1 هو 3.3 فولت.
-
من VS Code Terminal ، قم بتشغيل ما يلي لتشغيل تطبيق Python:
python3 app.py
Light values will be output to the console.
pi@raspberrypi:~/nightlight $ python3 app.py Light level: 634 Light level: 634 Light level: 634 Light level: 230 Light level: 104 Light level: 290
-
قم بتغطية وكشف مستشعر الضوء. لاحظ كيف سيضيء مؤشر LED إذا كان مستوى الضوء 300 أو أقل ، وينطفئ عندما يكون مستوى الضوء أكبر من 300.
💁 إذا لم يتم تشغيل مؤشر LED ، فتأكد من توصيله بالطريقة الصحيحة ، وأن زر الدوران مضبوط على الوضع الكامل.
💁 يمكنك العثور على هذا الرمز في المجلد code-actuator/pi
😀 كان برنامج الإضاءة الليلية الخاص بك ناجحًا!