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

كرة الإجابات السحرية مع Arduino Pro Mini وشاشة TFT: 7 خطوات
كرة الإجابات السحرية مع Arduino Pro Mini وشاشة TFT: 7 خطوات

فيديو: كرة الإجابات السحرية مع Arduino Pro Mini وشاشة TFT: 7 خطوات

فيديو: كرة الإجابات السحرية مع Arduino Pro Mini وشاشة TFT: 7 خطوات
فيديو: لحظة تهكير قنات كرتون نتورك بالعربيه 😂😂🤣 2024, يوليو
Anonim
كرة الإجابات السحرية مع Arduino Pro Mini وشاشة TFT
كرة الإجابات السحرية مع Arduino Pro Mini وشاشة TFT
كرة الإجابات السحرية مع Arduino Pro Mini وشاشة TFT
كرة الإجابات السحرية مع Arduino Pro Mini وشاشة TFT
كرة الإجابات السحرية مع Arduino Pro Mini وشاشة TFT
كرة الإجابات السحرية مع Arduino Pro Mini وشاشة TFT

بعد فترة من الوقت ، قمت أنا وابنتي بتفكيك كرة Magic 8 حتى تتمكن من استبدال الردود العشرين بأخرى من اختيارها. كانت هذه هدية لصديقة لها. جعلني ذلك أفكر في كيفية القيام بذلك على نطاق أوسع. هل يمكن أن يكون لدينا أكثر من 20 إجابة؟ مع نسخة إلكترونية نستطيع!

سيصف هذا كيف قمت بتفكيك Mattel Magic 8 Ball (آسف ، Mattel) واستخدمت شاشة TFT مستديرة لإظهار عدد لا يصدق من الردود الإضافية (أصغر بطاقة micro-SD يمكنني العثور عليها كانت 8 جيجابايت ، لذا فهي مبالغة حقًا ما الذي يتم استخدامه من أجله). تستخدم الكرة لوحة Sparkfun Wake-on-shake لتحفيز الاستجابة وإيقاف الكرة بعد ذلك للحفاظ على البطارية. يتم استخدام لوحة إعادة الشحن للسماح بإعادة شحن البطارية من اتصال USB.

اللوازم

القطع:

اردوينو برو ميني 328 - 3.3 فولت / 8 ميجاهرتز

SparkFun Wake on Shake

بطارية ليثيوم أيون - 400 مللي أمبير

12 قطعة من وحدة الشحن TP4056 5V Micro USB 1A 18650 لوحة شحن بطارية ليثيوم مع وحدة شاحن حماية (تحتاج فقط إلى واحد منها ، لكن العبوة الاثني عشر كانت أقل من 9 دولارات)

DAOKI 5Pcs Micro SD Storage Board (مرة أخرى ، تحتاج فقط إلى واحد ، لكن العبوة الخمسة كانت أقل من 9 دولارات)

DFRobot 2.2 بوصة وحدة شاشة TFT LCD

بطاقة microSD بسعة 8 جيجا بايت من Kingston (قد يكون لديك واحدة قديمة من هذه الكذب حول منزلك)

برما بروتو ربع حجم اللوح ثنائي الفينيل متعدد الكلور (يمكنك أيضًا استخدام كل ما تريده من ثنائي الفينيل متعدد الكلور)

8 الكرة السحرية

FTDI Basic breakout 3.3V (قد يكون لديك بالفعل واحد من هؤلاء إذا كنت قد أنجزت مشروعًا مشابهًا مع Arduino Pro Mini أو لوحة مماثلة)

مبيت 4 دبابيس مع 2.54 مم JST XH ذكر / أنثى رأس دبوس دوبونت طقم موصل سلك (اختياري ، لكن موصى به لتوصيل البطارية)

الإمدادات الأساسية الأخرى:

Sugru Mouldable Glue (يمكن استخدام شريط لاصق وغراء ساخن ، لكني أحب هذا بشكل أفضل)

شريط لاصق

شريط رغوة على الوجهين

الأسلاك

أدوات:

لحام حديد

أداة دوارة من اختيارك (مثل Dremel)

المشبك الأثاث

الخطوة 1: قص الكرة السحرية 8 إلى نصفين

قطع الكرة السحرية 8 في النصف
قطع الكرة السحرية 8 في النصف
قطع الكرة السحرية 8 في النصف
قطع الكرة السحرية 8 في النصف

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

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

سيظل هناك بعض الخبث البلاستيكي حول الحافة الخارجية (البلاستيك المذاب والمعاد صلابته). تخلص من ذلك بيديك ، إذا استطعت ؛ يؤدي استخدام أداة إلى خطر احتكاك الكرة في النهاية ويخرج الخبث بسهولة.

الخطوة 2: جهز الكرة

جهز الكرة
جهز الكرة
جهز الكرة
جهز الكرة
جهز الكرة
جهز الكرة

هناك تعديلين سنحتاج إلى إجرائهما على نصفي الكرة البلاستيكي.

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

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

الخطوة 3: قم بإعداد الردود على بطاقة Micro-SD

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

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

على الرغم من أن الشاشة مستديرة ، إلا أنها وظيفية شاشة مستطيلة افتراضية مع وحدات بكسل مرئية فقط داخل الدائرة. يمكن أن تعرض الشاشة نصًا متعدد الأحجام ، لكننا نستخدم فقط الإصدار الأصغر وهو 6 × 8 بكسل. باستخدام هذا الحجم ، هناك 315 حرفًا يمكن للشاشة وضعها على الشاشة (21 حرفًا لكل سطر مضروبًا في 15 سطرًا) ، ولكن لا يمكن رؤية سوى 221 حرفًا وكل سطر يحتوي على عدد مختلف من الأحرف المرئية. ترى المشكلة؟

لقد كتبت برنامج Java لأخذ ملف من الردود غير المنسقة وتحويلها إلى سجلات مركزية بالكامل يمكن عرضها بسهولة على TFT المستدير. (رابط لتنزيل ملف "FormatToPicksFileFullyCentered.java").

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

انسخ ملف "picks.txt" إلى بطاقة micro-SD.

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

الخطوة 4: قم بتحميل الكود إلى Arduino Mini

قم بتحميل الكود إلى Arduino Mini
قم بتحميل الكود إلى Arduino Mini
قم بتحميل الكود إلى Arduino Mini
قم بتحميل الكود إلى Arduino Mini
قم بتحميل الكود إلى Arduino Mini
قم بتحميل الكود إلى Arduino Mini

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

إلى الكود. هناك بعض الأجزاء المثيرة للاهتمام في هذا الرمز ، لكنها في الغالب مباشرة للأمام.

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

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

المكتبات الخارجية المطلوبة:

مكتبة ST7687S

مكتبة DFRobot-Display

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

قم بتوصيل المكونات
قم بتوصيل المكونات
اربط المكونات
اربط المكونات

حان الوقت للقيام بكل لحام الأسلاك. كنت أميل إلى الخطأ في جانب الأسلاك الأطول قليلاً مما كنت أحتاجه حقًا ، ولكن انتهى الأمر بالنجاح.

في المخطط المرفق ، يتم تمثيل شاشة TFT بواسطة موصل بدلاً من صورة الشاشة بأكملها (التي لم أجد جزء Fritzing لها). لقد قمت بتسمية الأسلاك / المسامير بناءً على كيفية تسميتها على الجزء. وبالمثل ، فإن بطاقة SD ليست هي البطاقة نفسها التي استخدمتها ، لكنني قمت بتسمية الأسلاك / المسامير للجزء المدرج.

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

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

اختبر أن كل شيء يعمل

الخطوة 6: نعلق المكونات على الكرة

نعلق المكونات على الكرة
نعلق المكونات على الكرة
نعلق المكونات على الكرة
نعلق المكونات على الكرة
نعلق المكونات على الكرة
نعلق المكونات على الكرة
نعلق المكونات على الكرة
نعلق المكونات على الكرة

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

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

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

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

ضع بطاقة micro-SD في وحدة بطاقة SD الآن

يمكنك تثبيت المكونات الأخرى على الشفة البيضاء إذا كنت ترغب في ذلك. لقد وضعت المكونات المتبقية خلف الشاشة.

الخطوة 7: ضع النصفين معًا

ضع النصفين معًا
ضع النصفين معًا
ضع النصفين معًا
ضع النصفين معًا

تحقق مرة أخرى من أنك أدخلت بطاقة SD وأنك قد اختبرت جميع المكونات معًا.

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

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

إذا كان لديك بعض الغراء الذي تم ضغطه من المفصل ، فلا تتردد في كشطه بإصبعك أو بقطعة قماش ناعمة / منشفة ورقية.

موصى به: