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

ساعة Space Invaders (على الميزانية!): 6 خطوات (بالصور)
ساعة Space Invaders (على الميزانية!): 6 خطوات (بالصور)

فيديو: ساعة Space Invaders (على الميزانية!): 6 خطوات (بالصور)

فيديو: ساعة Space Invaders (على الميزانية!): 6 خطوات (بالصور)
فيديو: Eyebrow shading workshop from Ambassador Zarina Khaitova. 2024, يوليو
Anonim
Image
Image
اجمع الأجزاء
اجمع الأجزاء

لقد رأيت مؤخرًا تصميمًا رائعًا بواسطة GeckoDiode وأردت على الفور بناءه بنفسي. إن Instructable هي Space Invaders Desktop Clock وأنا أوصيك بإلقاء نظرة عليها بعد قراءة هذا.

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

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

إذا كنت تستمتع بالنظر إلى الساعات الغريبة ، فتحقق من ساعة Steampunk Voltmeter الخاصة بي ، والتي تستخدم نفس مواد البناء للحاوية:-)

الخطوة 1: اجمع الأجزاء

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

الأدوات (أفترض أنك ستحصل عليها بالفعل)

  • لحام حديد
  • جندى
  • مضخة اللحام (إذا ارتكبت خطأ وتحتاج إلى إزالة اللحام)
  • مسدس الغراء الساخن
  • عصي الغراء الساخنة
  • سكين الحرف (الملقب بسكين ستانلي)
  • المسطرة / شريط القياس / الورنية الفرجار
  • مثقاب لاسلكي + لقم الثقب (1 مم إلى 13 مم)
  • أداة دوارة متعددة مع قرص القطع (المعروف أيضًا باسم Dremel)
  • سائل التنظيف مثل كحول الأيزوبروبيل (تعمل مستحضرات ما بعد الحلاقة الرخيصة أيضًا)
  • قناع الأمان (يستخدم عند الطلاء بالرش)

الإلكترونيات (تكلفة الإلكترونيات = 13.05 جنيه إسترليني)

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

  • كبلات Dupont / Jumper - 0.99 جنيه إسترليني
  • وحدة ساعة الوقت الفعلي DS1307 - 0.99 جنيه إسترليني (أوصي بالحصول على DS3231 بدلاً من ذلك حيثما كان ذلك متاحًا)
  • كابل Arduino nano + USB - 2.23 جنيه إسترليني
  • 8 مكبر صوت أوم مايلر - 0.99 جنيه إسترليني
  • زر الضغط اللحظي SPST - 1.49 جنيه إسترليني
  • مقبس برميل DC 5.5 مم - 1.26 جنيه إسترليني
  • مصدر طاقة بجهد 5 فولت ، 0.5 أمبير - 2.83 جنيه إسترليني
  • شاشة مصفوفة نقطية MAX7219 - 3.76 جنيه إسترليني

الضميمة (تكلفة مواد العلبة = 17.19 جنيهًا إسترلينيًا)

  • أنبوب تصريف مربع 60 مم - 5.99 جنيه إسترليني (سيكون لديك الكثير من هذا المتبقي لمزيد من المشاريع)
  • طلاء بخاخ أسود - 4.85 جنيه إسترليني
  • PVC الأسود (لوح الرغوة) - 2.99 جنيه إسترليني
  • الغراء الفائق - 0.99 جنيه إسترليني
  • 60 مم - 2.37 جنيه إسترليني

التكلفة الإجمالية = 30.24 جنيهًا إسترلينيًا:-) …….. اعتبارًا من اليوم ، هذا يعادل 38 دولارًا أمريكيًا لأي قارئ دولي.

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

الخطوة 2: تحضير أنبوب التصريف

جهزك لتصريف الأنابيب
جهزك لتصريف الأنابيب

حدد المكان الذي تريد وضع الأشياء فيه

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

قطع مدي

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

ترسم كل شيء

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

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

الخطوة 3: برمجة Arduino

برمجة اردوينو
برمجة اردوينو

بعض المعلومات حول الكود

الائتمان لـ GeckoDiode لأنني أخذت الكود الخاص به وقمت بتعديله للعمل مع MAX7219 Chip. يستخدم إصدار Adafruit ناقل I2C ويستخدم MAX ناقل SPI. لهذا استخدمت مكتبة MaxMatrix ، التي قمت بتنزيلها وتثبيتها في Arduino IDE. إذا كنت ترغب في معرفة المزيد حول MaxMatrix وكيف تعمل مصفوفة LED بشكل أساسي ، فهناك برنامج تعليمي قصير جدًا على HowToMechatronics.com. تتكون مصفوفة LED فقط من لون واحد من مصابيح LED بدلاً من وجود شاشة متعددة الألوان.

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

"الوحدات النمطية int = 4 ؛"

هذا هو عدد وحدات 8 × 8 التي قمت بربطها معًا في شاشتك. ليس عدد مؤشرات LED أو رقم التعريف الشخصي الذي تستخدمه لبيانات الإرسال. الشيء التالي الذي يجب تذكره هو أنه إذا كان "sprite" أو أي شيء يغطي جميع المصفوفات الأربع ، فيجب تعريف مصفوفة البايت على النحو التالي:

"بايت text_start_bmp = {32 ، 8 ، … * بعض بيانات البايت * …} ؛"

تشير الأرقام إلى مقدار الصفوف والأعمدة في المصفوفة. في هذه المناسبة ، يتم عرض البايت المسمى "text_start_bmp" على 32 عمودًا و 8 صفوف. يتم عرض الأرقام فقط في مصفوفة واحدة 8x8 لذا فإن الرقم الدقيق 10 يبدو كالتالي:

"بايت minutes_ten_bmp = {8 ، 8 ، … * بعض بيانات البايت * …} ؛"

يغطي الغزاة مصفوفتين لذلك سيتم إعطاء البايت 16 ، 8 في بيانات البايت.

الشيء الآخر الذي لفت انتباهي هو تحديد موضع بيانات الكائن. يمكنك أن تطلب من Arduino عرض الكائن في موضع X / Y مختلف على المصفوفة من موضع المنزل الافتراضي. يبدو الرمز هكذا للدقيقة صفر:

"matrix.writeSprite (8، 0، minutes_zero_bmp) ؛"

رقم واحد هو تعديل X والآخر هو Y. لا يمكنك تذكر أيهما هو الآن ، ولكن إذا كنت تريد دفع الكائن لأعلى أو لأسفل بمقدار صف أو عمود واحد ، فإنك ببساطة تزيد الرقم موجبًا أو سالبًا. بسيطة بما يكفي لمصفوفة 8x8 ولكن عندما يغطي الكائن الخاص بك أكثر من مصفوفة واحدة ، يجب عليك تعيين موضع المنزل وفقًا لذلك. يظهر كائن "POP" أدناه:

"matrix.writeSprite (16، 0، invader_pop_bmp)؛"

لاحظ الآن كيف أن موقع المنزل هو 16 وليس 8؟ يشير الرمز هنا إلى أن الكائن يتم عرضه من اليسار إلى اليمين من صف / عمود الموضع 16. يعتبر أن شاشتين مقاس 8 × 8 عبارة عن شاشة عرض واحدة مقاس 16 × 8 على الرغم من وجود 4! لذلك من المهم التفكير في عدد شاشات العرض التي سيتم عرضها عبر الكائن وتحديد حجم مصفوفة بايت كل كائن وفقًا لذلك. وإلا سيكون لديك بعض النقوش المتحركة المثيرة للاهتمام!

DS1307 RTC

على الرغم من أن DS1307 يعمل بشكل جيد مع مكتبة Adafruit RTClib.h ، لا يمكنك ضبط الوقت يدويًا وهو مجرد ألم. لقد ذهبت مع هذا لأنه كان يعني تغيير رمز أقل. يضبط DS1307 الوقت باستخدام الوقت والتاريخ الذي تم فيه تجميع الكود من وقت جهاز الكمبيوتر الخاص بك. بدلاً من ذلك ، تعلم كيفية استخدام مكتبة DS3231 وتعيينها مرة واحدة لمدة دقيقة أو دقيقتين في المستقبل. كما أن لديها "انجراف" أقل ، لذا فهي تحافظ على الوقت بشكل أفضل بمرور الوقت. تستخدم كلتا الوحدتين ناقل I2C وأعتقد أنه يمكن استخدام DS3231 مع RTClib.h إذا كنت مهتمًا بمواصلة استخدامه.

قم بتحميل الكود

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

الخطوة 4: تجميع الإلكترونيات

تجميع الإلكترونيات
تجميع الإلكترونيات

أثناء تحميل الكود ، أوصي بتجميع الأجهزة الإلكترونية بأسلاك dupont / jumper على لوحة التجارب أولاً ، لذلك عند تحميل الكود ، ستعرف أن كل شيء يعمل على النحو المنشود. يتيح لك ذلك تسوية أي مشكلات تتعلق بعرض النقوش المتحركة وما إلى ذلك قبل البدء في اللصق والالتصاق. في الكود الخاص بي ، يمكنك أن ترى أنني أستخدم دبابيس رقمية 4 ، 5 ، 6 ، 7 ، 9 ، لكن يمكنك تغييرها إذا لزم الأمر. قد تحتاج إلى لحام الكابلات على الزر ، ومقبس التيار المباشر ، ومكبر الصوت ، لكن يجب أن تكون الغالبية من الموصلات سهلة الدفع.

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

لقد جعلت زر الضغط يعمل عندما يكون دبوس "mainButton" منخفضًا. لقد وجدت أن Arduino كان يتعرف على زر الضغط الخاطئ الذي تم الضغط عليه عند استقرار الإلكترونيات العائمة عليه. أدى استخدام المقاوم 10K المنسدلة على زر الضغط وضبط الدبوس على "INPUT_PULLUP" إلى حل هذه المشكلة بالنسبة لي.

مرفق هو التخطيطي في PDF و-p.webp

الخطوة 5: قم بتركيب الإلكترونيات والتقريب

قم بتركيب الإلكترونيات و Close Up
قم بتركيب الإلكترونيات و Close Up
قم بتركيب الإلكترونيات و Close Up
قم بتركيب الإلكترونيات و Close Up

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

الخطوة 6: استمتع

يتمتع
يتمتع
يتمتع
يتمتع

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

موصى به: