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

لا يوجد مصباح أزرق: 4 خطوات
لا يوجد مصباح أزرق: 4 خطوات

فيديو: لا يوجد مصباح أزرق: 4 خطوات

فيديو: لا يوجد مصباح أزرق: 4 خطوات
فيديو: للمبتدئين تحديد الاسلاك فى حالة الالوان العشوائية و ربط المفاتيح والبرايز الكهربائية 2024, يوليو
Anonim
لا يوجد مصباح أزرق
لا يوجد مصباح أزرق
لا يوجد مصباح أزرق
لا يوجد مصباح أزرق
لا يوجد مصباح أزرق
لا يوجد مصباح أزرق
لا يوجد مصباح أزرق
لا يوجد مصباح أزرق

لذلك كان Lazy Old Geek (L. O. G) يعمل في مشروع Blue Light:

www.instructables.com/id/Blue-Light-Projec…

www.instructables.com/id/Blue-Light-Projec…

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

أجهزة التصميم:

قررت استخدام RTC (Real Time Clock) للتحكم في أوقات تغييرات الضوء.

اخترت DS3231 لأنه يتمتع بدقة أفضل في الحفاظ على الوقت من DS1307. يمكن أن يكون DS3231 5 فولت أو 3.3 فولت.

للضوء ، سأستخدم سلسلة WS2812B LED. هذه لها واجهة بسيطة بثلاثة أسلاك ومصابيح LED حمراء وخضراء وزرقاء يمكن التحكم فيها. WS2812B هي أجهزة 5 فولت.

بالنسبة إلى المتحكم الدقيق ، سأستخدم Pro Micro ، 5 فولت 16 ميجاهرتز.

في حين أن WS2812B سيعمل على الأرجح مع 3.3 فولت ، فمن الأفضل استخدام 5V Arduino.

Pro Micro عبارة عن Arduino رخيص يستخدم متحكم Atmega32U4.

سيحتوي المصباح على مفتاح تشغيل / إيقاف لتشغيل المصباح أو إيقاف تشغيله.

سيكون هناك مقياس جهد للتحكم في السطوع.

تصميم البرمجيات:

سيتحكم DS3231 RTC في التوقيت ، ولديه بطارية احتياطية ، لذا يجب أن يحافظ على الوقت حتى في حالة فقد الطاقة.

خلال النهار ، ستكون جميع مصابيح RGB LED قيد التشغيل ، ويمكن التحكم فيها عن طريق الوعاء حتى الشدة الكاملة.

في وقت مبكر من المساء ، سيتم إيقاف تشغيل مصابيح LED الزرقاء ، أما الأحمر والأخضر فيعطلان كحد أقصى.

مع تقدم المساء ، ستخفت مصابيح LED باللونين الأحمر والأخضر ، مع تفضيل اللون الأحمر على الأخضر (يشير الاختبار الذي أجريته في الجزء الثاني إلى أن المصابيح الخضراء تحتوي على بعض اللون الأزرق).

بعد حوالي الساعة 10 مساءً. سيتم إيقاف تشغيل جميع المصابيح.

مشكلة:

بالعودة إلى وحدة DS3231 RTC ، اشتريت منجم من Aliexpress مثلما فعلت مع المكونات الأخرى.

من المفترض أن تعمل مع بطارية LIR2032 القابلة لإعادة الشحن وشحنها. لقد جربته. بعد يوم تقريبًا ، نفدت البطارية.

حسنًا بعد البحث على الإنترنت ، وجدت هذه المقالة.

www.onetransistor.eu/2019/07/zs042-ds3231-…

أتفق مع هذا التحليل ، لكنني اعتقدت أن LIR2032 سيتحمل رسومًا كافية ولكن ليس بشكل مفرط. يبدو أنني كنت مخطئا. على الرغم من أن DS3231 الخاص بي تم تمييزه أيضًا باسم ZS-042 كما في المقالة ، فقد كان مختلفًا قليلاً عن نظيره ولكن تقريبًا نفس الشيء. لذلك قمت بفك الصمام الثنائي الظاهر في الصورة وقمت بتثبيت بطارية CR2032. بدون الصمام الثنائي ، لن تحاول الوحدة شحن البطارية. الآن يحتفظ DS3231 بالوقت الصحيح حتى مع فصل الطاقة ويجب أن تكون البطارية جيدة لسنوات عديدة.

متطلبات الطاقة:

WS2812B عبارة عن سلسلة من RGB LEDs تسمى أحيانًا NeoPixels. يتطلب كل NeoPixel 60 مللي أمبير كحد أقصى. أنا أستخدم 12 Neo Pixels لذا أحتاج إلى 0.72A. أنا أستخدم محول 2A USB لذلك لدي الكثير من التيار.

الخطوة 1: BlueLamp PCB

BlueLamp ثنائي الفينيل متعدد الكلور
BlueLamp ثنائي الفينيل متعدد الكلور
BlueLamp ثنائي الفينيل متعدد الكلور
BlueLamp ثنائي الفينيل متعدد الكلور

كما أفعل عادةً ، استخدمت برنامج Eagle Cadsoft المجاني (الآن Autodesk) لتخطيط وإنشاء ثنائي الفينيل متعدد الكلور.

www.autodesk.com/products/eagle/free-downl…

يتم إرفاق ملفات Eagle التخطيطية واللوحة جنبًا إلى جنب مع التخطيطي في الصورة.

تعليق واحد حول التخطيطي ، المقاوم 330 أوم ومكثف 10 ، 000 فائق التوهج هي توصيات بواسطة دليل Neopixel الخاص بـ Adafruit:

learn.adafruit.com/adafruit-neopixel-uberg…

كان زر التبديل الذي استخدمته "مفتاح تبديل Torch" من هنا:

www.aliexpress.com/item/32904942704.html؟s…

مقياس الجهد 10 كيلو (B103) من هنا:

www.aliexpress.com/item/32672253655.html؟s…

الخطوة 2: تجميع المصباح

تجميع المصباح
تجميع المصباح
تجميع المصباح
تجميع المصباح

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

يمكن تقطيع WS2812B إلى عدد NeoPixels الذي تريده. يحتوي الشريط الذي اشتريته على مسافات واسعة بين NeoPixels. كنت أرغب في أن يكون أكثر سطوعًا قليلاً ، لذا قمت بقص شريحتين من 6 NeoPixel وتشغيلهما بالتوازي مع إزاحة طفيفة. يمكن قطع شرائط WS2812B بين NeoPixels. في هذه الحالة ، كنت بحاجة إلى تغيير بمقدار 180 درجة ، لذا قمت بقطع الشريط وتشغيل أسلاك العبور بينهما. إذا قمت بذلك في أي وقت ، فتأكد من صحة الإشارات وأسهم الاتجاه (انظر الصورة)

يحتوي WS2812B أيضًا على أسلاك وموصل (هذا الموصل هو موصل JST-SM 3pin إذا كنت تريد استخدامه في مكان آخر). نظرًا لأن هذا الموصل كان موجودًا بالفعل ، فقد قمت للتو بلحام الأسلاك في ثنائي الفينيل متعدد الكلور. بالنسبة إلى WS2812B ، يكون السلك الأحمر 5 فولت والأخضر إشارة والأبيض أرضي.

بمجرد أن أقوم بصنع ثنائي الفينيل متعدد الكلور ، أضع بعض الشريط اللاصق في الأسفل وألصقه بالقاعدة. ثم قمت بتوصيل Pro Micro و DS3231.

الخطوة 3: اردوينو سكتش

رسم اردوينو
رسم اردوينو

على الرغم من أنني اشتريت جهاز Pro Micro من Aliexpress.com ، إلا أنني استخدمت المعلومات التالية لتشغيل Arduino:

learn.sparkfun.com/tutorials/pro-micro--fi…

لتثبيت مكتبة DS3231 ، استخدم هذا:

github.com/PaulStoffregen/DS1307RTC

قم بتنزيل الملف المضغوط

افتح Arduino ، وحدد "Sketch" و "Include Library" و "Add.zip library"

قم بتثبيت ما يلي باستخدام نفس الطريقة

مكتبة الوقت PaulStoffregen

github.com/PaulStoffregen/Time

مكتبة المنطقة الزمنية

github.com/JChristensen/Timezone

عند الانتهاء ، ابدأ Arduino.

ضمن "لوحات الأدوات" ، حدد "Sparkfun Pro Micro"

انقر فوق أدوات مرة أخرى ، سيكون هناك اختيار للمعالج

قد تحتاج إلى تغييره "Atmega32U4 (5 فولت 16 ميجا هرتز)"

تحذير: إذا كنت مهملاً مثلي ، فقد اخترت "Atmega32U4 (3.3 فولت 8 ميجاهرتز)" عن طريق الخطأ. هذا "خرب" حتى لا يتمكن Arduino من رؤيته. حسنًا ، عادةً ما أحاول قراءة أشياء جديدة قبل أن أحصل عليها وأتذكر شيئًا عن حدوث ذلك:

learn.sparkfun.com/tutorials/pro-micro--fi…

في هذا الدليل ، يوجد قسم يسمى "كيفية إحياء" Bricked "Pro Micro" كما هو مذكور ، إنه إجراء صعب لكنني تمكنت من استرداد حسابي.

لمعلوماتك: إذا كنت تتساءل عن سبب وجود نسختين بجهد وسرعات مختلفة ، فإن Atmega32U4 (مثل Atmega328) سيعمل بشكل جيد عند 5 فولت مع ساعة 16 ميجا هرتز. ولكن عند 3.3 فولت ، تشير مواصفات التصميم إلى أن الساعة 16 ميجا هرتز لن تعمل ، ولهذا السبب لديهم الساعة 8 ميجا هرتز. بشكل عام ، عند التحدث ببرنامج Arduino ، سيهتم بأي مشاكل في التوقيت.

نصيحة RTC: ستعمل معظم البرامج المكتوبة لـ DS1307 مع DS3231 نظرًا لأن لديهم برنامجًا مشابهًا جدًا.

التوقيت الصيفي

حسنًا ، أردت تطبيق التوقيت الصيفي ، لذا لم أضطر إلى إعادة برمجة المصباح مرتين في السنة. عملت على هذا لعدة أيام. لم أتمكن من العثور على أي تفسيرات بسيطة جيدة حول كيفية عمل TimeLib و RTClib.

لقد كتبت بالفعل بعض كود DST لـ IPClock الخاص بي:

www.instructables.com/id/NO-MORE-SPRING-FO…

عملت مع وقت الإنترنت ولكن لم أتمكن من تشغيلها في وقت RTC.

ركضت أخيرًا عبر ما يلي بواسطة JChristensen:

forum.arduino.cc/index.php؟topic=96891.0

github.com/JChristensen/Timezone

لاستخدام هذا ، عليك أولاً ضبط RTC على UTC (التوقيت العالمي المنسق) ، هذا هو الوقت في غرينتش ، إنجلترا. حسنًا ، لم أكن أعرف كيفية القيام بذلك ولكن وجدت هذه المقالة:

www.justavapor.com/archives/2482

أعد كتابته للتوقيت الجبلي (مرفق) UTCtoRTC.ino

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

رسم بلدي مرفق MTS_BlueLamp.ino.

الخطوة 4: الخاتمة

استنتاج
استنتاج

لقد صنعت خطافًا صغيرًا في الجزء العلوي لقناع وجه CPAP. كنت أعلقها على مصباح سريري القديم.

في الأساس سعيد جدًا بهذا المصباح. ساطع بالكامل خلال النهار ولا أزرق في المساء والليل.

الشيء الوحيد الذي لا أحبه هو أنني لا أستطيع استخدامه بعد الساعة 10 مساءً. وقبل الخامسة صباحا

لقد اكتشفت أيضًا أنني لا أستخدم مفتاح التبديل بين التشغيل / الإيقاف لأنني عادةً ما أستخدم مفتاح التعتيم.

في المستقبل ، قد أعيد كتابة المخطط وتغيير الزر إلى مفتاح مجدول أو غير مجدول (ممتلئ). لكن مع مهارات الترميز الضعيفة لدي قد أنتظر بعض الوقت.

موصى به: