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

مرآة سهلة اللانهاية مع Arduino Gemma و NeoPixels: 8 خطوات (بالصور)
مرآة سهلة اللانهاية مع Arduino Gemma و NeoPixels: 8 خطوات (بالصور)

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

فيديو: مرآة سهلة اللانهاية مع Arduino Gemma و NeoPixels: 8 خطوات (بالصور)
فيديو: Using Micro SD Card and Data logging with Arduino | Arduino Step by Step Course Lesson 106 2024, شهر نوفمبر
Anonim
مرآة سهلة اللانهاية مع اردوينو جيما ونيوبكسلز
مرآة سهلة اللانهاية مع اردوينو جيما ونيوبكسلز

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

شاهد ندوة عبر الإنترنت عن هذا المشروع! تحقق من هذا البرنامج التعليمي على الويب الذي قدمته في 28 حزيران (يونيو) 2017 لرؤيتي أكمل هذا البناء!

لمواكبة ما أعمل عليه ، تابعوني على YouTube و Instagram و Twitter و Pinterest واشترك في رسالتي الإخبارية.

الخطوة 1: المستلزمات

اللوازم
اللوازم

لمتابعة هذا الدرس ، ستحتاج إلى:

  • سكين حاد
  • مسطرة معدنية أو T-square
  • قطع حصيرة أو خردة الكرتون
  • طابعة لقالب أو بوصلة رسم دائرة
  • سكين تسجيل بلاستيكي (اختياري ولكنه لطيف)
  • مسدس الغراء الذائب الساخن ، أو لاصق الحرف E6000 / Quick Hold
  • مشبك الغسيل (اختياري ، لاستخدامه كمشبك غراء)
  • مرآة مستديرة مقاس 4 بوصات
  • مرآة بلاستيكية شفافة
  • لوح فوم أسود ، سمك 3/16 بوصة
  • Arduino Uno ولوح توصيل غير ملحوم على لوحة التركيب
  • كابل USB A-B
  • زر ضغط صغير (الذي قمت بلحامه سابقًا)
  • أسلاك اللوح
  • شريط RGBW NeoPixel (أو شريط WS2812b RGBW LED آخر) (19 بكسل ، يستخدم نفس الشريط الذي قمت بلحامه سابقًا)
  • لحام الحديد ولحام
  • قواطع الأسلاك
  • قواطع قطرية دافق
  • أداة اليد الثالثة
  • المتر (اختياري)
  • كماشة إبرة صغيرة
  • ملاقيط
  • لوحة جيما اردوينو
  • كابل Micro USB
  • محور USB ، إذا كان جهاز الكمبيوتر الخاص بك يحتوي على منافذ USB 3 فقط (مثل أجهزة Mac الأحدث)
  • كابل تمديد USB (اختياري)
  • محول طاقة USB
  • بطارية وشاحن ليبولي (اختياري)

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

صورة
صورة

Arduino Gemma - يصغر مشروع المرآة اللانهائية دائرة Arduino عن طريق استبدال Arduino Uno بـ Arduino Gemma. Gemma عبارة عن لوحة صغيرة مبنية حول متحكم ATTiny85 ، والذي يحتوي على ذاكرة أقل وميزات أقل من Uno Atmega328 ، ولكنه أيضًا أصغر وأقل تكلفة. من السهل جدًا لحام الوسادات الكبيرة (وخياطتها بخيط موصل ، لكن هذا موضوع لفئة مختلفة). يستخدم Gemma كبل USB صغيرًا للاتصال بجهاز الكمبيوتر الخاص بك ، ويحتوي على منفذ JST لتوصيل البطارية. ستتعلم كيفية برمجة Gemma من برنامج Arduino وإدراجه في المشروع النهائي. يمكنك أيضًا استخدام Adafruit Gemma بدلاً من ذلك ، لكنك ستحتاج إلى تنفيذ خطوة إضافية لتهيئة برنامج Arduino.

صورة
صورة

شريط RGBW NeoPixel - يحتوي هذا الشريط القابل للعنونة رقميًا على شرائح WS2812b تتحكم في مصابيح LED المركبة باللون الأحمر والأخضر والأزرق والأبيض. NeoPixel هو اسم العلامة التجارية Adafruit ولكن يمكنك أيضًا العثور على هذا الشريط من خلال البحث عن "WS2812b RGBW strip" على موقع المورد المفضل لديك. لن يعمل رمز العينة المقدم في هذه الفئة مع شريط RGB (بدون أبيض) أو شريط LED تناظري أو مع أي نوع آخر من شرائح التحكم الرقمي (مثل APA104 المعروف أيضًا باسم DotStar)

الخطوة 2: قص قطع الإطار

قطع الإطار
قطع الإطار

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

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

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

صورة
صورة
صورة
صورة

من السهل حقًا رسم الأشكال يدويًا ، رغم ذلك ، أعدك! أولاً ، ارسم دائرة لمطابقة حجم المرآة عن طريق ضبط البوصلة على نصف قطرها (4 "مرآة = 2" دائرة نصف قطرها) ورسم دائرة على الرغوة لا تقل عن 5 بوصات من كل حافة. بالتأكيد ، يمكنك فقط تتبع محيط المرآة ، ولكن بعد ذلك سيتعين عليك العثور على المركز وتحديده! تقوم البوصلة بعمل مسافة بادئة عند نقطة المركز وهذا مفيد لعمل الدائرة الثانية متحدة المركز.

صورة
صورة
صورة
صورة

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

صورة
صورة
صورة
صورة

يجب أن تكون القطعة العلوية / الأمامية أكبر قليلاً ، لذا وسع البوصلة إلى 4 3/16 واسحبها على مسافة آمنة من القطعة السفلية.

صورة
صورة
صورة
صورة

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

صورة
صورة

ضع علامة على هذه القطعة داخل الدائرة الأصغر ، والتي سيتم قطعها في لحظات قليلة.

صورة
صورة
صورة
صورة

على طول جانب واحد طويل من الرغوة ، قم بتمييز وقطع شريط بعرض 1/2 بوصة والآخر بعرض 1 بوصة.

صورة
صورة

سيعانق الشريط الضيق المرآة ويدعم شريط NeoPixel الخاص بك ، بينما سيشكل الشريط الأوسع الجدار الخارجي للإطار الدائري.

صورة
صورة
صورة
صورة

في قطع الدوائر! بعض البراعة والصبر مفيدان هنا. أحب استخدام سكين حرفية أصغر لقطع الدوائر لأنني أشعر أن لدي المزيد من التحكم. السكين الخاص الذي أستخدمه هنا يأخذ شفرات X-acto العادية ، ووجدتها في ممر سكرابوكينغ.

أولاً ، اسحب السكين برفق حول محيط القطعة السفلية بالكامل ، وثقب الطبقة العليا من الورق فقط. أثناء هذا التمرير ، يمكنك تحديد زاوية الشفرة ، ولكنها أكثر راحة وتنتج الشكل الأكثر دقة.

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

صورة
صورة
صورة
صورة

بعد ذلك ، اقطع القطعة العلوية ، ثم اقطع الدائرة الداخلية. تُرى هذه القطعة أكثر من أي قطعة أخرى ، لذا قم بتنظيفها قليلاً لتقويم أي حواف غير مستوية.

صورة
صورة
صورة
صورة

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

صورة
صورة
صورة
صورة

تحتاج قطعة الإطار الخارجي إلى وضعها بشكل أفضل للخارج ، لذلك سنقوم بعمل قطع متقاطعة بنمط مختلف قليلاً. قم بالتحضير الأول لمفصل اللفة عن طريق تسجيل خط 3/16 من الحافة. قم بعمل قطع عرضية لطيفة على طول الشريط ، بالتناوب بين المقاطع السميكة والرقيقة حوالي 3/8 بوصة و 1/8 بوصة ، على التوالي.

صورة
صورة

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

صورة
صورة

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

صورة
صورة
صورة
صورة

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

الخطوة 3: تجميع الإطار

تجميع الإطار
تجميع الإطار
تجميع الإطار
تجميع الإطار

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

صورة
صورة
صورة
صورة

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

صورة
صورة
صورة
صورة

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

صورة
صورة
صورة
صورة

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

صورة
صورة
صورة
صورة

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

صورة
صورة

تمتع بالانعكاسية المزدوجة عن طريق توصيل شريط NeoPixel بلوحة Arduino الخاصة بك وتشغيل نموذج كود NeoPixel الموضح في درس Arduino Class الخاص بي حول هذا الموضوع.

الخطوة 4: مخطط الدائرة والرمز الكاذب

مخطط الدائرة & Pseudocode
مخطط الدائرة & Pseudocode

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

الاتصالات كالتالي:

NeoPixel 5V -> Arduino 5V

NeoPixel GND -> Arduino GND

NeoPixel Din (إدخال البيانات) -> منفذ إدخال / إخراج رقمي من Arduino (قابل للتكوين)

جانب واحد من مفتاح الضغط اللحظي -> دبوس الإدخال / الإخراج الرقمي من Arduino (قابل للتكوين)

الجانب الآخر من زر التبديل اللحظي -> Arduino GND

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

المتغيرات: رقم تعريف NeoPixel ، رقم دبوس الزر ، عدد مصابيح LED الموجودة ، مدى سطوع مصابيح LED

مهام لمرة واحدة: تهيئة دبوس الزر كمدخل بمقاوم سحب داخلي ، وتهيئة شريط NeoPixel ، ووصف الرسوم المتحركة LED

مهام التكرار: تحقق لمعرفة ما إذا تم الضغط على الزر وإذا كان قد تم الضغط عليه ، فانتقل إلى رسم متحرك LED مختلف

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

الخطوة 5: نموذج اللوح

نموذج اللوح
نموذج اللوح

احصل على بطاقة Arduino ولوح التجارب وتأكد من فصل سلك USB. هل لا يزال جهاز NeoPixels الخاص بك موصلاً من قبل؟ رائعة! إذا لم يكن الأمر كذلك ، فقم بتوصيلهم: 5 فولت إلى سكة الطاقة ، ودين إلى دبوس Arduino 6 ، و GND بالسكك الحديدية الأرضية.

ثم أضف زرًا مؤقتًا إلى لوح التجارب ، متداخلاً مع خط التقسيم المركزي. قم بتوصيل ساق واحدة بالسكة الأرضية ، والساق المجاورة لها بـ Arduino pin 2. قم بتنزيل الكود الخاص بهذا المشروع مباشرة أو في وحدة Autodesk Circuits أعلاه ، انقر فوق الزر "Code Editor" ، ثم "Download Code" وافتح الملف في Arduino ، أو انسخ الكود والصقه في رسم اردوينو جديد فارغ.

صورة
صورة

قم بتوصيل كابل USB الخاص بك وقم بتحميل الكود على لوحة Arduino الخاصة بك. اضغط الزر؛ يجب أن يطلق رسمًا متحركًا جديدًا ليتم تشغيله عبر NeoPixels. تعد سكة 5V كافية لهذه البكسلات القليلة في سطوع محدود ، ولكن بالنسبة للمشاريع المستقبلية التي تحتوي على المزيد من مصابيح LED ، ستحتاج إلى مصدر طاقة منفصل ، كما تمت مناقشته في درس المهارات في فئة مقدمة Arduino الخاصة بي.

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

دعنا نفحص الكود بمزيد من التفصيل:

#define BUTTON_PIN 2 // Digital IO pin متصل بالزر. هذا سيكون

// مدفوعة بمقاوم سحب لذا يجب على المفتاح // سحب الدبوس إلى الأرض للحظات. على ارتفاع -> منخفض // انتقال ، سيتم تنفيذ منطق الضغط على الزر. #define PIXEL_PIN 6 // Digital IO pin متصل بـ NeoPixels. #define PIXEL_COUNT 19 #define BRIGHTNESS 100 // 0-255 // Parameter 1 = عدد البكسل في الشريط // المعلمة 2 = رقم التعريف الشخصي (معظمها صالح) // المعلمة 3 = أعلام نوع البكسل ، أضف معًا حسب الحاجة: / / NEO_RGB Pixels سلكية لـ RGB bitstream // NEO_GRB Pixels سلكية لـ GRB bitstream ، صحيح إذا تم تبديل الألوان عند الاختبار // NEO_RGBW Pixels موصلة بسلك RGBW bitstream // NEO_KHZ400 400 KHz bitstream (مثل FLORA pixels) // NEO_KHZ800 800 KHz bitstream (مثل شريط LED عالي الكثافة) ، صحيح لشريط neopixel Adafruit_NeoPixel = Adafruit_NeoPixel (PIXEL_COUNT ، PIXEL_PIN ، NEO_GRBW + NEO_KHZ800) ؛ منطقية oldState = عالية ؛ نوع int showType = 0 ؛

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

الإعداد باطل() {

pinMode (BUTTON_PIN ، INPUT_PULLUP) ، strip.setBrightness (سطوع) ؛ strip.begin () ، عرض الشريط()؛ // تهيئة كل وحدات البكسل على "إيقاف"} تقوم وظيفة الإعداد بتعيين الدبوس 2 إلى إدخال مع تنشيط المقاوم الداخلي للسحب ، وتعيين السطوع العام لوحدات البكسل ، وبدء اتصال بيانات البكسل.

حلقة فارغة() {

// احصل على حالة الزر الحالية. منطقي newState = digitalRead (BUTTON_PIN) ، // تحقق مما إذا كانت الحالة قد تغيرت من عالية إلى منخفضة (الضغط على الزر). if (newState == LOW && oldState == HIGH) {// زر تأخير قصير للإنزال. تأخير (20) ؛ // تحقق مما إذا كان الزر لا يزال منخفضًا بعد السداد. newState = digitalRead (BUTTON_PIN) ، إذا (newState == LOW) {showType ++ ؛ إذا (showType> 6) showType = 0 ؛ startShow (showType) ؛ }} // تعيين حالة الزر الأخير إلى الحالة القديمة. oldState = newState ؛ }

تقوم وظيفة الحلقة أولاً بفحص الحالة الحالية للزر وتخزينها في متغير منطقي (يمكن أن تكون إحدى حالتين: مرتفع أو منخفض). ثم يقوم بالتحقق والتحقق مرة أخرى لمعرفة ما إذا كانت هذه الحالة تنتقل من HIGH إلى LOW. إذا حدث ذلك ، فسيتم زيادة showType بمقدار واحد ، ويتم استدعاء وظيفة startShow ، مع تمرير showType الحالي إليها كوسيطة (يتم تقييد showType إلى 0-6). يتم تحديث المتغير oldState ليعكس حالة الزر الأخير.

بدء باطل (int i) {

التبديل (i) {الحالة 0: colorWipe (strip. Color (0 ، 0 ، 0) ، 50) ؛ // أسود / كسر ؛ الحالة 1: مسح اللون (شريط اللون (255 ، 0 ، 0) ، 50) ؛ // استراحة حمراء ؛ الحالة 2: مسح اللون (شريط اللون (0 ، 255 ، 0) ، 50) ؛ // فاصل أخضر ؛ الحالة 3: مسح اللون (شريط اللون (0 ، 0 ، 255) ، 50) ؛ // استراحة زرقاء ؛ الحالة 4: نبض أبيض (5) ؛ استراحة؛ الحالة 5: قوس قزحFade2White (3 ، 3 ، 1) ؛ استراحة؛ الحالة 6: fullWhite () ؛ استراحة؛ }}

تحتوي وظيفة startShow على تعليمة switch / case ، وهي مجرد طريقة سريعة رائعة لتكديس مجموعة من عبارات if / else. حالة التبديل تقارن المتغير i بقيم كل حالة ، ثم تقوم بتشغيل الكود في تلك العبارة. الكلمة

استراحة؛

يخرج من بيان التبديل / الحالة. يُستخدم هذا المفتاح / الحالة لاستدعاء وظائف الرسوم المتحركة المختلفة في كل مرة تضغط فيها على الزر.

صورة
صورة

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

أولاً ، قم بتغيير متغير دبوس NeoPixel من 6 إلى 1 في التعليمات البرمجية الخاصة بك:

#define PIXEL_PIN 1 // Digital IO pin متصل بـ NeoPixels.

قم بتوصيل Arduino Gemma بجهاز الكمبيوتر الخاص بك باستخدام كابل USB ، وحدد "Arduino Gemma" كنوع لوحتك في قائمة أدوات Arduino.

صورة
صورة

لا تدعم الوظائف المحدودة للميكروكونترولر ATTiny85 الموجود على اللوحة منفذًا تسلسليًا بنفس طريقة Uno ، لذلك لن تضطر إلى تحديد أي شيء من قائمة Port. ومع ذلك ، تأكد من تحديد "Arduino Gemma" ضمن عنصر قائمة Programmer.

صورة
صورة

تحتاج اللوحة إلى القليل من المساعدة لمعرفة متى تحاول برمجتها ، لذا اضغط على زر إعادة الضبط على اللوحة ، وبينما ينبض مؤشر LED الأحمر ، اضغط على زر التحميل لتحميل الرسم على Gemma. إذا لم ينبض مؤشر LED الأحمر عند الضغط على زر إعادة الضبط ، فقد يكون كبل USB مزودًا بالطاقة فقط ، ويجب استبداله بكابل USB مزود بتوصيلات الطاقة والبيانات. سبب آخر قد لا ينبض به مؤشر LED الخاص بك هو إذا كنت تستخدم منفذ USB 3 (جميع أجهزة Mac الأحدث) ، والتي تواجه مشكلة في التعرف على محمل إقلاع Gemma. استخدم منفذ USB 2 على جهاز الكمبيوتر الخاص بك أو موزع USB بين الكمبيوتر وجيما.

الخطوة 7: دائرة اللحام

صورة
صورة
صورة
صورة

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

صورة
صورة
صورة
صورة

تجعل فتحات Gemma الكبيرة من السهل تجميع هذه الدائرة بدون أجزاء إضافية - فقط قم بربط الأسلاك المعلبة عبر الثقوب ولف الفائض حول وسادة اللحام. الاتصالات كالتالي:

  • NeoPixel 5V -> جيما فوت
  • NeoPixel Din -> Gemma 1 ~ (رقم التعريف الشخصي 1)
  • NeoPixel GND -> جانب واحد من زر الضغط -> Gemma GND
  • الجانب الآخر من زر الضغط -> Gemma 2 (الدبوس الرقمي 2)

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

صورة
صورة
صورة
صورة

الصق Gemma الخاص بك بالغراء في مكانه بحيث يكون منفذ USB مواجهًا لحافة الدائرة.

صورة
صورة
صورة
صورة
صورة
صورة
صورة
صورة
صورة
صورة

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

الخطوة 8: استخدمها

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

صورة
صورة

يمكنك تشغيل هذا المشروع بسهولة باستخدام بطارية داخلية بدلاً من توصيل كابل USB. سيحدد الاتجاه الذي تلصق به Gemma الوصول إلى منفذ البطارية ، لذلك قد ترغب في إعادة لصقها بزاوية مختلفة. 19 RGBW بكسل مرة 80ma كحد أقصى للسحب الحالي (بالإضافة إلى 10ma لـ Gemma) يساوي 1530ma ، مما يعني أننا نحتاج من الناحية الفنية إلى بطارية بها على الأقل هذا العدد الكبير من mAh. ومع ذلك ، فإن رمز المرآة لا يقترب من استخدام جميع وحدات البكسل الأربعة في السطوع الكامل معًا ، لذلك في الواقع يكون الحد الأقصى للسحب الحالي أقل بكثير. حل وسط صحي للبطارية هو بطارية ليبولي قابلة لإعادة الشحن بسعة 1200 مللي أمبير في الساعة.

صورة
صورة

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

موصى به: