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

ساعة منبه Oled: 8 خطوات (بالصور)
ساعة منبه Oled: 8 خطوات (بالصور)

فيديو: ساعة منبه Oled: 8 خطوات (بالصور)

فيديو: ساعة منبه Oled: 8 خطوات (بالصور)
فيديو: طريقه ضبط اعدادات ساعة سبورت sport ساعة شيك بسعر رخيص 2024, يوليو
Anonim
Oled المنبه
Oled المنبه

هناك الكثير من ساعات arduino / ESP32 التي تدور حولها ، لكن هل يستخدمون تلك الساعات OLED الرائعة والواضحة؟

لقد قمت بتجربة arduinos و ESP32 منذ فترة ، لكنني لم أصل إلى منتج نهائي. لقد صنعت منبهًا مع 4 شاشات OLED أحادية اللون مقاس 1.3 بوصة. تتميز الساعة أيضًا بمصباح بجانب السرير قابل للتعتيم ومنفذ شحن USB (لا أحد لديه منافذ احتياطية بجوار سريره). OLEDs قابلة للتعتيم أيضًا ، تمت إضافتها في اللحظة الأخيرة بعد أن تم تهديد مشروعي من قبل صديقتي. في حالة عدم تعتيم صوت الصديقات بما فيه الكفاية ، يمكنني أيضًا تقديم إصدار من الكود حيث يتم تشغيل 3 شاشات بين ساعات معينة. كان الهدف هو صنع ساعة سهلة الصيانة ، مع نظرة أبعد من "النموذج الأولي". أثناء صنع ساعتي ، واجهت بعض الصعوبات التي كان علي حلها ، ولهذا السبب أعتقد أن هذه التعليمات تستحق المشاركة. يمكن صنع الساعة باستخدام أدوات صغيرة ، لا أحب "ولخطوة التالية ، استخدمت دروسي التعليمية التي تبلغ قيمتها 10.000 يورو / دولار أمريكي مطحنة CNC".

بعض الأشياء التي سيتم شرحها في هذا التوجيه (الاستقبال غير القابل للتنظيم):

- كيفية استخدام / توصيل شاشة I2C OLED مع arduino / ESP32

- كيفية استخدام كائنات I2C متعددة مع Arduino / ESP32

- كيفية إنشاء قائمة "قابلة للتمرير" باستخدام برنامج تشفير دوار (+ كيفية استخدام برنامج ترميز مع ESP32 / اردوينو)

- كيفية تصميم وطلب ثنائي الفينيل متعدد الكلور مخصص باستخدام التآكل.

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

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

اللوازم

عند التسوق لشراء المستلزمات ، أحاول دائمًا تقييم أهمية الجودة / التوثيق مقابل السعر. تجهيزاتي عبارة عن مزيج من العلامات التجارية A وأجزاء صينية أرخص. تعد الفئران موردًا رائعًا إذا كانت الجودة مهمة ، فأنا أطلب من Banggood / Aliexpress للأجزاء الأرخص.

- لوحة ESP32 ، استخدمت Huzzah32 من adafruit ، ولكن هناك الكثير من الخيارات الأخرى (الأرخص). اخترت Huzzah32 لأنه موثق جيدًا.

- شاشات عرض I2C OLED مقاس 4 بوصة مقاس 1.3 بوصة (128 × 64 ، مع برنامج تشغيل SH1106) ، والشاشات مقاس 0.96 بوصة أكثر شيوعًا ولكن بالنسبة لهذا المشروع ، أفضل الشاشات مقاس 1.3 بوصة

- سائق سباركفن femtobuck لقيادة الصمام

- ساعة RTC ، لقد استخدمت واحدة بها خلية ليثيوم

- اردوينو نانو

- منفذ أنثى USB 2.0 (استخدمت: SS-52200-002 من Stewart Connector)

- مقبس أنثى DC (استخدمت: L722A من Switchcraft)

- محول 12V 3A DC (GST36E12-P1J من Mean Well)

- PCB مخصص ، اختياري ولكن هذا يجعل المشروع أكثر إحكاما ويمكن صيانته بسهولة إذا مات جزء + مزيد من الموثوقية لأن أسلاك أقل (jlcpcb.com)

- مسامير ومسامير M3

- حشوات نحاسية M3

- وحدة تنحى بجهد 12 فولت إلى 5 فولت من Pololu (DF24V22F5)

- 3 واط مزود بمبدد حرارة

- أسلاك توصيل

- الجرس

- معدد I2C (TCA9548A من adafruit)

- عدد 2 من مشفرات الروتاري (لقد جربت بعضًا منها ، وليس جميعها تعمل مع الكود الخاص بي. يعمل المشفر من "DFrobot" وكذلك الذي يعمل مع PCB المستدير من "DIYmore". يبدو أن الكود الخاص بي لا يعمل مع زر الضغط من النوع KY-040. يستخدم المنبه الخاص بي ساعة منبه DIYmore لأنها سهلة التركيب على اللوحة (لا حاجة إلى براغي / ثقوب إضافية).

- تشكيلة من السيدات (اختياري)

- خشب للإطار: 18mmx18mmx2400mm

- ورق الإستشفاف

لقد استخدمت بعض الأدوات (مكواة اللحام ، اليد الثالثة ، المنشار …) أيضًا ، لكن لا شيء غريب حقًا.

الخطوة 1: استخدام ملف Oled

باستخدام Oled
باستخدام Oled
باستخدام Oled
باستخدام Oled
باستخدام Oled
باستخدام Oled

لاستخدام OLEDs ، عليك تثبيت مكتبة. أنا أستخدم U8G2lib من Oli Kraus ، فهو مفهوم للغاية ويحتوي على دليل مرجعي به أمثلة واضحة.

لتوصيل اللوح الخاص بك (ESP أو arduino) ، يجب عليك العثور على دبابيس SDA و SCL. هذه المسامير هي دبابيس اتصال I2C. Google لـ "pinout" للوحة الخاصة بك إذا لم تتمكن من العثور عليها.

لقد أضفت بعض الأمثلة على التعليمات البرمجية. يعمل الكود مع كل من اردوينو و ESP32 ، ولكن من غير المرجح أن ينفد ESP32 من الذاكرة. تعمل جميع oleds التي جربتها حتى الآن مع كل من 3.3 فولت (ESP32) و 5 فولت.

الخطوة 2: OLEDs متعددة

OLEDs متعددة
OLEDs متعددة

هذا هو المكان الذي يبدأ فيه مشروعي في الاختلاف عن الكثير من الساعات المنبهة الأخرى. تحتوي معظم أجهزة arduinos / ESP على دبابيس I2C واحدة أو اثنتين فقط. يحد هذا النوع من استخدام أجزاء I2C. ماذا لو كان لدي 4 مستشعرات I2C وأريد عرض قراءاتهم على شاشة I2C؟ أدخل المضاعف. يتيح لك الموليبليكسير معالجة 7 أجزاء مختلفة من I2C. هذا يسمح لـ ESP32 الخاص بي باستخدام ساعة الوقت الحقيقي I2C ، وعرض الوقت باستخدام I2C مرة أخرى عبر 4 شاشات (أو أكثر ، لا تدعني أوقفك).

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

الخطوة 3: إنشاء قائمة قابلة للتمرير باستخدام جهاز تشفير دوار

إنشاء قائمة قابلة للتمرير باستخدام جهاز تشفير دوار
إنشاء قائمة قابلة للتمرير باستخدام جهاز تشفير دوار
إنشاء قائمة قابلة للتمرير باستخدام جهاز تشفير دوار
إنشاء قائمة قابلة للتمرير باستخدام جهاز تشفير دوار
إنشاء قائمة قابلة للتمرير باستخدام جهاز تشفير دوار
إنشاء قائمة قابلة للتمرير باستخدام جهاز تشفير دوار

أول الأشياء أولاً ، اختبر برامج التشفير. لقد أضفت بعض التعليمات البرمجية لاختبار وحدات التشفير الخاصة بك. كما هو مذكور في المستلزمات: لقد اختبرت الكود الخاص بي بنجاح فقط باستخدام وحدات التشفير الدوارة من روبوت DF والوحدة مع PCB المستدير من DIYmore. انظر الصور أعلاه لبرامج التشفير الصحيحة.

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

نأمل أن يساعد ملف PDF الذي أضفته في بنية القائمة التي استخدمتها لساعتي.

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

الخطوة 4: وضع الكود السابق معًا

وضع الكود السابق معًا
وضع الكود السابق معًا

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

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

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

الخطوة 5: مخصص ثنائي الفينيل متعدد الكلور مع فريتزنغ + تخطيطي

ثنائي الفينيل متعدد الكلور مخصص مع فريتزينج + تخطيطي
ثنائي الفينيل متعدد الكلور مخصص مع فريتزينج + تخطيطي
ثنائي الفينيل متعدد الكلور مخصص مع فريتزينج + تخطيطي
ثنائي الفينيل متعدد الكلور مخصص مع فريتزينج + تخطيطي
ثنائي الفينيل متعدد الكلور مخصص مع فريتزينج + تخطيطي
ثنائي الفينيل متعدد الكلور مخصص مع فريتزينج + تخطيطي

نقطة الاهتمام: يشير Adafruit إلى أنه بينما يمكنك تشغيل huzzah32 عبر دبوس USB ، يجب أن تكون حريصًا على عدم استخدام مدخل طاقة USB الصغير في نفس الوقت. يتم تشغيل ثنائي الفينيل متعدد الكلور الخاص بي عبر باك التنحي ، والذي يقوم بعد ذلك بتشغيل الهزة عبر دبوس USB. لذلك دائما افصل الطاقة الخارجية / قم بإزالة الحوزة من اللوحة عند الرفع.

قررت لحام الرؤوس الأنثوية على PCB لأنه يسهل تبديل جزء ، أو إضافة مستشعر I2C إضافي على سبيل المثال. يتيح لي هذا أيضًا إزالة nano أو ESP32 بسهولة لتحميل البرامج.

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

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

لإنشاء ثنائي الفينيل متعدد الكلور الفعلي ، يجب عليك تصديره كملف جربر. قبل القيام بذلك ، تحت علامة التبويب "التوجيه" ، يمكنك التحقق من قواعد التصميم. إذا تحقق كل شيء ، يمكنك النقر فوق "تصدير لثنائي الفينيل متعدد الكلور". سيطلب معظم المصنّعين ملف جربر ، لذا حدد تصدير إلى جربر.

لقد طلبت PCB الخاص بي من JLCPCB ، أحب أن يقتبسوا لك السعر على الفور. هناك بالطبع العديد من الخيارات الأخرى.

حول التخطيطي: هناك 2 الفولتية المستخدمة. يتم تشغيل LED و femtobuck مباشرة بواسطة مزود 12V. يتم تشغيل الباقي عبر باك التنحي بجهد 5 فولت.

الخطوة السادسة: التصميم + الليزر

تصميم + Lasercutter
تصميم + Lasercutter
تصميم + Lasercutter
تصميم + Lasercutter

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

لقد وجدت خدمة lasercut عبر الإنترنت ، snijlab.nl ، متاحة للهواة الموجودين في روتردام (يشحنون إلى بلجيكا وهولندا وألمانيا). على موقع الويب الخاص بهم ، يمكنك تحميل الرسومات الخاصة بك ويقومون بتحديد السعر الخاص بك على الفور. لقد استخدمت Autocad ، وهو ما لدي في العمل ، لكن البرنامج لا يهم حقًا. يجب أن يكون مجرد رسم متجه (Vectr ، Illustrator ، Inkscape …). تستخدم معظم المتاجر الألوان لتحديد ما إذا كنت تريد القص أو النقش.

بعض الأشياء التي يجب وضعها في الاعتبار:

- الأعلى. أبعاد آلة الليزر (رسمت إطارًا حول أجزائي)

- مين. المسافة بين الجروح

- تأكد من عدم رسم أي خطوط مزدوجة ، فسيقوم الليزر بتمرير إضافي ، مما يكلفك المزيد.

- عند التخطيط لملف PDF ، تأكد من الرسم 1: 1. أنت لا تريد تصغير حجم الورق أو ملاءمته.

الخطوة 7: التجميع

المجسم
المجسم
المجسم
المجسم
المجسم
المجسم

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

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

الخطوة 8: لا تتوقف هنا

لا تتوقف هنا
لا تتوقف هنا
لا تتوقف هنا
لا تتوقف هنا
لا تتوقف هنا
لا تتوقف هنا

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

اسمحوا لي أن أعرف ما الذي قمت بتغييره ، وما الذي ستغيره ، وما الذي يجب أن أغيره …

موصى به: