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

ساعة كلمة قوس قزح بتأثير قوس قزح كامل والمزيد: 13 خطوة (مع صور)
ساعة كلمة قوس قزح بتأثير قوس قزح كامل والمزيد: 13 خطوة (مع صور)

فيديو: ساعة كلمة قوس قزح بتأثير قوس قزح كامل والمزيد: 13 خطوة (مع صور)

فيديو: ساعة كلمة قوس قزح بتأثير قوس قزح كامل والمزيد: 13 خطوة (مع صور)
فيديو: قفزة خضراء كبيرة والمزيد من الحلقات الكاملة من 🌈 ترو ومملكة قوس قزح 🌈 2024, شهر نوفمبر
Anonim
ساعة كلمة قوس قزح مع تأثير قوس قزح الكامل والمزيد
ساعة كلمة قوس قزح مع تأثير قوس قزح الكامل والمزيد

الأهداف

1) بسيط

2) غير مكلفة

3) كفاءة الطاقة قدر الإمكان

قوس قزح كلمة على مدار الساعة مع تأثير قوس قزح كامل.

ابتسامة على ساعة الكلمات.

جهاز تحكم عن بعد بسيط بالأشعة تحت الحمراء

تحديث 03-nov-18 LDR للتحكم في سطوع Neopixels

تحديث 01-jan-19 تقليل استهلاك الطاقة WS2812B.

تحديث 15 يناير 19 Smiley.

تحديث 23 يناير 19 كود 1.6

تحديث روابط مكتبات 10-مارس -19

تحديث 14-apr-19 الإصدار 1.7 Choice smiley on / off collor rainbow / fix enz.

آخر تحديث 01-jun-19 الإصدار 2.0 جهاز التحكم عن بعد بالأشعة تحت الحمراء وإعادة تصميم الكود

الخطوة 1: حالة الساعة

حالة الساعة
حالة الساعة
حالة الساعة
حالة الساعة
حالة الساعة
حالة الساعة

مع بعض الأدوات البسيطة والقليل من المهارة ، ليس من الصعب صنع ساعة بأحرف ، لقد استخدمت المواد المتاحة لي.

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

يتم قطع الحروف من رقائق معدنية بواسطة طابعة في كتابة مرآة. يوجد الرقاقة في الجزء الخلفي من اللوحة الزجاجية ومغطاة بورق نقش مزدوج الطبقة لتوزيع أفضل للضوء. يتم تثبيت الزجاج بواسطة مادة مانعة للتسرب من السيليكون.

الخطوة 2: Neopixels

نيوبكسلز
نيوبكسلز
نيوبكسلز
نيوبكسلز
نيوبكسلز
نيوبكسلز
نيوبكسلز
نيوبكسلز

تم ترتيب مصابيح LED من Neopixels على لوح خشبي ، حيث تقوم أولاً بحفر ثقوب 3 مم. في المقدمة يتم تكبيرها إلى حجم الرسالة إلى 3/4 عمق. بعد ذلك يتم زيادة 3 مم في الخلف إلى 10 مم ، وهذا هو حجم Neopixel. بالنسبة لبعض الأحرف من بين أحرف أخرى ، يجب تعديل الفتحة بشكل طفيف.

لقد استخدمت الخشب الرقائقي الذي انقسم بسرعة ، وقد يكون MDF أفضل.

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

يمكنك توفير الكثير من العمل عن طريق لحام قطعة من الأسلاك في مصباح LED الأيسر ثم إلى مؤشر LED الأيمن. ثم جندى الوسيطة.

يجب بالطبع أن يكون اتصال البيانات مع أجزاء قصيرة لأن البيانات الخارجة تذهب إلى إدخال البيانات.

الخطوة الثالثة: ضبط النص الأمامي

ضبط النص الأمامي
ضبط النص الأمامي
ضبط النص الأمامي
ضبط النص الأمامي
ضبط النص الأمامي
ضبط النص الأمامي

اللوحة الأمامية الآن باللغة الهولندية ، ولكن ببساطة للتحويل بأي لغة.

يتم تبديل مصابيح LED NeoPixels بالتتابع هنا من 0-167. ينتقل الترقيم من الصف الأول في أعلى اليسار إلى اليمين ثم إلى الصف الثاني من اليمين إلى اليسار وما إلى ذلك. يمكن إجراء الضبط وفقًا لاحتياجاتك الخاصة. يتم تحديد عدد NeoPixels بعدد الأحرف. يمكن ضبط أقل أو أكثر من Neopixels في السطر التالي

#define NUMPIXELS 168 // كم عدد NeoPixels المتصلة بـ Arduino؟

168 هو رقم آخر. يبدأ الترقيم من 0. يمكنك عمل أي نص. إذا قمت بتغيير النص ، فسيتعين عليك أيضًا ضبط الكلمات المقابلة. يبقى الترقيم كما هو.

على سبيل المثال ، يتم تحديد DRIE للدقائق في الكود

zetmDrie باطل () {

Led_Aan [56] = 1 ، Led_Aan [57] = 1 ، Led_Aan [58] = 1 ، Led_Aan [59] = 1 ، // دقيقة

}

إذا كنت تريد أن تصنع كلمة Arduino ، فستكون هكذا:

باطل زيت أردوينو () {

Led_Aan [38] = 1 ، Led_Aan [50] = 1 ، Led_Aan [56] = 1 ، Led_Aan [93] = 1 ،

Led_Aan [120] = 1 ، Led_Aan [135] = 1 ، Led_Aan [147] = 1 ؛ // كلمة اردوينو

}

حتى تتمكن من جعل الكلمات بين.

بالنسبة لكلمات الساعة ، من المفيد أن تكون كلمة متجاورة ولكنها ليست ضرورية تمامًا. لا تحتاج الحروف غير المستخدمة إلى Neonpixels. لقد ملأتهم جميعًا لاستخدام الاحتمالات المستقبلية بخلاف عرض الوقت.

إذا قمت بتغيير نقطة البداية أو تغيير تسلسل التعاقب ، يجب أن يتغير الترقيم وفقًا لذلك.

الخطوة 4: تأثير قوس قزح الكامل

تأثير قوس قزح الكامل
تأثير قوس قزح الكامل

الساعة الآن مبرمجة بحيث يتم احتساب عدد المرات في الثانية بعدد neopixsels التي يتم تشغيلها.

الطيف الكلي هو حول عدد مقسومة ومن ثم إزاحة قليلا. ونتيجة لذلك ، فإن كل Neopixel له لون مختلف يتغير باستمرار. Neopixel nr 1 و nr 167 يتبعان بعضهما البعض في بعض الألوان.

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

يمكن ضبط السطوع في السطر التالي ،

pixels.setBrightness (150) ؛

الرقم الأصغر يكون أقل وعدد أكبر سطوع أكثر.

الخطوة 5: المكونات المختلفة

المكونات المختلفة
المكونات المختلفة
المكونات المختلفة
المكونات المختلفة
المكونات المختلفة
المكونات المختلفة

المكونات التالية التي استخدمتها

اردوينو برو ميني ATMEGA328 5 فولت / 16 ميجاهرتز

وحدة الساعة DS3231

168 قطعة Neopixels LED WS2812 LED رقاقة ومبرد حرارة 5V 5050 RGB WS2811 IC مدمج

استنسل احباط الحروف

جهاز استقبال DCF77

الخطوة 6: رمز الساعة

ها هو الكود. تمت إضافة عنصر تحكم في السطوع وإيقاف التشغيل عند عدم وجود أحد وفي الليل.

تمت إضافة مستشعر حركة ميكروويف رادار RCWL-0516 (ابحث عن RADAR)

بعد 10 دقائق من عدم الحركة ، يخرج NeoPixels.

حول الإصدار 2.0

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

يوجد جزء من التعليمات البرمجية لتزويد ذاكرة EEPROM بالبيانات. شغّل هذا مرة واحدة عن طريق إزالة / * و * / مؤقتًا. ابحث عن => قم بتشغيل هذا مرة واحدة لتزويد EEPROM بالبيانات

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

يعمل جهاز التحكم عن بُعد من Samsung بشكل أفضل من جهاز التحكم عن بُعد البسيط (الرخيص جدًا).

الخطوة 7: وصف الجهاز

وصف الجهاز
وصف الجهاز
وصف الجهاز
وصف الجهاز
وصف الجهاز
وصف الجهاز

هناك إصدارات مختلفة من Arduino Pro Mini. يرجى ملاحظة أن التوصيلات قد تختلف.

تمت إضافة جهاز استشعار الحركة بالميكروويف RCWL-0516.

طالما أن هناك حركة بالقرب من الساعة ، يظل NeoPixel قيد التشغيل

وبمجرد توقف الحركة ، ينطلق NeoPixel بعد بضع دقائق.

في الإصدار 2.0 ، يتم تزويد جهاز الاستقبال DCF77 بالطاقة عبر الطرف 13. يتم تعريف هذا الطرف على أنه خرج ويتم تعيينه على مستوى عالٍ عند معالجة روتين DCF77. يستخدم جهاز الاستقبال DCF77 0.28 مللي أمبير وهو مطلوب فقط لبضع دقائق في اليوم.

إيقاف يحفظ

5 فولت * 0.28 مللي أمبير / 1000 * 24 ساعة * 365 يومًا * 1 / 0.85 مصدر طاقة بكفاءة = 14.4 واط في السنة.

لا يبدو هذا كثيرًا ، لكن كل جزء يساعد.

الخطوة 8: LDR للتحكم في سطوع Neopixels

LDR للتحكم في سطوع Neopixels
LDR للتحكم في سطوع Neopixels
LDR للتحكم في سطوع Neopixels
LDR للتحكم في سطوع Neopixels

تمت إضافة LDR للتحكم في سطوع neopixels.

لقد قمت بلصق LDR في مساحة neopixel 103. لا يتم استخدام هذا في عرض الوقت وبالتالي لا يؤثر على التنظيم. تعمل الورق على ترطيب الضوء الساقط ، لكن هذا لا يمثل مشكلة.

يذهب مقسم الجهد لـ LDR و 20 kohm المقاوم إلى A0 من Arduino Pro Mini. الجهد هو مؤشر على شدة الضوء ، وبالتالي فهو أيضًا مؤشر على كمية الضوء التي يجب أن تعطيها نيوبكسل.

الصيغة التي أستخدمها تعطيني تحكمًا جيدًا في الإضاءة ، ويمكن تعديلها حسب الظروف. اعتمادًا على كمية الضوء ، يمكن أن يختلف الجهد بين 0 و 5 فولت والتي يتم تحويلها إلى 0 إلى 1024 تهمًا وهي في "LDRValue".

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

الكثافة نظريًا بحد أدنى 20 وحد أقصى 1024/7 + 45 = 191. القيمة القصوى التي قمت بقياسها كانت 902 ، والتي تصل إلى 173. وهذا يتناسب تمامًا مع 150 الذي حددته كقيمة افتراضية. (انظر pixels.setBrightness (150))

في الإصدار 2.0 ، يمكنك ضبط التحكم عبر جهاز التحكم عن بعد. تمت إضافة المعلمات التالية: Brightness_min كحد أدنى و Brightness_max كحد أقصى للإعداد و Brightness_Offset كمعامل إعداد. Brightness_min و _max هي القيم التي يمكن أن تعتمد على الموقف الخاص بك. Brightness_Offset هي قيمة يمكن ضبطها باستخدام جهاز التحكم عن بُعد والتي يمكن من خلالها ضبط سطوع أكثر أو أقل.

هناك أيضًا نطاق ميت من 3 بين قيم LDRValue المقاسة وقيم BerLDRValue المحسوبة.

استخدم عبارات الطباعة في الفراغ BrightnessControl للتحقق من إعداد السطوع.

الخطوة 9: تقليل استهلاك الطاقة WS2812B

تقليل استهلاك الطاقة WS2812B
تقليل استهلاك الطاقة WS2812B

تقوم برامج التشغيل الموجودة على neopixels WS2812B القابلة للعنونة برسم التيار حتى في حالة إيقاف تشغيل neopixels ، مضبوطًا على اللون 0 (لا توجد عناصر neopixels مضاءة).

عندما يخرج 169 نيوبكسل ، أقيس 69 مللي أمبير للنيوبكسل. بافتراض أن الساعة متوقفة عن العمل لمدة 12 ساعة في اليوم ، فإن الإغلاق الكلي ثم يوفر: 5 (مصدر طاقة فولت) * 69/1000 (ميلي أمبير / 1000 = أمبير) * 12 (عدد الساعات في اليوم) * 365 (عدد الأيام في سنة) = 1511 واط ساعة. لذلك على أساس سنوي 1.5 كيلووات ساعة. أوافق ، إنه ليس كثيرًا في حد ذاته ، لكن العديد من الصغار يصنعون شيئًا كبيرًا.

الدائرة بسيطة ، يتم تبديل إضافة مصدر الطاقة بواسطة قناة MosFet. يحدد مستشعر الرادار ما إذا كانت نيوبكسل قيد التشغيل أم لا. لقد وضعت اثنين من parrelel MosFet للحفاظ على مقاومة ON عند أدنى مستوى ممكن بسبب فقدان MosFets. في الاستخدام العادي ، أقيس 4 ، 5 ملي فولت فوق MosFets. يتم التحكم في البوابة عن طريق الإخراج 4 من Arduino عبر المقاوم 470 Kohm. إذا كان الناتج منخفضًا (0) رقميًا ، فإن النيوبكسل تكون قيد التشغيل وعلى ارتفاع (1) تكون متوقفة.

الخطوة 10: Smiley on the Word Clock

مبتسم على مدار الساعة
مبتسم على مدار الساعة
مبتسم على مدار الساعة
مبتسم على مدار الساعة

ابتسامة على مدار الساعة.

يظهر أحيانًا وجه مبتسم على مدار الساعة ، لكن هذا يجعلك سعيدًا.

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

الوجوه الضاحكة هو تغيير بسيط في الكود.

الخطوة 11: ما هي المكتبات المستخدمة

المكتبات التي يتم استخدامها.

أستخدمها في Windows 7 مع Arduino IDE 1.6 وتم اختبارها أيضًا في Windows 10 باستخدام Adruino IDE 1.8.8

RTClib-master

Arduino-DS3231-master

Adafruit_NeoPixel-master

Arduino-DCF77-master

مكتبة IRremote كين شريف

نظرًا لوجود ارتباك دائمًا حول المكتبة المستخدمة ، أقوم بإضافة المكتبة التي أستخدمها.

تستخدم مكتبة IRremote مساحة كبيرة من الذاكرة ، ويشار في IRremote.h إلى أنه يمكنك تعطيل أي بروتوكول غير مستخدم

// كل بروتوكول تقوم بتضمينه يكلف الذاكرة ، وأثناء فك التشفير ، يكلف الوقت // تعطيل (اضبط على 0) جميع البروتوكولات التي لا تحتاجها / تريدها!

لقد تم تعطيل كل شيء باستثناء بروتوكول NEC و Samsung. هذا يوفر في الذاكرة بنسبة 10٪. في الوقت الحالي ، لم تعد هناك مشكلة في مقدار الذاكرة ، لذا فإن التعطيل ليس ضروريًا في الوقت الحالي.

الخطوة 12: جهاز تحكم عن بعد بسيط بالأشعة تحت الحمراء

جهاز تحكم عن بعد بسيط بالأشعة تحت الحمراء
جهاز تحكم عن بعد بسيط بالأشعة تحت الحمراء
جهاز تحكم عن بعد بسيط بالأشعة تحت الحمراء
جهاز تحكم عن بعد بسيط بالأشعة تحت الحمراء
جهاز تحكم عن بعد بسيط بالأشعة تحت الحمراء
جهاز تحكم عن بعد بسيط بالأشعة تحت الحمراء

التجمع

كما ترى في الصور ، فقد تبين أن فتحة LED 132 كبيرة جدًا. لقد استفدت من هذا وأضفت مستقبل الأشعة تحت الحمراء إليه. قم بتوصيل دبوس البيانات الخاص بجهاز استقبال الأشعة تحت الحمراء VS1838 بالدبوس 7 من Arduino. علاوة على ذلك ، قم بتوصيل مصدر الطاقة الموجب والناقص. يستخدم مستقبل الأشعة تحت الحمراء 0.21 مللي أمبير ويمكن أيضًا توصيله بمصدر الطاقة الإضافي بعد مفتاح FET. ينتج عن هذا توفير ، إذا كانت الساعة تعمل بنسبة 50٪ من الوقت ، بمقدار 5 فولت * 0.21 مللي أمبير / 1000 * 12 ساعة * 365 يومًا * 1 / 0.85 مصدر طاقة فعال = 5.4 واط في السنة. لا يبدو هذا كثيرًا ، لكن كل جزء يساعد.

العملية على النحو التالي

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

مرة واحدة في التعامل مع الأشعة تحت الحمراء ، ثم يستمر عدد من مصابيح LED للحصول على معلومات ، لمزيد من التوضيح اقرأ المزيد وعرض الصورة الأولى.

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

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

1 لون ثابت أو تأثير قوس قزح

إيقاف تشغيل الفلاش لمدة 2 ثانية أو تشغيل الفلاش الثاني

3 مبتسم قبالة مبتسم

4 إيقاف DCF77 أو تشغيل DCF77

يتم عرض رقم المفتاح على المفاتيح التالية

5 عداد مبتسم

6 عرض طيف قوس قزح

7 إصلاح الإعداد الأحمر

8 إصلاح الإعداد الأخضر

9 إصلاح الإعداد الأزرق

يتوافق الصف 6 و 7 و 8 من مصابيح LED الآن مع القيمة المحددة ، ويشير الصف 6 إلى الوحدات ، ويشير الصف 7 إلى العشرات والصف 8 إلى المائة. يبدأ كل صف بقيمة صفر. لذا فإن أول مؤشر في الصف هو 0 والثاني هو 1 وما إلى ذلك.

0 ضبط الوقت

/ / ضبط السطوع

عند الضغط على الزر 0 ، تضيء مصابيح LED "العشرة" للإشارة إلى أنك تريد ضبط الوقت وعندما تضغط على 0 مرة ثانية ، يظهر الوقت المحدد على الشاشة.

يمكن الآن ضبط الوقت ويظهر على الشاشة.

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

يتم ضبط الوقت.

إذا لم تقم بتشغيل زر الدقائق أو الساعات ، فلن يتم إجراء أي تغيير في الوقت. إذا قمت بالضغط عليها ، فسيتم ضبط الوقت على الفور.

يمكن تغيير قيمة المفاتيح من 5 إلى 9 باستخدام المفاتيح

صحيح زائد 1

اليسار ناقص 1

إلى الأمام زائد 10

العكس هو ناقص 10.

ولإعداد الوقت

صحيح زائد 1 دقيقة

المتبقي أقل من دقيقة واحدة

إلى الأمام زائد 1 ساعة

عكس - 1 ساعة

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

عند ضبط اللون ، ترى التغيير مباشرة على الشاشة بالكامل. للحصول على موقع به نظرة عامة على الألوان ، راجع https://www.helderester.nl/kleurentabel.html. يمكنك بالطبع تحديد أي قيمة.

إذا كانت قيمة عرض طيف قوس قزح تساوي 0 ، يكون الطيف ضيقًا جدًا ويكون للشاشة لون واحد يتغير باستمرار.

عيب ضبط الوقت بهذه الطريقة هو أنه لا يمكنك حساب انتقال الصيف / الشتاء لأن لدينا التاريخ غير صحيح. لا يهم الساعة نفسها لأننا لا نستخدمها الآن.

الخطوة 13: ماذا بعد؟

ماذا بعد؟
ماذا بعد؟

ما يلي ، الصوت ، إذا كانت الذاكرة الحرة لا تزال كافية.

لدي بالفعل صناديق مكبرات الصوت. هم من جهاز كمبيوتر محمول قديم.

موصى به: