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

ساعة تنبؤات الطقس باستخدام المنبه القديم و Arduino: 13 خطوة (بالصور)
ساعة تنبؤات الطقس باستخدام المنبه القديم و Arduino: 13 خطوة (بالصور)

فيديو: ساعة تنبؤات الطقس باستخدام المنبه القديم و Arduino: 13 خطوة (بالصور)

فيديو: ساعة تنبؤات الطقس باستخدام المنبه القديم و Arduino: 13 خطوة (بالصور)
فيديو: Scentroid's CTAir Continuous Urban Air Quality Monitor Seminar A 12.08.2020 (Subtitled) 2024, يوليو
Anonim
ساعة توقعات الطقس باستخدام المنبه القديم واردوينو
ساعة توقعات الطقس باستخدام المنبه القديم واردوينو
ساعة توقعات الطقس باستخدام المنبه القديم واردوينو
ساعة توقعات الطقس باستخدام المنبه القديم واردوينو

كان لدي منبه مكسور ملقى ووجدت فكرة لتحويله إلى ساعة ومحطة للتنبؤ بالطقس.

لهذا المشروع سوف تحتاج:

  • المنبه الدائري القديم
  • اردوينو نانو
  • وحدة استشعار BME280 (درجة الحرارة والرطوبة والضغط)
  • وحدة عرض LCD من Nokia 5110
  • ساعة DS1307 RTC
  • شاحن بطارية الليثيوم TP4056
  • بطارية ليثيوم أيون قديمة تم إنقاذها من الهاتف المحمول
  • وحدة معززة صغيرة 3.7 فولت إلى 5 فولت
  • مقاوم يعتمد على الضوء (LDR - مقياس الضوء)
  • الجرس (مستخدم تم استرداده من جهاز الكمبيوتر القديم)
  • 3 أزرار انضغاطية
  • مجموعة من المقاومات (2 × 10 كيلو ، 270 أوم) وترانزستور (2N2222A أو ما شابه)
  • بعض أنبوب الانكماش الواسع
  • خردة ثنائي الفينيل متعدد الكلور لاستخدامها كديكور اللوحة الأمامية
  • كابل تمديد Micro-USB (كلا الجانبين من الذكور والإناث عبارة عن Micro-USB)
  • 2x8cm نموذج المجلس وبعض الأسلاك

الخطوة 1: تفكيك كل شيء

تفكيك كل شيء
تفكيك كل شيء

أولاً قمت بتفكيك الساعة القديمة. أجراس ، محرك ، آلية ساعة معطلة …

الخطوة 2: أزرار الإعدادات الرقمية

أزرار الإعدادات الرقمية
أزرار الإعدادات الرقمية
أزرار الإعدادات الرقمية
أزرار الإعدادات الرقمية
أزرار الإعدادات الرقمية
أزرار الإعدادات الرقمية
أزرار الإعدادات الرقمية
أزرار الإعدادات الرقمية

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

باستخدام قطعة خردة من الألومنيوم ، قمت بقص التراكب لإنشاء ملصق. تم إنشاء أحرف الملصقات باستخدام مثقوب الحروف وعلامة سوداء.

الخطوة 3: مكثف للمحرك

مكثف للمحرك
مكثف للمحرك

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

الخطوة 4: وجه جديد للساعة

وجه جديد للساعة
وجه جديد للساعة
وجه جديد للساعة
وجه جديد للساعة

منذ أن قررت أن أصنع وجهًا جديدًا على مدار الساعة - أخذت لوحة دائرة من كومة القمامة الخاصة بي واستخدمت مدفع حراري منشئ لإزالة جميع المكونات بسرعة. الفتحة الموجودة في المنتصف مصنوعة من أجل الشاشة الرقمية للساعة الجديدة.

الخطوة 5: العرض الرقمي من الهاتف المحمول القديم

العرض الرقمي من الهاتف المحمول القديم
العرض الرقمي من الهاتف المحمول القديم
العرض الرقمي من الهاتف المحمول القديم
العرض الرقمي من الهاتف المحمول القديم

بالنسبة لهذا المشروع ، قررت استخدام شاشة LCD من هاتف Nokia 5110 القديم. هذه الشاشات متاحة على نطاق واسع للبيع كوحدة نمطية ، فهي تستهلك القليل جدًا من الطاقة وهناك مكتبات جيدة لـ Arduino. إذا كنت تشتري وحدة جديدة مع شاشة 5110 - فأنت تقوم بحفظ الكوكب لأن جميع الوحدات الجديدة يتم إنشاؤها من هواتف 5110 و 3110 و 3210 التي تم إنقاذها!

الخطوة 6: توصيل الدوائر

ربط الدوائر
ربط الدوائر
ربط الدوائر
ربط الدوائر
ربط الدوائر
ربط الدوائر

ربما تكون قد خمنت بالفعل أنني كنت أخطط لاستخدام لوحة Arduino للتحكم في هذه الساعة. يمكن تكرار المشروع بسهولة حتى بالنسبة لمحبي Arduino المبتدئين لأنني لم أقوم بإنشاء لوحات الدوائر الخاصة بي. إنها لوحة Arduino Nano مع وحدات متصلة بها - مستشعر درجة الحرارة والضغط والرطوبة BME280 ، ساعة DS1307 RTC ، شاحن بطارية الليثيوم TP4056 ، وحدة معززة صغيرة 3.7 فولت إلى 5 فولت ، مقاوم يعتمد على الضوء (LDR - مقياس الضوء) وجرس (مأخوذة من جهاز الكمبيوتر القديم).

ألقِ نظرة أيضًا على الرسومات - فهي تعرض جميع الروابط. أعتقد أن كل شيء سهل القراءة والفهم ، ولكن إذا كان لديك أي أسئلة ، فما عليك سوى طرحها في التعليقات أدناه.

ملاحظات قليلة حول الإعداد:

  • المحرك متصل مباشرة من البطارية من خلال الترانزستور. يتحكم Arduino في الترانزستور من خلال المقاوم و PWM pin D5.
  • تستخدم الدبابيس D7-12 لموصل LCD. الأرض و VCC متصلة بالسكك الحديدية على لوحة التوصيل.
  • تم تثبيت LDR على واجهة الساعة وتم لحام المقاوم + 3 أسلاك صادرة مباشرة على الجزء الخلفي من وجه الساعة.
  • لتوصيل الزر ، استخدمت وظيفة PULLUP الداخلية داخل Arduino. زر القائمة متصل بالمقاطعة وأدركت لاحقًا أنه يمكنك أيضًا استخدام PULLUP الداخلي للمقاطعة أيضًا. مطلوب مقاطعة زر القائمة حتى لا يقوم الرمز بفحص حالة الأزرار طوال الوقت.
  • ستراقب الساعة وتعرض أيضًا حالة البطارية بحيث يتم توصيل البطارية مباشرة بالدبوس A0. لا يزيد جهد البطارية أبدًا عن 4.2 فولت ، لذا من الآمن توصيل البطارية مباشرة بدبوس Arduino التناظري.
  • الجرس متصل مباشرة بـ PWM pin D6. على الرغم من أن هذه ليست ممارسة جيدة ، فقد أفلتت منها لأن Arduino Nano يمكنه التعامل مع مواصفات أعلى مما هو مذكور وأيضًا لأن الجرس لن يعمل باستمرار. قد يؤدي نفس الإعداد إلى حرق المسامير الموجودة على لوحات ESP بسهولة ، لذا أوصي في هذه الحالات باستخدام عنصر التحكم في الترانزستور.
  • كانت الساعة تحتوي بالفعل على مفتاح لذلك قررت استخدامه. تبدو طبيعية على الظهر.

الخطوة 7: لوحة التوصيل لاتصالات سهلة

لوحة مفرق لوصلات سهلة
لوحة مفرق لوصلات سهلة
لوحة مفرق لوصلات سهلة
لوحة مفرق لوصلات سهلة

تتطلب جميع الوحدات اتصالات موجبة وأرضية ، لذلك قررت استخدام لوحة نموذج أولي 2 × 8 سم وقضبان أرضية ملحومة 5 فولت وقضبان أرضية. لقد صنعت أيضًا سكة I2C صغيرة هناك أيضًا لأن لدي عدة وحدات باستخدام واجهة I2C.

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

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

راجع للشغل هل يمكنك رؤية مستشعر LDR مثبتًا بالفعل على وجه الساعة في الصورة الأولى؟

الخطوة 8: إعداد الطاقة

إعداد الطاقة
إعداد الطاقة

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

لتوصيل البطارية ، يمكنك ببساطة لحام الأسلاك بـ + و- دبابيس على البطارية. لا تقلق ، لن تتلف الخلية لأن هناك وحدة تحكم وبعض الفراغات الفارغة بين المسامير والمواد الكيميائية للخلية.

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

الخطوة 9: Micro USB للشحن وتحديث البرامج الثابتة

Micro USB لشحن وتحديث البرامج الثابتة
Micro USB لشحن وتحديث البرامج الثابتة

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

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

نظرًا لأنني كنت أرغب في استخدامه لشحن وتحديث وظائف الساعة ومحطة الطقس - فقد جردت كبل USB ، وقمت بتوجيه أسلاك الطاقة من خلال شاحن TP4056 و Data + / Data- الأسلاك مباشرة إلى مقبس USB في Arduino Nano. يمكنك أن ترى هذا في التخطيطي الذي عرضته في الأقسام السابقة.

الخطوة 10: التجميع النهائي

التجميع النهائي
التجميع النهائي
التجميع النهائي
التجميع النهائي
التجميع النهائي
التجميع النهائي

حان الوقت الآن لإعادة كل شيء إلى الساعة الأصلية. لقد استخدمت أنبوب الانكماش لعزل المكونات والوحدات. حتى Arduino كان ملفوفًا في أنبوب يتقلص.

قم بالمرور فوق الصورة الأولى لمعرفة مكان وضع كل مكون.

الخطوة 11: الكود

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

حتى الآن ، إلى جانب الساعة نفسها ، هذه هي الوظائف التي يدعمها هذا المشروع بالفعل:

  • عرض الوقت والتاريخ (بالإضافة إلى الوقت وتفعيل المنبه على نفس الشاشة)
  • تضيء الشاشة في الظروف المظلمة أو عند اكتشاف حركة (بناءً على تغيرات الضوء)
  • توقعات الطقس (مشمس ، غائم ، ممطر)
  • عرض درجة الحرارة والضغط والرطوبة (بالنسبة للرطوبة ، ستشير إلى ما إذا كانت جافة جدًا)
  • قائمة الإعدادات: التنبيه ، وتغيير الوقت ، وتمكين / تعطيل عرض التاريخ ، وتمكين / تعطيل الإشعارات الصوتية لتغيير الطقس ، والتبديل بين الوحدات الإمبراطورية والوحدات المترية
  • إعدادات التنبيه - تشغيل / إيقاف ، ضبط الوقت ، ضبط اللحن و / أو أجراس الإخطارات

أحدث كود:

سيتم تحديث الكود في المستقبل بميزات جديدة ، لذا تأكد من التحقق مرة أخرى من تحديثات البرامج الثابتة:-)

إذا كنت جديدًا في عالم Arduino ، فهذه هي الخطوات التي أوصي بفعلها:

  • تثبيت برنامج تشغيل USB للوح الخاص بك (مثل CH340)
  • قم بتثبيت Arduino IDE
  • تثبيت المكتبات المستخدمة في هذا المشروع
  • قم بالتنزيل من GitHub وقم بتحميل أحدث كود مشروع على مدار الساعة باستخدام كابل Micro USB (يمكنك استخدام واحد من الهاتف المحمول)

خوارزمية التنبؤ هي كما يلي:

يحصل Arduino Nano على بيانات جديدة من مستشعر BME280 كل 12 دقيقة. دورة القياس 3 ساعات. بعد 3 ساعات ، يتغير نطاق مراقبة الضغط (القيمة القصوى والدقيقة خلال 3 ساعات) بالنسبة لمتوسط القيم خلال النطاق الحالي وقيمة الضغط الحالية. كل ساعة يتم حفظ اتجاه تغيير الضغط مع قيمة الضغط الحالي. تستخدم وحدات كيلو باسكال لحساب التنبؤ.

بسبب قيود ذاكرة Nano ، كان لابد من تبسيط خوارزمية التنبؤ. ولكن على الرغم من التبسيط ، فإنه قادر على التنبؤ بهطول الأمطار في غضون 12-24 ساعة القادمة على الرغم من أن التنبؤ الآن أكثر تشاؤمًا - القيمة الافتراضية هي "طقس غائم".

"الطقس المشمس" - القيمة الحالية للضغط أعلى من المعتاد بمقدار 7 نقاط ، والضغط لا ينخفض والفرق بين القيم الدنيا والقصوى خلال آخر 3 ساعات لا يزيد عن نقطتين.

هطول الأمطار المحتمل "طقس ممطر" - الضغط الحالي أقل بـ 15 نقطة من القاعدة والفرق بين القيم الدنيا والقصوى أكثر من نقطتين أو الضغط ينخفض والفرق بين القيمة الحالية والمعيار هو 3 - 30 نقطة.

لتحسين جودة التنبؤ ، يوصى بتغيير "الارتفاع" في ملف الشفرة الرئيسي. يمكنك الحصول على الارتفاع الخاص بك على سبيل المثال هنا:

الخطوة 12: فيديو خطوة بخطوة

Image
Image

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

الخطوة 13: الكلمات الأخيرة

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

جميع المكونات منخفضة السعر ومتاحة على Sparkfun / Aliexpress / eBay / Amazon.

آمل أن يكون هذا البرنامج التعليمي ممتعًا لك وسأكون ممتنًا إذا تمكنت من دعم أول Instructable في مسابقة الساعة.

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

الوصيف في مسابقة الساعات

موصى به: