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

إضاءة UCL-lloT-Outdoor-light الناتجة عن شروق الشمس / غروب الشمس: 6 خطوات
إضاءة UCL-lloT-Outdoor-light الناتجة عن شروق الشمس / غروب الشمس: 6 خطوات

فيديو: إضاءة UCL-lloT-Outdoor-light الناتجة عن شروق الشمس / غروب الشمس: 6 خطوات

فيديو: إضاءة UCL-lloT-Outdoor-light الناتجة عن شروق الشمس / غروب الشمس: 6 خطوات
فيديو: تي سي إل QM8 مقابل هايسنس U8K | انها كل شيء عنك 2024, سبتمبر
Anonim
ضوء UCL-lloT-خارجي ناتج عن شروق الشمس / غروب الشمس
ضوء UCL-lloT-خارجي ناتج عن شروق الشمس / غروب الشمس

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

الخطوة 1: قائمة IO وما ستحتاج إليه

قائمة الإدخال والإخراج وما ستحتاج إليه
قائمة الإدخال والإخراج وما ستحتاج إليه
قائمة الإدخال والإخراج وما ستحتاج إليه
قائمة الإدخال والإخراج وما ستحتاج إليه
قائمة الإدخال والإخراج وما ستحتاج إليه
قائمة الإدخال والإخراج وما ستحتاج إليه

Arduino MEGA 2560. هذا ما استخدمته على الأقل ، وأنا أعلم أنه يمكنك بسهولة استخدام آخر.

DS3231 ومكتبتها. (https://rinkydinkelectronics.com/library.php؟id=73 … من المهم أن تعرف أن الدبابيس التي تم تعيينها لـ SDA و SCL تختلف باختلاف Arduino الذي تستخدمه.

I052116 وحدة استشعار كاشف الحركة بالأشعة تحت الحمراء. يمكن استبدال هذه الوحدة الخاصة بجهاز الاستشعار الذي تختاره ، إنها بصراحة اختيارية لكل شيء.

الخطوة 2: مخطط انسيابي

مخطط
مخطط

كما هو موضح في المخطط الانسيابي البسيط ، فإن الكثير من الرفع الثقيل يكمن في Node-Red. مع العقد البسيطة نسبيًا ، الفكرة هي أنه من Node-Red ستصل إلى موقع ويب يعرف وقت غروب الشمس وشرقها. بمجرد الحصول عليها ، سترسل المعلومات إلى Arduino لإخبارها. من Arduino ، سنحصل على إشارة تشير بدقة إلى وقت تشغيل الأضواء بالفعل ، بحيث يمكنك التحقق من منزلك فقط عندما تضيء الأضواء ، ومن Arduino أيضًا سنحصل على معلومات تفيد بأن مستشعر القرب قد تم تنشيط ، والذي يعمل على تشغيل الضوء لمدة x من الوقت.

الخطوة 3: فريتزينج

فريتزينج
فريتزينج

بالمقارنة مع المشاريع الأخرى ، فإن الكابلات بسيطة إلى حد ما هنا. ما يجب أن تكون على دراية به هو أنك ستحتاج إلى وحدة WIFI للبقاء على اتصال بخادم Node-Red ، أو الحصول على جهاز كمبيوتر بعيد المنال لاستضافة خادم Node-Red المتصل بـ Arduino. لا يظهر في الصورة العلاقة بين Arduino والكمبيوتر المحمول ، وأنا أعتذر مسبقًا عن صورة Fritzing الفقيرة!

الخطوة 4: التشفير

الترميز
الترميز
الترميز
الترميز

إذا كان هناك شيء واحد وجدته هو أنه مع Firmata (لتواصل Arduino مع Node-Red) ومكتبة DS3231 والمزيد ، كان هناك الكثير من المكتبات المحملة. اعتبارًا من النشر ، لم يتم إجراء الترميز تمامًا ، لذلك تم تضمين الشفرة الزائفة.

تشتمل المكتبة من DS3231 على دبابيس محددة مسبقًا لكل من لوحات Arduino ، وفي حالة Mega يكون دبوس 20 و 21 لأنهما دبابيس SDA و SCL على الميجا. بمجرد التوصيل ، يمكن إخبار الساعة بالضبط عن اليوم ، وما يجب أن تتبعه. ما وجدت أنه من الأسهل التعامل معه عندما يتعلق الأمر بتتبع الأرقام ، هو استخدام int بدلاً من سلسلة. لذا ما فعلته هو أنني قمت بتحويل أرقام السلسلة إلى int ، ولكن نظرًا لأن int لا يمكن استخدامها: لفصل الساعة ، قررت أن أفعل شيئًا آخر بدلاً من ذلك. مع دقائق. الكثير من الدقائق ، إذا كانت الساعة 13:21 على سبيل المثال ، فسيتم فصل أول رقمين وتوقيتهما بستين. نحن الآن عند 801 دقيقة ، لأن 13 في 60 يساوي 780 وتضيف آخر 21 دقيقة. إذا قالت Node-Red أن الشمس تغرب في الساعة 16:58 (في حالة الشتاء) ، فإننا نحصل على الأضواء الخارجية لتضيء ما بين 1018 دقيقة ووقت الإغلاق المحدد مسبقًا ، والذي سيكون 1380 (23:00)). إذا كان العداد الخاص بنا بين هذين ، فإن الأضواء تضيء. الرياضيات المذكورة أعلاه هي في الأساس البرنامج بأكمله ، دون خطوات الحصول على Node-Red للاتصال بـ Arduino والتواصل. أيضًا وجود جهاز استشعار يتأكد من تشغيل الأضواء (بعد غروب الشمس ، على أي حال) سيتم استخدامه ، ولكن بخلاف ذلك يكون هذا هو البرنامج بأكمله أعلاه.

الخطوة 5: العقدة الحمراء

العقدة الحمراء
العقدة الحمراء
العقدة الحمراء
العقدة الحمراء
العقدة الحمراء
العقدة الحمراء
العقدة الحمراء
العقدة الحمراء

ليس تدفقًا كبيرًا بشكل خاص ، ولا يجب أن يكون في هذه الحالة. أول صفين من العقد هما الجزء الأكبر من البرنامج. باستخدام وظيفة GET ، نسترجع توقعات اليوم حول كيفية شروق الشمس وغروبها. من هناك نستخدم محدد CSS لاسترداد معلوماتنا المحددة ، وعادة ما يتم الوصول إليها على مواقع الويب "Inspect Elements" على متصفح Firefox كما هو موضح في الصور. لاحظ أنه ليست كل مواقع الويب تعمل بهذه الطريقة وأن الموقع الذي أستخدمه يعمل بشكل مثالي بهذه الطريقة. من هناك ، ستكتب معلومات إلى الرقم 13 لأن هذا هو ما حددته ليكون ، على الرغم من أن الاختبار لم يحدد بعد ما إذا كان وصول دبوس واحد إلى أوقات مختلفة أمرًا عمليًا. كما هو موضح في جزء الترميز ، ستأتي المعلومات من Arduino إلى Node-Red ، حيث ستشير بعد ذلك إلى موقع ويب يمكن الوصول إليه حيث يمكن للمرء التحقق منه بسهولة. ستحتاج إلى Firmata لهذا إذا كنت ترغب في استخدام وظائف Arduino تم الحصول عليها من خلال مكتبة node-red-node-arduino على Node-Red. على الرغم من أنه لم يتم إعداده بالكامل بعد ، وسيتم تحديثه عند الانتهاء من المشروع ، فقد قمت بإرفاق رمز Node-Red Flow في مستند نصي لسهولة الوصول إليه.

الخطوة 6: النشر والاستخدام

النشر والاستخدام
النشر والاستخدام

وإنهاء التعليمات لدينا ، هو الجزء العملي منه. مع وجود عدد قليل من المنازل التي تحتوي على هذا المستوى من الإضاءة التلقائية ، فإن الحل على مدار العام مرحب به لدى العديد من أصحاب المنازل. لتوصيل هذا بالفعل بمصابيح باستخدام كهرباء ليست من نوع Arduino ، لا أوصي بفعل ذلك بنفسك إلا إذا كنت تعرف بالضبط ما تفعله. مع انتهاء المشروع ، سأقوم بهذه المهمة بمساعدة كهربائي فقط للتأكد من إضاءة الممر الخاص بك بواسطة جهاز استشعار أو من حيث الوقت بدقة ، أوصي بالبناء على ما قمت به بالفعل إذا كنت أقصد استخدامه فعليًا بعد مرحلة الاختبار هذه ، فهو موجود حاليًا. كانت معظم مشكلتي مع المشروع في جزء Node-Red إلى Arduino بشكل صارم ، وآمل أن أكون قد تمكنت من شرح كيفية ذلك بوضوح قدر الإمكان تم.

موصى به: