جدول المحتويات:
- الخطوة 1: تجميع الأجزاء
- الخطوة 2: تجميع الدائرة
- الخطوة 3: ضبط شاشة LCD والساعة
- الخطوة 4: التشفير
- الخطوة الخامسة: حان وقت الاختبار
- الخطوة 6: إعداد تطبيق Bluetooth
- الخطوة السابعة: بناء القضية
- الخطوة 8: انتهى
فيديو: ساعة منبه شروق الشمس مع شاشة LCD وتطبيق بلوتوث: 8 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:40
يمكن أن يكون فصل الشتاء حزينًا. تستيقظ ، الجو مظلم وعليك النهوض من السرير. آخر شيء تريد سماعه هو الصوت المزعج لساعة المنبه. إذا كنت ، مثلي ، تواجه مشكلة في الاستيقاظ في الصباح ، فإن هذا المنبه هو فقط ما تحتاجه.
في هذا البرنامج التعليمي ، سنقوم ببناء Sunrise Alarm Clock. إنها منبه مثل أي ساعة أخرى حيث يمكنك ضبط الساعة والدقيقة التي تريد أن تستيقظ فيها ، ولكن مع الاستفادة من استخدام الضوء لإضاءة غرفة نومك على مدار فترة زمنية مثل شروق الشمس لإيقاظك بدلاً من أن يكون مزعجًا صفارة!
سنستخدم أيضًا وحدة بلوتوث لإنشاء تطبيق يتيح لك ضبط المنبه عبر هاتفك على الساعة. ستعرض شاشة LCD الوقت والتاريخ واليوم من الأسبوع. توجد مصابيح شروق الشمس في السوق ولكنها قد تكون باهظة الثمن (البحث السريع على Google يعرض المنتجات في نطاق 100 يورو) وهشة ومظهر سريري تمامًا. لهذا السبب قررت أن أصنع مشروعًا خاصًا بي لمشروع مدرسة Arduino. سيتم سرد جميع الأجزاء في الخطوة التالية. يمكن تنزيل الكود من Github repo sunrise-alarm-clock. هيا نبدأ:)
يمكن العثور على جميع التعليمات البرمجية على:
الخطوة 1: تجميع الأجزاء
سنستخدم ساعة كمدخلات لدينا ومصباح LED فائق السطوع كمخرجنا لمحاكاة شروق الشمس لدينا.
لبناء الدائرة سوف نحتاج:
- Arduino Uno- Clockmodule RTC DS3231 - MOSFET للتحكم في سطوع الضوء - مصباح LED فائق السطوع (اشتريت 2 ، واحد دافئ ، واحد بارد) - بطارية 9 فولت لتشغيل مؤشر LED - لوحة توصيل - شاشة LCD (16: 2) - محول بلوتوث hc-05 حتى نتمكن من استخدام تطبيق لضبط المنبه.
كل ما تحتاجه يمكن شراؤه على www.martoparts.nl
الخطوة 2: تجميع الدائرة
يمكنك الرجوع إلى الرسم التخطيطي لدارتي ، فمن المؤسف أنني لم أجد RTC DS3231 في البرنامج لذلك كان علي أن أفعل هذا. الاتصالات مختلفة قليلاً في الواقع ، ها هي الاتصالات. (وحدة البلوتوث ليست في الرسم ولكن سأشرح كيف تعمل أدناه لأنها صعبة نوعًا ما)
يذهب RTC DS3231GND إلى GND على اردوينو
يذهب VCC إلى 5v
يذهب SDA إلى اردوينو
SCL يذهب إلى arduino لن نستخدم SQW & 32KMOSFET
يذهب دبوس البوابة إلى دبوس ~ 9 على Arduino Uno لأنه ينتقل دبوس PWMDrain إلى الجانب السلبي من دبوس مصدر LED يذهب إلى GND على Arduino
يذهب VCC إلى 5VSDA يذهب إلى A4 على arduinoSKL يذهب إلى A5 على arduinoLED- يذهب إلى mosfet + ينتقل إلى بطارية 5v9v يمكنك شراء بطارية 9v في أي متجر محلي ، قم بتوصيلها بـ arduino بشريط موصل.
وحدة بلوتوث hc-055V تذهب إلى 5 فولت من اردوينو
يذهب GND إلى GND على اردوينو
يوجد الآن مدخلين إضافيين ولكن هنا يأتي الجزء الصعب ، علينا توصيل المدخلات المعاكسة لهذين النوعين على arduinoTX من hc-05 يذهب إلى RX على arduinoRX من hc-05 يذهب إلى TX على اردوينو
هام: تأكد من فصل TX & RX عن HC-05 عندما تقوم بتحميل كود على اردوينو الخاص بك وإلا ستظهر لك رسالة خطأ تقول "حدث خطأ ما في تحميل الكود" في المترجم.
الخطوة 3: ضبط شاشة LCD والساعة
المكتبة المستخدمة لشاشة LCD عبارة عن بلور سائل ويمكن العثور عليها على: https://github.com/fdebrabander/Arduino-L LiquidCrys… قم بتنزيل الملف المضغوط وحفظه ووضعه في مجلد Arduino / libraries
يمكن العثور على المكتبة التي أستخدمها لتشغيل الساعة في Rinky-Dinky Electronics https://www.rinkydinkelectronics.com/library.php؟id=73 وتأكد من أنك على صفحة DS3231. قم بتنزيل الملف المضغوط وحفظه ووضعه في مجلد مكتبات Arduino.
زمن
قم بتضمين المكتبة DS3231 أو DS1307 في كود اردوينو الخاص بك
قم بإلغاء تعليق هذه الأسطر الثلاثة من التعليمات البرمجية لضبط الوقت:
// rtc.setDOW (الاثنين) ؛ // تعيين يوم من الأسبوع على الأحد // rtc.setTime (23 ، 57 ، 0) ؛ // اضبط الوقت على 12:00:00 (تنسيق 24 ساعة) // rtc.setDate (14 ، 1 ، 2019) ؛ // تعيين التاريخ على 1 يناير 2014
عرض شاشات الكريستال السائل
قم بتضمين المكتبة liqduicrystal_i2c في كود اردوينو الخاص بك
للطباعة على شاشة LCD ، استخدم
lcd.setCursor (عمود ، صف) // موضع النص المطبوع ccd.print (~) // نص مطبوع
الخطوة 4: التشفير
قم بتنزيل الكود على: github:
قم بإلغاء تعليق هذه الأسطر الثلاثة لضبط الساعة على شاشة LCD الخاصة بك:
// rtc.setDOW (الاثنين) ؛ // تعيين يوم من الأسبوع على الأحد // rtc.setTime (23 ، 57 ، 0) ؛ // اضبط الوقت على 12:00:00 (تنسيق 24 ساعة) // rtc.setDate (14 ، 1 ، 2019) ؛ // تعيين التاريخ على 1 يناير 2014
استخدم lcd.setCuros (عمود ، صف) ؛ لتعيين موضع النص على الشاشة
lcd.setCursor (0 ، 2) ؛
وطباعة () لطباعة شيء ما على الشاشة
lcd.print (rtc.getDateStr ()) ؛
قم بتغيير هذه المتغيرات إذا كنت تريد ذلك
int fadeTime = 1 ؛ // كم من الوقت سوف يتلاشى الضوء إلى maxint setHour = 02 ؛ // تعيين ساعات للاستيقاظ (الوقت العسكري) int setMin = 49 ؛ // تعيين دقيقة للاستيقاظ int uled = 9 ؛ // تعيين pinout مع PWM
كود وحدة بلوتوث
String firstHalf = getValue (input، ':'، 0)؛ // تحقق من الإدخال الأول حتى ":"
String secondHalf = getValue (input، ':'، 1)؛ // تحقق من الإدخال الثاني بعد ":"
// استخدم هذا الرمز إذا كنت لا تستخدم وحدة البلوتوث
// // إذا (t.hour == setHour && t.min == setMin) // تحقق مما إذا كان وقت الاستيقاظ قد حان! // { // بداية()؛ //}
// تحقق من المدخلات المكونة من رقمين ، ثم تحقق من الرقمين الثانيين للإدخال
إذا (t.hour == firstHalf.toInt () && t.min == secondHalf.toInt ()) {start ()؛ }}
// المنطق لفصل السلاسل
سلسلة getValue (سلسلة البيانات ، فاصل الأحرف ، فهرس int) {int found = 0 ؛ int strIndex = {0، -1} ، int maxIndex = data.length () - 1 ؛
لـ (int i = 0؛ i <= maxIndex && found <= index؛ i ++) {if (data.charAt (i) ==eparator || i == maxIndex) {found ++؛ strIndex [0] = strIndex [1] + 1 ، strIndex [1] = (i == maxIndex)؟ أنا + 1: أنا ؛ }} تم العثور على الإرجاع> الفهرس؟ data.substring (strIndex [0]، strIndex [1]): ""؛ }
الخطوة الخامسة: حان وقت الاختبار
قم بتجميع التعليمات البرمجية الخاصة بك واختبر ما إذا كانت المكونات تعمل!
الخطوة 6: إعداد تطبيق Bluetooth
نظرًا لأنني وجدت أنه من المزعج البحث في الكود في كل مرة كنت أرغب في ضبط منبه ، فقد أردت إنشاء تطبيق من شأنه ضبط المنبه ، وهو أمر أسهل بكثير.
انتقل إلى https://ai2.appinventor.mit.edu حيث يمكننا إنشاء تطبيق بسيط يتيح لنا ضبط المنبه ، وقد قمت بتضمين إعداد التصميم البسيط (يمكنك دائمًا تعديل هذا لاحقًا) والرمز المستخدم لـ اتصال البلوتوث: يمكنك بعد ذلك نشر التطبيق الخاص بك والاتصال به على هاتفك باستخدام رمز الاستجابة السريعة أو تنزيل التطبيق مباشرة على جهاز الكمبيوتر الخاص بك ، ثم نقله باستخدام كابل على هاتفك. (لقطة شاشة)
الخطوة السابعة: بناء القضية
يمكنك دائمًا بناء حالة مختلفة حول ساعة اردوينو الخاصة بك. لقد استخدمت الخشب والزجاج الشبكي غير اللامع لبناء حالة المنبه الخاصة بي. لقد اخترت زجاج شبكي غير لامع حتى تتمكن من رؤية الضوء يتألق بوضوح من خلال العلبة ولكن لا يمكنك رؤية الجزء الداخلي من الساعة.
الخطوة 8: انتهى
الآن بعد أن قمت بتحميل الكود إلى اردوينو الخاص بك ، قم ببناء العلبة والتحقق مما إذا كنت قد قمت بتجميع ساعتك بشكل صحيح ، يمكنك ضبط منبه على تطبيق البلوتوث والبدء في الاستيقاظ بشكل طبيعي!:)
موصى به:
ساعة منبه ذكية: ساعة منبه ذكية مصنوعة من Raspberry Pi: 10 خطوات (مع صور)
المنبه الذكي: ساعة منبه ذكية مصنوعة من Raspberry Pi: هل سبق لك أن أردت ساعة ذكية؟ إذا كان الأمر كذلك ، فهذا هو الحل المناسب لك! لقد صنعت Smart Alarm Clock ، هذه ساعة يمكنك تغيير وقت التنبيه وفقًا لموقع الويب. عندما يرن المنبه ، سيصدر صوت (صفارة) وسيصدر مصباحان
ساعة منبه شروق الشمس (تحسين اليقظة الصباحية): 13 خطوة
ساعة منبه شروق الشمس (تحسين يقظة الصباح): حدد موعد شروق الشمس الشخصي الخاص بك ، وتحسين يقظة الصباح أحدث اختراع عشوائي ، وجدولة شروق الشمس الخاص بك! خلال النهار ، يعزز الضوء الأزرق في ضوء الشمس انتباهنا وذاكرتنا ومستويات الطاقة وأوقات رد الفعل والمزاج العام . الضوء الأزرق ق
إضاءة UCL-lloT-Outdoor-light الناتجة عن شروق الشمس / غروب الشمس: 6 خطوات
تم تشغيل ضوء UCL-lloT-Outdoor-light بواسطة شروق الشمس / غروب الشمس: مرحبًا بالجميع! مع القليل من العمل ، بعض الأجزاء والرموز التي قمت بتجميعها معًا والتي ستوضح لك من البداية إلى النهاية كيفية إنتاج هذا الضوء الخارجي بالضبط. نشأت الفكرة من والدي ، الذي اضطر خلال الصيف إلى الخروج يدويًا
ساعة منبه بإضاءة ليد شروق الشمس: 5 خطوات (مع صور)
منبه LED لشروق الشمس: هل تواجه مشكلة في الاستيقاظ في الصباح؟ هل تكره صوت المنبه القاسي؟ هل تفضل أن تصنع شيئًا بنفسك يمكنك شراؤه مقابل نقود ووقت أقل؟ ثم تحقق من هذا المنبه LED لشروق الشمس! تم تصميم منبهات الشروق من أجل
ساعة منبه شروق الشمس مع اردوينو: 9 خطوات (مع صور)
منبه شروق الشمس مع Arduino: يمكن أن يكون فصل الشتاء حزينًا. تستيقظ ، يكون الجو مظلمًا وعليك النهوض من السرير. آخر شيء تريد سماعه هو صوت المنبه الخاص بك. أعيش في لندن وأجد صعوبة في الاستيقاظ في الصباح. أيضًا ، أفتقد الاستيقاظ من أجل