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

وحدة تحكم ألعاب منزلية - "NinTIMdo RP": 7 خطوات (مع صور)
وحدة تحكم ألعاب منزلية - "NinTIMdo RP": 7 خطوات (مع صور)

فيديو: وحدة تحكم ألعاب منزلية - "NinTIMdo RP": 7 خطوات (مع صور)

فيديو: وحدة تحكم ألعاب منزلية -
فيديو: كيف تحوّل الفلاشة إلى وحش ألعاب للإستمتاع بألعابك المفضّلة في أي مكان 2024, ديسمبر
Anonim
Image
Image
وحدة تحكم لعبة محلية الصنع
وحدة تحكم لعبة محلية الصنع

ارتباط بصفحة الويب مع المزيد من التوضيحات المتعمقة وقائمة الأجزاء والملفات

timlindquist.me

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

قائمة الاجزاء:

docs.google.com/spreadsheets/d/1Ay6-aW4nAt…

الخطوة 1: طباعة الحالة

حالة الطباعة
حالة الطباعة
حالة الطباعة
حالة الطباعة

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

ملفات النماذج:

github.com/timlindquist/Nintimdo-RP_3D_mod…

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

الجمعية القضية
الجمعية القضية
الجمعية القضية
الجمعية القضية

للتجميع ، قم أولاً بربط القطع الأمامية اليمنى واليسرى عن طريق إدخال وتد معدني في فتحات المحاذاة. بعد ذلك ضع الغراء الفائق على المفاصل وثبّت النصف معًا. كرر العملية للأسفل الأيمن والأيسر. بعد ذلك ، يجب أن تترك بنصف أمامي وخلفي مُجمَّع. حان الوقت الآن لإرفاق 5 مواجهات معدنية لدمج الألواح الأمامية والخلفية. أسهل طريقة للقيام بذلك هي أولاً توصيل الحواف بالطول الصحيح. 13 مم في العمق الخلفي 5 مم في الأمام. لذا اجعل المواجهات 18 مم أو أقل قليلاً. لقد فعلت ذلك من خلال وضع مأزق أطول في قبضة نائب واستخدام طاحونة لتقليص الحجم. تأكد من طحن جانب واحد فقط لأنك ستحتاج إلى الخيوط على الجانب الآخر. بعد الحصول على الطول الصحيح ، قم بغراء جميع جوانب المطحنة على الوجه الأمامي باستخدام غراء الغوريلا العادي واتركها تجف. تأكد من أنهم جميعًا يقفون بشكل مستقيم أثناء هذه العملية. بمجرد أن يجف ، اكشط الصمغ الممتاز الذي يتم تكويم الرغوة بحيث يمكن مسح الوجوه عند تجميعها معًا. الآن تحقق مما إذا كان يمكنك إدخال اللوحة الخلفية في المواجهات للانضمام إلى المقدمة. برغي معًا من خلال اللوحة الخلفية للتأمين. يتم تشغيل شاشة الغراء من خلال تبطين الإطار بأنبوب Gorilla Epoxy. أرتدي الكثير عندما فعلت هذا وفاضت على الشاشة. لحسن الحظ فإنه يفرك! ثبتيه واتركيه يجف لبعض الوقت ثم قومي بربط الجزء الخلفي بغراء الغوريلا العادي.

** ملاحظة: حاول ألا تحصل على غراء CA رقيق (غراء قوي) من الخارج لأنه "يحرق" PLA ويلطخ اللون الأبيض.

الخطوة 3: الدوائر

الدوائر
الدوائر
الدوائر
الدوائر
الدوائر
الدوائر

دوائر الزر:

يتم التقاط جميع ضغطات الأزرار باستخدام Teensy ++ 2.0. تُستخدم المسامير الرقمية الموجودة في وحدة التحكم الدقيقة لأي أزرار ضغط ثنائية. تُستخدم المسامير التناظرية للأزرار التي لها حالات متعددة مثل أذرع التحكم. لتوصيل المسامير الرقمية ، قم ببساطة بتوصيل الدبوس الرقمي بالمفتاح ، اجعل الطرف الآخر من المحول موصلاً بالأرض. عند الضغط على الزر ، سوف يسحب دبوس الجهد العالي لأسفل حتى تستشعر وحدة التحكم. لا داعي للقلق بشأن المقاومات حيث يتم تضمينها في لوحة Teensy. لتوصيل المسامير التناظرية ، ستحتاج إلى تحيز جهازك التناظري بجهد مرتفع ومنخفض وقراءة مستوى الجهد في هذا النطاق على الدبوس التناظري. بالنسبة لأذرع التحكم ، هناك 3 مدخلات لكل محور. قم بتزويد 5 فولت إلى أحد المسامير ، و GND إلى آخر ، وخط قراءة الجهد إلى الأخير. تأكد من توصيل هذا بشكل صحيح أو أنه لن يعمل (استخدم مقياس متعدد لمعرفة ما إذا كان جهد الخرج يتغير على الدبوس الصحيح.) في الأساس ، عصا التحكم عبارة عن مقاوم متغير يعمل مثل مقسم الجهد. سيختلف جهد الخرج على دبوس القراءة بين 0 و 5 فولت حسب موضع عصا التحكم. (عادةً ما يكون التحيز 5V و GND على دبابيس الإدخال الخارجية لعصا التحكم وسيكون الوسط هو دبوس قراءة الجهد المتغير الخاص بك. إذا كان 5V و GND مختلفين عن جهازي ، فسيتم عكس عناصر التحكم ، يمكن إصلاح ذلك في البرنامج أو إعادة الأسلاك).

دوائر الطاقة:

توفر بطارية Anker ثلاثية الخلايا الطاقة للجهاز بأكمله. لتشغيل / إيقاف تشغيل الجهاز ، يتم توصيل خرج منظم البطارية بمفتاح ثم Raspberry Pi. نظرًا لأن الجهاز يمكنه سحب ما يصل إلى 2A ، فإن مفتاح التبديل 250mA البسيط لا يمكنه التعامل مع المتطلبات الحالية. بدلاً من ذلك ، يمكنك استخدام المفتاح للتحكم في جهد البوابة على ترانزستور PMOS لخدمة الغرض من المفتاح. قم بتوصيل 5 فولت للبطارية بمصدر ترانزستور PMOS والمفتاح. الطرف الآخر من المحول متصل ببوابة ترانزستور PMOS وبمقاوم 10K متصل بـ GND (عندما يكون المفتاح مفتوحًا لمنع البوابة من التعويم ، فإنه يربطها بـ GND من خلال المقاوم). يتم توصيل Drain بمدخل 5V في Raspberry Pi جنبًا إلى جنب مع الأرض. لشحن البطارية ، قم ببساطة بتوصيل لوحة الفصل الأنثوي المصغرة بمسامير الشحن الصحيحة (يمتد الإدخال إلى العلبة). لقد قمت بإخفاء هذا المفتاح في مدخل الهواء في الجزء الخلفي من الجهاز. في الأصل كنت أخطط بدلاً من ذلك لتشغيل زر البطارية وإيقاف تشغيله عن طريق الضغط عليه لمدة معينة ، ولسوء الحظ نفدت الغرفة واضطررت إلى القيام بالتنفيذ البسيط. يظهر هذا التصميم البديل في التخطيطي أدناه.

دوائر الصوت:

بالنسبة إلى الصوت الذي كنت أرغب في تشغيله بشكل طبيعي من مكبرات الصوت (إذا لم يتم كتمه) وإعادة توجيهه إلى سماعات الرأس إذا تم توصيلها. لحسن الحظ ، فإن العديد من مقابس سماعة الرأس مقاس 3.5 مم الأنثوية قادرة ميكانيكيًا على القيام بذلك. عندما يتم إدخال قابس ذكر ، فإن أسلاك السماعة تنحني وتخلق دائرة مفتوحة ، وبالتالي تمنع الإشارة من الوصول إلى السماعات. نظرًا لأن السماعات ذات حمل أكبر ، يجب تضخيم الإشارة الصوتية لتتمكن من سماعها. يتم ذلك باستخدام مضخم صوت ستيريو من الفئة D وجدته على adafruit. ببساطة تحيز مكبر للصوت مع 5V و GND. ليس لدينا مدخلات صوتية تفاضلية ، لذا قم بتوصيل مكبرات الصوت اليمنى واليسرى بالأطراف الموجبة وربط الأطراف السالبة بـ GND. يتم ضبط الكسب باستخدام العبور. قمت بضبط الكسب على الحد الأقصى وأقوم بتغيير سعة إشارات الإخراج الصوتية عبر البرنامج لضبط مستوى الصوت. لكتم صوت الجهاز ، لدي ترانزستور NMOS يتحكم في انحياز 5 فولت. يتم التحكم في بوابة الترانزستورات NMOS بواسطة Teensy. مشكلة لدي هي وجود ضوضاء عالية التردد ثابتة في السماعات الخارجية. سأقوم بتحليل هذا على الذبذبات ، قد يكون قادمًا من التحيز 5V بسبب بعض تبديل المنظم في البطارية أو قد تلتقط الخطوط RF في مكان ما. تأكد أيضًا من لف الخطين الأيمن والأيسر لتقليل التداخل الكهرومغناطيسي (EMI).

الخطوة 4: الدوائر الطرفية

الدوائر المحيطية
الدوائر المحيطية
الدوائر المحيطية
الدوائر المحيطية

تتضمن هذه الدائرة حوامل USB ومؤشر LED. اطلب ثنائي الفينيل متعدد الكلور في الرابط الخاص بي واقطعه إلى نصفين على طول الخط المنقط باستخدام المنشار الشريطي. على جانب USB ، قم بلحام منفذي USB الأنثويين على اللوحة. على جانب LED ، جندى 5 مصابيح LED و 5 مقاومات متسلسلة. يمكن تمديد 5V ، GND ، D + ، D- باستخدام الأسلاك من Raspberry PI's desoldered USB إلى PCB. يمكن وضع LED PCB بحيث يضيء الضوء من خلال الفتحات الموجودة أعلى العلبة. مخرجات الأسلاك 5 PWM من Teensy إلى مصابيح LED جنبًا إلى جنب مع GND. من خلال تغيير دورة العمل ، يمكنك تغيير سطوع مصابيح LED.

شراء PCB:

الخطوة الخامسة: البرمجة

برمجة
برمجة
برمجة
برمجة
برمجة
برمجة

صغير جدا:

إذا قمت بتوصيله بنفس الطريقة التي قمت بتوصيلها به ، يمكنك فقط استخدام الكود الذي قدمته على Github. ومع ذلك ، أوصي بكتابته بنفسك لأنك ستفهم النظام بشكل أفضل وستكون قادرًا على التلاعب به وتخصيصه بسهولة حسب رغبتك. البرمجة بسيطة للغاية ، فهي تتعلق بكتابة مجموعة من عبارات if للتحقق مما إذا تم الضغط على الأزرار. مجموعة تعليمات مفيدة من PJRC. يمكنك استخدام Arduino IDE لكتابة التعليمات البرمجية الخاصة بك وكذلك تحميلها إلى Teensy.

الشفرة:

github.com/timlindquist/Nintimdo-RP

الأزرار الرقمية: يوضح لي هذا المثال التحقق لمعرفة ما إذا تم الضغط على الرقم 20 الرقمي ثم إخراج أمر عصا التحكم التسلسلي الصحيح. يمكنك اختيار أي من 1 إلى 32 للزر لأن Retropie يقوم بإعداد تعيين وحدة التحكم في البداية على أي حال. Joystick.button (الأزرار: 1-32 ، الضغط عليه = 1 محرر = 0)

الأزرار التناظرية:

في المثال ، تم توصيل عمود التحكم الأيمن الرأسي بالطرف التناظري 41. تستقبل وظيفة القراءة التناظرية (الدبوس) مستوى جهد بين 0 و 5 فولت وترجع قيمة من 0 إلى 1023. سيتوافق موضع المركز المثالي مع 2.5 فولت أو 512 ، ومع ذلك ، لم يكن هذا هو الحال بالنسبة لعصا التناظرية الخاصة بي ، لذا يلزم إجراء التعديل. تم ذلك من خلال إعادة الخرائط الموضحة أدناه. بعد ذلك احتجت إلى التحقق مما إذا لم يتم تجاوز الحدود من 0 إلى 1023. أخيرًا ، تم إرسال أمر عصا التحكم التناظرية عبر المسلسل ليكون الزر التناظري Z باستخدام Joystick. Z (القيمة من 0 إلى 1023).

الخطوة 6: إرساء اختياري

إرساء اختياري
إرساء اختياري
إرساء اختياري
إرساء اختياري
إرساء اختياري
إرساء اختياري

الرصيف:

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

عارضات ازياء:

github.com/timlindquist/Nintimdo-RP_3D_mod…

الخطوة 7: النتائج

نتائج
نتائج
نتائج
نتائج
نتائج
نتائج
نتائج
نتائج

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

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

موصى به: