بينما يمكنك بالتأكيد بناء مؤشر LED بالكامل من الصفر (وسيؤدي استفسار محرك البحث إلى ظهور الكثير من الأشخاص الذين فعلوا ذلك) ، فإن منظمة Piborg تنتج وحدة LED صغيرة الحجم وغير مكلفة ، LedBorg ، لم نتمكن من مقاومة استخدامه كأساس لمشروع مؤشر Raspberry Pi LED الخاص بنا.
يعد تثبيت الوحدة أمرًا سريعًا حيث تم تصميمها لتلائم مباشرةً دبابيس GPIO الموجودة على Pi. أولاً ، قم بإيقاف تشغيل Pi الخاص بك وافتح العلبة.
الجزء الأكثر أهمية في عملية التثبيت هو توجيه الوحدة بحيث يكون رمز LedBorg هو الأقرب إلى وحدة RCA على لوحة Raspberry Pi (وبالتالي فإن حافة LedBorg تتدفق مع حواف لوحة Pi مع الجزء المتدلي من LedBorg معلق فوق لوحة Pi وليس خارج الحافة).انظر الصورة أعلاه.
أثناء فتح لوحة Pi ، سيكون الآن وقتًا ممتازًا لتغطية مؤشرات LED الموجودة على اللوحة (بجوار منافذ USB) ، خاصةً إذا كنت تستخدم حالة واضحة. لا تريد أن يكون الأمر محيرًا عند قراءة مؤشر LedBorg لأن مصابيح مؤشر الطاقة والشبكة ساطعة جدًا.
غطينانا بطبقة من الشريط الكهربائي الأبيض. أدى هذا إلى تعتيمها بدرجة كافية بحيث لا يزال بإمكاننا الرجوع إليها ولكنها كانت أكثر قتامة بكثير من LedBorg ولم تعد تشتت الانتباه.
بمجرد تثبيت LedBorg وتغطية مؤشرات LED الخاصة بـ Pi بشريط كهربائي اختياريًا ، فقد حان الوقت لإغلاق العلبة احتياطيًا. قم بتشغيل Pi قبل الانتقال إلى المرحلة التالية من البرنامج التعليمي.
تثبيت برنامج LedBorg

يوفر PiBorg حزمة برامج رائعة لـ LedBorg تتضمن كلاً من وحدة تحكم GUI بالإضافة إلى برامج تشغيل للوصول إلى LedBorg من سطر الأوامر.
قبل أن نبدأ ، تحتاج إلى التأكد من أنك تحصل على الحزمة الصحيحة لإصدار Rasbian الخاص بك والمراجعة رقم للوحة Raspberry Pi الخاصة بك.
إذا كانت لوحة Raspberry Pi الخاصة بك لا تحتوي على فتحات تركيب ، فهي مراجعة 1. إذا كان Raspberry Pi الخاص بك به فتحات تركيب (موجودة بواسطة منافذ USB وبين منفذ الطاقة ومنفذ HDMI) ، فهذا يعني أنه المراجعة 2. أنت أيضًا بحاجة لمعرفة إصدار kernel الخاص بتثبيت Rasbian الخاص بك. افتح الجهاز وأدخل الأمر التالي للتحقق:
بمجرد حصولك على رقم المراجعة ورقم النواة ، يمكنك زيارة قسم الحزم هنا للحصول على رابط الحزمة الخاصة بك. في حالتنا ، نحن نستخدم لوحة Revision 1 مع نواة 3.6.11 لذلك سنستحوذ على ملف raspbian-2013-02-09-rev1.zip.
لتثبيت كل الأشياء الجيدة ، نحتاج إلى فتح الجهاز على Pi. ثم أدخل الأوامر التالية لتثبيت حزمة LedBorg.
ملاحظة: يجب استبدال عنوان URL في الأمر الثالث بعنوان URL الخاص بالحزمة لمجموعة اللوحة / kernel الخاصة بك.
في هذه المرحلة ، لديك الآن غلاف واجهة المستخدم الرسومية لبرامج تشغيل LedBorg وبرامج التشغيل نفسها مثبتة. على سطح مكتب Raspbian الخاص بك ، سترى رمز غلاف واجهة المستخدم الرسومية:

انطلق وانقر على أيقونة LedBorg لتشغيل غلاف واجهة المستخدم الرسومية. ستتم معاملتك بواجهة منتقي الألوان على النحو التالي:

الآن هو الوقت المثالي للتأكد من أن وحدتك تعمل. اختر أي لون ، باستثناء الأسود ، لتجربته. سنقوم باختباره باختيار بعض الألوان:

تبدو جيدة! إنه لامع والبلاستيك المصنفر للحالة التي طلبناها للمشروع يوفر انتشارًا معتدلًا. إذا كنت ترغب في اللعب مع وحدة LED أكثر قبل الانتقال ، فانقر فوق وضع العرض:

في الوضع التجريبي ، يمكنك التنقل بين جميع الألوان بسرعات مختلفة ، والتحقق من المخرجات المرتفعة / المنخفضة ، وبخلاف ذلك ضع وحدة LED خلال الخطوات.
إنه هنا في قسم الوضع التجريبي حيث يمكنك أيضًا تحويل LedBorg الخاص بك إلى المؤشر الأول من بين العديد من المؤشرات. من خلال تحديد وحدة المعالجة المركزية في قسم الألوان ، سيبدأ مؤشر LED في التغيير من الأخضر إلى الأصفر إلى الأحمر للإشارة إلى الحمل على معالج ARM الخاص بـ Raspberry Pi. نقترح تغيير السرعة إلى "بطيء" أثناء وجودك - يتم تحديث مؤشر LED بسرعة كبيرة ويجعل مؤشر وحدة المعالجة المركزية يشتت الانتباه بدلاً من أن يكون مفيدًا.
بالإضافة إلى استخدام واجهة المستخدم الرسومية لتحديد الألوان ، يمكنك اختيار الألوان من الجهاز باستخدام قيم RGB. افتح الجهاز وأدخل الأمر التالي لإيقاف تشغيل مؤشر LED:
الطريقة التي يتعامل بها LedBorg مع قيم RGB هي أن القيمة 0 تعني أن القناة متوقفة ، و 1 تعني أن القناة نصف طاقة ، و 2 تعني أن القناة كاملة الطاقة. لذلك على سبيل المثال 001 سيضبط القناة الحمراء عند 0٪ والقناة الخضراء عند 0٪ والقناة الزرقاء عند 50٪.
قم بتغيير القيمة إلى 002 ويظل خرج LED باللون الأزرق ولكنه يصبح أكثر إشراقًا لأن القناة الزرقاء الآن بإخراج 100٪. قم بتغيير القيمة إلى 202 ، ويتحد اللون الأحمر والأزرق بكامل قوته لتكوين لون أرجواني.
الآن بعد أن عرفنا كيفية التعامل مع مؤشر LED يدويًا ، فلنلقِ نظرة على استخدام البرامج النصية لتحويل LED من ضوء بسيط إلى مؤشر حقيقي.
تكوين LedBorg الخاص بك كمؤشر للمطر

في هذا الجزء من البرنامج التعليمي ، سنقوم بتمشيط عدة أشياء معًا من أجل تحويل وحدة LedBorg LED الخاصة بنا إلى مؤشر المطر بناءً على توقعات الطقس لموقعنا. سنستخدم نصًا برمجيًا بلغة Python لاستدعاء واجهة برمجة تطبيقات الطقس والتي بدورها ستقرأ فرصة هطول الأمطار لهذا اليوم ، ثم نبدل مؤشر LED من إيقاف التشغيل إلى اللون الأزرق الساطع للإشارة إلى المطر المتوقع.
أولاً ، نحتاج إلى الحصول على مفتاح وصول API لـ Weather Underground. للاستخدام الشخصي ومشاريع التطوير الصغيرة ، فإن API مجاني. قم بزيارة صفحة تسجيل API الطقس هنا وقم بالتسجيل للحصول على مفتاح API.
بمجرد حصولك على مفتاح API الخاص بك ، قم بزيارة Weather Underground وابحث عن المدينة التي تريد مراقبتها. في حالتنا سنقوم بمراقبة سان فرانسيسكو ، كاليفورنيا. عنوان URL لصفحة توقعات San Fransisco هو:
الجزء المهم لأغراضنا هو الجزء الأخير من عنوان URL: /CA/San_Francisco.html. سنستخدم ذلك لتعديل عنوان URL للتوقع لأداة API. عنوان URL الأساسي هو:
يمكنك إنشاء توقعات لأي مدينة أمريكية عن طريق إدخال مفتاح API الخاص بك ، ورمز الولاية المكون من حرفين ، واسم المدينة من عنوان URL الذي قمت بسحبه من نتائج بحث Weather Underground.
بمجرد حصولك على عنوان URL الخاص بواجهة برمجة التطبيقات مع إدخال مفتاح API والولاية / المدينة ، يمكنك بعد ذلك تحرير نص Python النصي التالي عن طريق إنشاء مستند نصي جديد على Pi الخاص بك باستخدام Leafpad ولصق الكود التالي فيه:
احفظ الملف باسم wunderground.py في الدليل / home / pi /. افتح الجهاز واكتب الأمر التالي:
إذا أدخلت مفتاح API ورموز الولاية / المدينة الخاصة بك بشكل صحيح ، فيجب أن تتراجع عن الاستجابة التي تبدو مثل:

إذا تم توقع هطول الأمطار لمنطقتك ، فيجب أن يبدو إخراج LedBorg على النحو التالي:

الآن انتظار يوم ممطر لاختبار البرنامج النصي بشكل صحيح سيكون مملاً. إذا لم تكن هناك فرصة لسقوط أمطار في منطقتك اليوم وترغب في رؤية إضاءة LED ، فقم بتحرير البرنامج النصي wunderground.py واستبدل قيمة المرور "pop=pop" في السطر 13 بقيمة أكبر من 20 مثل 60 أن عادت توقعاتنا. فقط تذكر تغيير السطر مرة أخرى إلى "pop=pop" عند الانتهاء.
الخطوة الأخيرة هي إعداد وظيفة cron لتشغيل البرنامج النصي الذي حفظناه للتو على فترات منتظمة من أجل الحفاظ على مؤشر LED الحالي. نظرًا لأن هذه المهمة ضرورية لكل من هذا النص البرمجي ومؤشر البريد الإلكتروني التالي ، فسنغطي إعداد مهمة cron بعد أن أوضحنا لك كيفية إعداد النص البرمجي الآخر.
تكوين LedBorg كمؤشر Gmail

من لا يحب إصلاح الدوبامين الذي يأتي مع رؤية بريد إلكتروني جديد في بريده الوارد؟ في هذا الجزء من البرنامج التعليمي ، سوف نوضح لك كيفية استخدام LedBorg كمؤشر Gmail جديد. تمامًا مثل المرة السابقة ، سنقوم بدمج إدخال خارجي (في هذه الحالة موجز Atom بدلاً من API) ونص بسيط لتشغيل مؤشر LED الخاص بنا.
نحتاج إلى توسيع وظائف تثبيت Python الخاص بنا قليلاً عن طريق تثبيت FeedParser ، أداة قراءة خلاصة Python RSS / Atom. افتح الجهاز وأدخل الأمر التالي:
بمجرد اكتمال التثبيت ، يمكننا التعيين للعمل في إنشاء برنامج نصي للتحقق من Gmail. مرة أخرى ، باستخدام Leafpad ، الصق النص التالي في المحرر. قم بتغيير اسم المستخدم وكلمة المرور لمطابقة اسم المستخدم وكلمة المرور لحساب Gmail الذي ترغب في التحقق منه.
احفظ البرنامج النصي باسم gmailcheck.py. افتح الجهاز واكتب الأمر التالي:
إذا كان لديك بريد إلكتروني موجود في صندوق الوارد الخاص بك في Gmail ، سيتحول مؤشر LED إلى اللون الأخضر وستتلقى استجابة مثل:

إذا كان لديك بريد في صندوق الوارد الخاص بك في Gmail سيبدو LedBorg هكذا:

تمامًا مثل البرنامج النصي لفحص المطر ، قمنا بتضمين قيمة تصحيح الأخطاء. إذا لم يكن لديك أي بريد إلكتروني جديد ، فيمكنك إما إرسال بريد إلكتروني لنفسك لزيادة عدد البريد الوارد إلى 1 أو يمكنك تعديل تجزئة التعليق وتغيير سطر التصحيح إلى "mail=1" لاختبار البرنامج النصي. تذكر إعادة الخط عند الانتهاء من الاختبار.
انتقل إلى القسم التالي من البرنامج التعليمي لتعيين برنامج Gmail النصي للتشغيل وفقًا لجدول زمني.
إعداد وظيفة Cron لتشغيل البرنامج النصي

الآن بعد أن أصبح لدينا نصان نلعب بهما ، نحتاج إلى إعداد وظيفة cron لتشغيلهما طوال اليوم للحفاظ على مؤشر LED الحالي.
أول شيء نريد القيام به هو إيقاف تشغيل مؤشر LED إذا كان قيد التشغيل حاليًا من تجاربنا السابقة. في المحطة نوع:
بينما لا تزال في سطر الأوامر ، يمكنك فتح محرر cron. إذا لم تقم مطلقًا بإعداد وظيفة cron من قبل ، فنحن نقترح بشدة مراجعة دليلنا لاستخدامها هنا. بعد قولي هذا ، سنرشدك خلال إعداد جدول أساسي هنا.
في المحطة نوع:
سيؤدي هذا إلى فتح جدول Raspbian cron في محرر نصوص Nano. استخدم مفاتيح الأسهم للتمرير لأسفل إلى أسفل. هذا هو المكان الذي سنقوم بإعداد وظيفة cron المتكررة لنصوص Python الخاصة بنا.
إذا كنت ترغب في إعداد البرنامج النصي للمطر ، أدخل السطر التالي في جدول cron:
اضغط CTRL + X للخروج ؛ حدد نعم لحفظ جدول cron الموجود والكتابة فوقه. تحدد القيمة التي أدخلناها في جدول cron " / 5" البرنامج النصي ليتم تشغيله كل 5 دقائق إلى الأبد.
كل 5 دقائق هي فترة زمنية جيدة لسيناريو يتحقق من الأمطار المتوقعة - يمكنك حتى المجادلة بأنه شديد العدوانية - ولكن إذا كنت تحاول متابعة بريدك الإلكتروني ، فهذا قليل أيضًا فترة طويلة للإعلام. إذا كنت تقوم بإعداد الجدول الزمني للنص البرمجي لإشعارات Gmail ، فأدخل السطر التالي في جدول cron:
يقوم هذا الإدخال بتشغيل البرنامج النصي gmailcheck.py كل دقيقة للحصول على إشعار تحديث أسرع.
هذا كل ما في الأمر! يمكنك تجربة نصوص Python الخاصة بك عن طريق رفع عبارات if / else من بياناتنا وتجربتها باستخدام متغيرات جديدة تمامًا. إذا تمكنت من العثور على مصدر إدخال للبيانات ، فيمكنك تحويلها إلى متغير في متوسطات سوق الأسهم النصية في Python ، وعدد حبوب اللقاح ، كما يذكر Twitter ، إذا كانت هناك واجهة برمجة تطبيقات لها ، فيمكنك تحويلها إلى مؤشر LED محيط.
أخيرًا ، أود أن أشكر جميع الموارد الرائعة التي استخدمتها للعمل في هذا المشروع. لقد مر أكثر من عقد بقليل منذ أن كنت أكتب البرامج بنشاط واستغرق الأمر بضع نقرات لإزالة الغبار والصدأ. ساعدني المساهمون في / r / LearnPython في التلاعب بإخراج واجهة برمجة التطبيقات لـ Weather Underground ، ودرسوا كيف تعامل مايكل في Mitch Tech مع موجز Gmail Atom الذي جعل تحليله لـ LedBorg أمرًا سهلاً ، ودراسة وحدات تعلم Python في Code Academy كانت طريقة رائعة لالتقاط البنية الأساسية والهيكلية للغة لم أستخدمها من قبل.