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

ساعة منبه ثنائية أردوينو DIY: 14 خطوة (مع صور)
ساعة منبه ثنائية أردوينو DIY: 14 خطوة (مع صور)

فيديو: ساعة منبه ثنائية أردوينو DIY: 14 خطوة (مع صور)

فيديو: ساعة منبه ثنائية أردوينو DIY: 14 خطوة (مع صور)
فيديو: DIY Led Clock DS1302 2024, يوليو
Anonim
DIY Arduino Binary Alarm Clock
DIY Arduino Binary Alarm Clock
DIY Arduino Binary Alarm Clock
DIY Arduino Binary Alarm Clock
DIY Arduino Binary Alarm Clock
DIY Arduino Binary Alarm Clock

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

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

اللوازم

5 مم LED (من أي لون ، لقد استخدمت 13 مصباحًا أبيض مع مؤشر RGB LED واحد) - 14 قطعة

اردوينو نانو (قد يعمل البعض الآخر) - 1 جهاز كمبيوتر

مفتاح صغير - 1 جهاز كمبيوتر

قطعة صغيرة من ورق الألمنيوم

لوحة تركيب (للحاوية ، لكن لا تتردد في تصميمها بنفسك)

قطعة من الورق الأبيض (أو أي لون آخر)

بعض الأفلام البلاستيكية (المستخدمة كغلاف للكتاب)

حفنة من الأسلاك

الجرس - 1 قطعة

الترانزستور NPN - 1 قطعة

المقاومات 6k8 - 14 قطعة ، 500R - 1 قطعة ، 20R (10Rx2) - قطعة واحدة ، 4k7 - قطعة واحدة

مصدر الطاقة للمشروع (كنت أستخدم بطارية Li-on)

شريط 5050 LED ومفتاح منزلق (اختياري)

الخطوة 1: قم بتوصيل الدائرة

قم بتوصيل الدائرة!
قم بتوصيل الدائرة!

سأقسم هذه الخطوة إلى:

1) جزء الجرس

2) لوحة LED

3) المفتاح (زر ضغط)

4) شريط LED

5) مستشعر السعة

6) امدادات الطاقة

7) قم بتوصيلهم جميعًا بـ Arduino

في معظم الأحيان ، هذه مجرد خطوة "اتبع التخطيطي". لذا تحقق من المخطط أعلاه أو حتى قم بتنزيله وطباعته!

الخطوة 2: تحضير جزء الجرس

تحضير جزء الجرس
تحضير جزء الجرس
تحضير جزء الجرس
تحضير جزء الجرس
تحضير جزء الجرس
تحضير جزء الجرس

إذا كنت قد استخدمت الجرس مع Arduino من قبل ، فستعرف أنه إذا قمنا بتوصيله مباشرة بـ Arduino فلن يكون مرتفعًا بدرجة كافية. لذلك نحن بحاجة إلى مكبر للصوت. لبناء مكبر الصوت ، نحتاج إلى ترانزستور NPN (في الأساس سيعمل أي NPN ، لقد استخدمت S9013 لأنني حصلت عليه من مشروع قديم) ، وبعض المقاوم للحد من التيار. للبدء ، حدد أولاً جامع وباعث وقاعدة الترانزستور. سيعمل القليل من البحث في ورقة البيانات على Google على هذا الغرض. بعد ذلك ، قم بلحام مجمع الترانزستور بالطرف السالب للجرس. عند الطرف الموجب للجرس ، نقوم فقط بلحام قطعة من السلك بها حتى نتمكن من لحامها في Arduino لاحقًا. بعد ذلك ، قم بلحام المقاوم 500R (أو أي قيمة مماثلة للمقاوم) بقاعدة الترانزستور ومن المقاوم ، قم بلحام قطعة أخرى من الأسلاك لاستخدامها في المستقبل. أخيرًا ، قم بتوصيل المقاومين 10R المتسلسل بباعث الترانزستور وقم بتوصيل سلك آخر من المقاومات.

حقا ، الرجوع إلى التخطيطي.

ع / ق: ما زلت لا أعرف حقًا كيفية اختيار المقاوم للترانزستور في وقت كتابة هذا. تم تحديد القيمة التي استخدمتها تجريبيًا.

الخطوة 3: تجهيز لوحة LED

تحضير لوحة LED
تحضير لوحة LED
تحضير لوحة LED
تحضير لوحة LED
تحضير لوحة LED
تحضير لوحة LED

قم بتوصيل المصابيح والمقاوم بلوحة النماذج الأولية وفقًا لذلك ولحامها. هذا كل شيء. اتبع التخطيطي. في حال كنت مهتمًا بالمسافة التي استخدمتها ، 3 ثقوب لكل عمود ، وثقبين لكل صف (راجع الصورة). ومؤشر LED؟ لقد قمت بتوصيله بشكل عشوائي.

بعد لحام مصابيح LED والمقاوم باللوحة ، قم بتوصيل جميع الأطراف الموجبة لمصابيح LED معًا. ثم ، أسلاك اللحام واحدًا تلو الآخر لكل المقاوم عند الأطراف السالبة لمصابيح LED حتى نتمكن من لحامها في Arduino لاحقًا.

ملاحظة: قد يتم الخلط بينك وبين هذه الخطوة. تذكر بدلاً من توصيل كل الأرض معًا ، نقوم بتوصيل كل الأطراف الموجبة معًا والطرف السالب بالدبوس الفردي على Arduino. وبالتالي ، فإننا نستخدم دبوس Arduino GPIO كأرضي ، وليس Vcc. في حالة توصيله بطريق الخطأ للخلف ، فلا داعي للقلق. يمكنك تعديل كل من HIGH إلى LOW ومن LOW إلى HIGH في وظيفة ledcontrol.

الخطوة 4: تحضير المفتاح (زر الضغط في الواقع)

تحضير المفتاح (الزر الانضغاطي في الواقع)
تحضير المفتاح (الزر الانضغاطي في الواقع)
تحضير المفتاح (الزر الانضغاطي في الواقع)
تحضير المفتاح (الزر الانضغاطي في الواقع)
تحضير المفتاح (الزر الانضغاطي في الواقع)
تحضير المفتاح (الزر الانضغاطي في الواقع)

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

ركن المعرفة: لماذا نحتاج إلى مقاوم منسدل؟

"إذا قمت بفصل دبوس الإدخال / الإخراج الرقمي عن كل شيء ، فقد يومض مؤشر LED بشكل متقطع. ويرجع ذلك إلى أن الإدخال" عائم "- أي أنه سيعود بشكل عشوائي إما مرتفع أو منخفض. ولهذا السبب تحتاج إلى سحب لأعلى أو المقاوم المنسدل في الدائرة ". - المصدر: موقع اردوينو

الخطوة 5: تحضير شريط LED

تحضير شريط LED
تحضير شريط LED
تحضير شريط LED
تحضير شريط LED

شريط LED لمصباح جانب السرير ، وهو اختياري. فقط قم بتوصيل شريط LED ومفتاح الشريحة معًا في سلسلة ، لا شيء مميز.

الخطوة 6: تحضير مستشعر السعة

تحضير مستشعر السعة
تحضير مستشعر السعة
تحضير مستشعر السعة
تحضير مستشعر السعة
تحضير مستشعر السعة
تحضير مستشعر السعة
تحضير مستشعر السعة
تحضير مستشعر السعة

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

الخطوة 7: تحضير مصدر الطاقة

تحضير مصدر الطاقة
تحضير مصدر الطاقة
تحضير مصدر الطاقة
تحضير مصدر الطاقة
تحضير مصدر الطاقة
تحضير مصدر الطاقة

نظرًا لأنني استخدمت بطارية li-on كمصدر للطاقة ، فأنا بحاجة إلى وحدة TP4056 للشحن والحماية ، ومحول دفع لتحويل الجهد إلى 9 فولت. إذا قررت استخدام محول جداري 9 فولت ، فقد تحتاج إلى مقبس تيار مستمر ، أو فقط قم بتوصيله مباشرة. لاحظ أن قيمة المقاوم للمضخم هي تصميم 9 فولت وإذا كنت تريد استخدام جهد آخر ، فقد تحتاج إلى تغيير المقاوم.

الخطوة 8: توصيلهم بـ Arduino

توصيلهم بأردوينو
توصيلهم بأردوينو
توصيلهم بأردوينو
توصيلهم بأردوينو
توصيلهم بأردوينو
توصيلهم بأردوينو

اتبع التخطيطي! اتبع التخطيطي! اتبع التخطيطي!

لا تقم بتوصيل الدبوس الخطأ وإلا ستصبح الأشياء غريبة.

الخطوة 9: الضميمة

نسيج
نسيج
نسيج
نسيج
نسيج
نسيج
نسيج
نسيج

أبعاد تصميمي هي 6.5 سم * 6.5 سم * 8 سم ، لذلك فهي ضخمة بعض الشيء. تتكون من نافذة أمامية لشاشة LED ونافذة علوية لمصباح بجانب السرير. لتصميمي ، الرجوع إلى الصور.

الخطوة 10: وقت البرمجة

Image
Image
وقت البرمجة!
وقت البرمجة!

قم بتنزيل الرسم التخطيطي أدناه وقم بتحميله على Arduino الخاص بك. إذا كنت لا تعرف كيفية القيام بذلك ، فلا تهتم بالقيام بهذا المشروع! لا تمزح فقط ، إليك برنامج تعليمي جيد عنها: قم بتحميل رسم تخطيطي إلى اردوينو

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

لضبط الساعة: h ، XX - حيث xx هي الساعة الحالية

لضبط الدقيقة: min ، XX - xx هي الدقيقة الحالية

لتعيين الثانية: s ، XX

لتعيين التاريخ: د ، XX

لتعيين الشهر: الاثنين ، XX

عندما يتم تنفيذ التعليق أعلاه ، يجب أن يعيد لك القيمة التي حددتها للتو. (على سبيل المثال ، عندما تضبط الساعة مع h ، 15 ، يجب أن تعيد الساعة: 15 في الشاشة التسلسلية.

بالنسبة لمستشعر السعة ، قد تحتاج إلى معايرته قبل أن يعمل. للقيام بذلك ، اضغط على المفتاح الصغير مرتين ، وانظر إلى الشاشة التسلسلية. يجب أن ينتج مجموعة من الأرقام. الآن ضع إصبعك على مستشعر السعة ، ولاحظ نطاق الرقم. بعد ذلك ، قم بتعديل المتغير "captrigger". لنفترض أنك تحصل على 20-30 عند الضغط عليها ، ثم اضبط الآسر على 20.

يستخدم الرسم مكتبة ADCTouch ، تأكد من تثبيته.

الخطوة 11: آلية التصحيح

تم تعيين الفترة الزمنية للآلية التصحيحية في الكود الخاص بي على تلك الدقيقة بالنسبة لي. إذا كان الوقت لا يزال غير دقيق ، فأنت بحاجة إلى تغيير قيمة المتغير "corrdur"

تشير كلمة corrdur الآن إلى القيمة الافتراضية إلى 0 في آخر تحديث.

تعني قيمة corrdur عدد المللي ثانية الذي يستغرقه الأمر لإبطاء ثانية واحدة

لمعرفة قيمة corrdur ، استخدم الصيغة:

2000 / (ص-س) / س)

حيث x = المدة الفعلية للوقت المنقضي و y = المدة الزمنية المنقضية على مدار الساعة ، كلاهما في الثانية

لإيجاد قيمة x و y ، عليك إجراء تجربة صغيرة.

اضبط وقت الساعة على الوقت الفعلي وسجل الوقت الأولي (يجب أن يكون الوقت الأولي الفعلي والوقت الأولي للساعة متماثلين). بعد فترة (بضع ساعات) ، سجل الوقت الفعلي النهائي والساعة النهائية للوقت.

x = الوقت الفعلي النهائي - الوقت الأولي و y = الوقت النهائي للوقت الأولي على مدار الساعة

ثم قم بتغيير قيمة corrdur في الكود وأعد تحميله إلى Arduino.

ثم كرر الاختبار وهذه المرة تغيرت الصيغة إلى:

2000 / ((2 / ض) + (ص-س / س))

حيث x و y نفس الشيء كما كان من قبل ، بينما z هي قيمة corrdur الحالية.

قم بالتحميل مرة أخرى وقم بإجراء الاختبار مرارًا وتكرارًا حتى يصبح دقيقًا بما يكفي لك.

في حالة ما إذا كانت ساعتك لا تزال تتسارع حتى تم ضبط corrdur على 0 (يعني عدم وجود آلية تصحيحية) ، فأنت بحاجة إلى تغيير ثاني ++ إلى ثاني - في جزء الآلية التصحيحية من الكود (علقت عليه) ، اضبط corrdur على 0 ، ثم تجد لا. من الملي ثانية يستغرق الأمر سرعة ثانية واحدة.

الخطوة 12: كيفية استخدام جميع الوظائف

Image
Image

يمكنك تغيير الوضع بالضغط على المفتاح الصغير.

في الوضع الأول ، يعرض الوقت ببساطة. إذا كان ضوء المؤشر يومض بمعدل 1 مرة في الثانية ، فإن التنبيه متوقف. إذا كان التنبيه مرتين في الثانية ، فسيتم تشغيل المنبه. يمكنك غفوة المنبه لمدة 10 دقائق في الوضع الأول بالضغط على مستشعر السعة.

في الوضع الثاني ، يتم عرض التاريخ. الضغط على مستشعر السعة لا يفعل شيئًا.

في الوضع الثالث ، يمكنك ضبط المؤقت. سيؤدي الضغط على مستشعر السعة إلى تشغيل المؤقت وسترى أن ضوء المؤشر بدأ في الوميض. يستخدم مستشعر السعة أيضًا لضبط وقت المؤقت. نطاق المؤقت من دقيقة واحدة إلى 59 دقيقة.

في الوضع الرابع ، يمكنك ضبط ساعة التنبيه باستخدام مستشعر السعة

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

في الوضع السادس ، سيؤدي الضغط على مستشعر السعة إلى إعادة تعيين الدقيقة إلى 30 والثانية إلى 0 دون تغيير الساعة. هذا يعني أنه طالما أن ساعتك لا تنجرف لأكثر من 30 دقيقة ، يمكنك إعادة معايرتها باستخدام هذا الوضع.

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

أوه ، لتجاهل المنبه ، فقط اضغط على المفتاح الصغير. (أحدث تحديث لتضمين المنبه غفوة)

حسنًا ، ماذا عن قراءة الساعة؟ من السهل! قراءة الساعة الثنائية - WikiHow قد تشعر بالغرابة في البداية ، لكنك ستعتاد عليها!

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

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

لماذا بدأت هذا المشروع. في البداية ، لأن لدي ساعة رقمية قديمة موجودة في الجوار وأريد تحويلها إلى ساعة منبه. لسوء الحظ ، تحولت الساعة القديمة إلى كسر. لذلك كنت مثل لماذا لا نبني واحدة باستخدام Arduino؟ مع القليل من بحث google ، وجدت مشروع الساعة الثنائية هذا بدون RTC على تعليمات بواسطة Cello62. ومع ذلك ، فإنه لا يحتوي على ميزة المنبه التي أريدها ، لذلك أقوم بأخذ الكود وتعديله بنفسي. وولد المشروع. علاوة على ذلك ، رأيت مسابقة على مدار الساعة تجري على تعليمات مؤخرًا مما أعطاني المزيد من الحافز للقيام بذلك. على أي حال ، لا يزال هذا هو أول مشروع لي باستخدام Arduino ، لذا مجموعة من التحسينات الممكنة.

التحسين المستقبلي:

1) استخدم RTC

2) ضبط المنبه أو الوقت أو الموقت لاسلكيًا!

3) مهما كانت الميزة التي أفكر بها

الخطوة 14: التحديث: بعد أسبوع من الاستخدام

التحديث: بعد أسبوع من الاستخدام
التحديث: بعد أسبوع من الاستخدام
التحديث: بعد أسبوع من الاستخدام
التحديث: بعد أسبوع من الاستخدام
التحديث: بعد أسبوع من الاستخدام
التحديث: بعد أسبوع من الاستخدام

بصرف النظر عن المشكلة الواضحة - الانجراف الزمني ، فإن المشكلة التالية التي سأقولها هي استهلاك الطاقة. أولاً ، أقوم بتصعيد الجهد إلى 9 فولت ، والذي سيتم بعد ذلك خفضه بواسطة المنظم الخطي في Arduino. المنظم الخطي غير فعال للغاية. الساعة تدوم ليوم واحد فقط. هذا يعني أنني يجب أن أعيد شحنه كل يوم. هذه ليست أكبر صفقة حتى تدرك أن النظام بأكمله فعال بنسبة 50 ٪ فقط. نظرًا لأن بطاريتي تبلغ 2000 مللي أمبير في الساعة ، فسأكون قادرًا على حساب الطاقة المهدرة كل يوم.

الطاقة المهدرة = (7.4Wh * 10٪) + (7.4Wh * 90٪ * 50٪) = 4.07Wh في اليوم

هذا هو 1.486 كيلو واط ساعة في السنة! يمكن استعماله لغلي أه 283 جرام ماء (من 25 درجة مئوية حتى 100 درجة مئوية)؟ لكن على أي حال ، سأقوم بتحسين كفاءة الساعة. طريقة القيام بذلك هي عدم استخدام المنظم الخطي على الإطلاق. هذا يعني أنه يتعين علينا ضبط محول التعزيز لإخراج 5V مباشرة في دبوس 5V على Arduino. بعد ذلك ، لتقليل الطاقة المهدرة إلى الحد الأدنى ، لا بد لي من إزالة مصباحي LED الموجودين على اللوحة (pin13 والطاقة) ، حيث سيضيعان 0.95Wh في اليوم. لسوء الحظ ، أنا مستاء تمامًا من SMD soldering ، لذا فإن الطريقة الوحيدة للقيام بذلك هي قطع السكة على السبورة. بعد ذلك ، لا بد لي من إزالة المقاوم الباعث على الجرس ومصباح السرير (لا يعمل شريط LED عند 5 فولت). لكن هل هذا يعني أنه يجب عليك التخلي عن هذه الميزة الرائعة؟ لا! لديك خياران هنا: استخدم الصمام الثنائي العادي 5 مم LED ، أو استخدم شريط 5V LED. لكن بالنسبة لي ، لقد شعرت بالفعل بالتعب من القيام بهذا المشروع طوال الأسبوع الماضي ، لذلك قررت التخلي عن هذه الميزة. ومع ذلك ، فقد استخدمت المفتاح في الأصل لميزة الإضاءة لتشغيل لوحة الساعة أو إيقاف تشغيلها لتوفير مزيد من الطاقة ، ولكن انتهى بي المطاف بمصباح LED عند إيقاف تشغيله. أصبحت ميزة علة؟ لا أعرف (أي شخص يعرف من فضلك قل لي أدناه).

في نهاية التعديل ، تدوم الساعة الآن لأكثر من يومين!

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

بالنسبة إلى الانجراف الزمني ، نظرًا لأنه من غير الملائم جدًا توصيل جهاز الكمبيوتر كل يوم لإعادة تعيينه ، فقد أضفت وضعًا آخر سيعين دقيقة على 30 والثانية إلى 0. وهذا يعني أنه يمكنك إعادة تعيينه في نصف ساعة بعد أي ساعة!

موصى به: