Table des matières:

Machine d'arcade modulaire : 12 étapes
Machine d'arcade modulaire : 12 étapes

Vidéo: Machine d'arcade modulaire : 12 étapes

Vidéo: Machine d'arcade modulaire : 12 étapes
Vidéo: COMMENT FABRIQUER UNE BORNE D'ARCADE ? [DIY] 2024, Novembre
Anonim
Machine d'arcade modulaire
Machine d'arcade modulaire

Mes deux garçons et moi voulions construire une machine d'arcade, mais nous ne pouvions pas décider quel type construire entre un meuble debout complet, un bar-top ou une console de style combat-stick à brancher sur un téléviseur. Il nous est finalement venu à l'esprit que nous pouvions construire les trois en tant que solution modulaire avec des modules pouvant être utilisés individuellement ou combinés à volonté.

En raison de la conception simple et du choix des composants, il s'agit également d'une construction assez peu coûteuse par rapport à de nombreux projets de machines d'arcade à domicile et vous devriez pouvoir le réaliser pour moins de 200 € / $ en matériaux. J'avais déjà la plupart des matériaux de menuiserie et de l'électronique qui traînaient donc j'ai jusqu'à présent dépensé moins de 100 €.

Étape 1: Concevoir

Concevoir
Concevoir
Concevoir
Concevoir
Concevoir
Concevoir

Le concept de conception de base est un système d'arcade à deux joueurs composé d'un ensemble de modules indépendants qui ont chacun une fonction individuelle et se complètent également lorsqu'ils sont boulonnés ensemble.

  • Le module de commande contient toutes les commandes et l'électronique de commande, y compris les contrôleurs USB. Ce module peut être utilisé comme contrôleur de style bâton de combat connecté à une console ou à un Raspberry PI.
  • Le module d'affichage abrite l'affichage et le Raspberry PI (ou votre choix de SBC) et peut être utilisé de manière autonome en tant qu'ordinateur "tout-en-un" ou connecté au module de commande pour former une unité d'arcade bartop.
  • Le module de support agit comme une unité de stockage en mode autonome et, lorsqu'il est combiné avec le bartop, forme une machine d'arcade complète.

Nous avons essayé de garder le design aussi simple et fonctionnel que possible en nous inspirant des jeux de table vintage des années 70 et 80 et en évitant les éléments non fonctionnels tels que le chapiteau lumineux et les moulures en T que l'on trouve dans de nombreuses armoires. Bien sûr, vous pouvez modifier le design pour ajouter ces éléments si vous le souhaitez.

J'ai opté pour une disposition de boutons assez classique que je semblais me rappeler des arcades de ma jeunesse avec un groupe de boutons "six droits" à côté de chacun des joysticks (StreetFighter2 FTW). J'ai placé des boutons Start et Select sur le panneau avant pour prendre en charge l'émulation de la console ainsi que les tâches de saisie de pièces et de sélection de joueurs. J'ai également placé un bouton de chaque côté pour les jeux de flipper. Bien sûr, vous êtes libre de modifier le design selon vos propres goûts et les méthodes de saisie souhaitées, par ex. boules de commande. filateurs lestés, etc.

J'ai fait un premier croquis conceptuel de l'unité de bar sur papier, puis j'ai recréé des modèles à l'échelle correcte dans SketchUp - voir les fichiers joints pour chacun des modules et des combinaisons.

J'ai basé les dimensions autour d'un moniteur à écran large 19 que j'ai acheté d'occasion pour 10 €. Cela a donné une largeur totale de l'armoire de 500 mm laissant environ 30 mm de jeu au cas où je devais changer le moniteur.

Vérifiez les fichiers SketchUp pour les mesures exactes sur toutes les dimensions. Lors de la découpe d'un panneau ou d'un trou spécifique, j'ai utilisé l'outil à ruban à mesurer dans SketchUp pour mesurer la dimension dans le modèle avant de marquer les coupes sur le matériau de construction.

Étape 2: Outils et matériaux de menuiserie

AVERTISSEMENT: UTILISEZ LA PRÉCAUTION ET L'ÉQUIPEMENT DE SÉCURITÉ APPROPRIÉ LORS DE L'UTILISATION D'OUTILS ÉLECTRIQUES

Outils

  • Tournevis et vis
  • Scie à table ou scie circulaire
  • Scie sauteuse
  • Perceuse et embouts divers, y compris une scie cloche de 28 mm pour les boutons
  • Papier de verre
  • Toupie et embout à arrondir

Matériaux

  • Feuille de MDF de 19 mm (3/4")
  • Feuille de MDF de 6 mm (3/4")
  • Équerres (j'ai utilisé des supports en plastique très pratiques - voir les photos de construction)
  • Mastic à bois
  • Peinture (voir les étapes « Terminer » plus tard pour plus de détails)

Étape 3: Construction du module de commande

Construction du module de commande
Construction du module de commande
Construction du module de commande
Construction du module de commande
Construction du module de commande
Construction du module de commande
Construction du module de commande
Construction du module de commande

J'ai commencé le module de contrôle en découpant les côtés du MDF de 19 mm en fonction des dimensions du modèle SketchUp.

Ensuite, j'ai coupé les panneaux avant et arrière. J'ai marqué les biseaux sur ces panneaux en les plaçant serrés contre les côtés et en marquant l'angle avec un crayon, puis en joignant les marques de chaque côté avec un bord droit. Je l'ai ensuite coupé à vue à la scie circulaire et fini au papier de verre. Je suis presque sûr qu'il existe une meilleure façon de le faire avec plus d'outils et/ou de meilleures compétences, mais cela a bien fonctionné pour mes besoins et n'a pas pris longtemps.

J'ai ensuite découpé les trous des boutonnières avant et latérales et j'ai connecté tous les panneaux avec les équerres et les vis. J'avais initialement prévu d'utiliser de la colle mais mes tests de collage sur un bord coupé en MDF semblaient indiquer que ce ne serait pas assez solide. De plus, j'avais déjà un tas de supports que j'ai recyclés d'un ancien projet;).

J'ai également arrondi les bords supérieurs faisant face à l'avant à ce stade à l'aide de la défonceuse avec la mèche à arrondir les coins. Cela donne un aspect plus agréable et une sensation plus confortable au module et sillonne les bords durs où vos mains reposent naturellement à côté des commandes.

Ensuite, j'ai découpé le haut et le bas du MDF de 6 mm. J'ai biseauté le panneau supérieur comme avec les panneaux avant et arrière pour assurer un ajustement parfait et une finition sans couture. Je n'ai pas biseauté le panneau inférieur car je n'ai pas l'intention de le remplir et de le peindre. Au lieu de cela, je vais l'utiliser comme panneau d'accès de maintenance. J'ai percé et fraisé des trous de vis et percé des trous correspondants dans les supports d'angle.

J'ai ensuite démonté le panneau arrière et découpé un grand trou pour un accès régulier aux câbles USB et Raspberry PI.

Enfin, j'ai coupé le bouton du panneau supérieur et les trous du joystick et remonté. Je n'ai pas fixé le panneau supérieur en place à ce stade car je voulais le garder lâche pendant le processus de câblage.

Étape 4: Outils et matériaux électroniques

NB: Cette liste n'est nécessaire que si vous voulez vous lancer à fond dans l'électronique. Vous pouvez et devriez probablement obtenir tout cela dans le cadre d'un kit plug and play (comme ceux-ci) et éviter toute soudure et câblage personnalisé. Après avoir fait cela une fois "à la dure", je vais certainement emprunter la voie du kit si jamais je fais un autre baffle.

Outils

  • Multimètre/testeur de connectivité
  • Fer à souder
  • Coupe-fil
  • Outil de sertissage (je viens d'utiliser le coupe-fil)

Matériaux

  • Arduino Leonardo/Pro Micro avec profil de joystick USB HID (j'ai utilisé des clones bon marché)
  • Concentrateur USB
  • Joystick et boutons d'arcade.
  • Connecteurs à sertir pour correspondre à votre joystick et boutons sélectionnés
  • 2x Mini planches à pain
  • Fils de connexion (j'ai principalement utilisé des fils de connexion Dupont)
  • Soudure électronique (j'avais toujours ma bobine de base de colophane d'origine de l'université)
  • Gaine thermorétractable

Étape 5: Câblage du module de commande

Câblage du module de commande
Câblage du module de commande
Câblage du module de commande
Câblage du module de commande
Câblage du module de commande
Câblage du module de commande

Encore une fois, je recommande d'envisager un kit plug and play au lieu de l'approche documentée ici. Ne suivez cette approche que si vous:

A. Vous voulez un contrôle total du code de gestion des boutons de bas niveau

B. Aimez vraiment la soudure et le câblage personnalisé (qui n'aime pas)

C. Vous avez déjà les outils et les pièces et/ou souhaitez économiser quelques dollars

D. Vous voulez en savoir plus sur ce genre de choses ou simplement vous entraîner

Mes motivations personnelles étaient un mélange de ce qui précède. Ok, alors voici comment j'ai fait le câblage:

J'ai d'abord fabriqué des câbles adaptateurs pour relier les connecteurs à sertir des boutons aux fils du connecteur Dupont. J'en ai fait un pour le micro-interrupteur dans chacun des boutons et les quatre dans chacun des joysticks. Criez pour proscrire Larry pour une fouille sur la chaîne de production pour ceux-ci.

J'ai ensuite utilisé ces câbles personnalisés pour connecter les boutons et les joysticks aux broches d'entrée de chacun des micro-contrôleurs via les maquettes.

NB: Dans cette conception, il y a un micro-contrôleur séparé et donc un câble USB pour chaque lecteur. Répartissez les micro-interrupteurs du joystick et des boutons en conséquence entre eux et câblez les deux boutons du flipper au même micro-contrôleur. Consultez les photos qui montrent une progression à travers les étapes de câblage si vous êtes bloqué.

Ensuite, je devais ajouter un fil pour envoyer un signal à chacun des micro-interrupteurs qui renverrait ensuite le signal à la broche d'entrée du micro-contrôleur lorsque le bouton était enfoncé. J'ai utilisé les 4 paires torsadées dans certains câbles Cat 5e pour fournir le signal aux joysticks en les soudant tous ensemble à une extrémité et en attachant un câble de connecteur Dupont connecté à la broche de signal du micro-contrôleur.

J'ai fabriqué un petit câble en guirlande pour chacun des groupes de 6 boutons et j'ai finalement utilisé mes câbles adaptateurs personnalisés sur les boutons de démarrage / de sélection et de flipper, tous câblés à la broche de signal du micro-contrôleur.

Le câblage des micro-interrupteurs aux micro-contrôleurs était assez simple en raison de l'utilisation de la mini-planche à pain et des connecteurs Dupont, ce qui signifiait que je pouvais facilement déplacer les fils si nécessaire.

Étape 6: Code du contrôleur

Code du contrôleur
Code du contrôleur
Code du contrôleur
Code du contrôleur
Code du contrôleur
Code du contrôleur

Le code est assez basique. J'ai modifié un exemple de manette de jeu de l'excellente bibliothèque Arduino Joystick

Vous pouvez en savoir plus sur la mise en route de cette bibliothèque à partir de cette instructable pratique.

À la fin de cette étape, nous avions une manette de combat à 2 joueurs fonctionnelle, nous avons donc célébré avec quelques tours de StreetFighter2 sur mon ordinateur portable !

J'avais initialement prévu de connecter les microcontrôleurs directement au Raspberry PI via USB, mais lors des tests sur l'ordinateur portable, j'ai constaté que la connexion et la déconnexion des connecteurs micro USB aux microcontrôleurs via le panneau d'accès étaient très délicates et j'ai finalement rompu le connecteur micro USB de l'un des microcontrôleurs.

La solution consistait à inclure un concentrateur USB dans le module de contrôle. Cela signifiait qu'une seule connexion était exposée depuis le module de commande et que la solution globale était beaucoup plus robuste. Une fois le câblage terminé, j'ai ajouté des trous de vis à tête fraisée sur le panneau supérieur et l'ai vissé en place.

gamepad.ino

// Exemple de manette de jeu simple qui montre comment lire cinq Arduino
// broches numériques et mappez-les sur la bibliothèque Arduino Joystick.
//
// Les broches numériques sont mises à la terre lorsqu'elles sont enfoncées.
//
// REMARQUE: ce fichier d'esquisse est destiné à être utilisé avec Arduino Leonardo et
// Arduino Micro uniquement.
//
// Version modifiée du code original par Matthew Heironimus
// 2018-08-11
//--------------------------------------------------------------------
#comprendre
Joystick_ Joystick;
void setup() {
// Initialiser les épingles du bouton
pinMode(2, INPUT_PULLUP);
pinMode(3, INPUT_PULLUP);
pinMode(4, INPUT_PULLUP);
pinMode(5, INPUT_PULLUP);
pinMode(6, INPUT_PULLUP);
pinMode(7, INPUT_PULLUP);
pinMode(8, INPUT_PULLUP);
pinMode(9, INPUT_PULLUP);
pinMode(10, INPUT_PULLUP);
pinMode (16, INPUT_PULLUP);
pinMode(20, INPUT_PULLUP);
pinMode(21, INPUT_PULLUP);
// Initialiser la bibliothèque de manettes
Joystick.begin();
Joystick.setXAxisRange(-1, 1);
Joystick.setYAxisRange(-1, 1);
}
// Dernier état des boutons
int lastButtonState[12] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
broches int[12] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 16, 20, 21};
boucle vide() {
// Lire les valeurs des broches
pour (index = 0; index < 12; index ++)
{
int currentButtonState = !digitalRead(pins[index]);
if (currentButtonState != lastButtonState[index])
{
commutateur (broches[index]) {
case2: // UP
if (currentButtonState == 1) {
Joystick.setYAxis(-1);
} autre {
Joystick.setYAxis(0);
}
Pause;
case3: // DROIT
if (currentButtonState == 1) {
Joystick.setXAxis(1);
} autre {
Joystick.setXAxis(0);
}
Pause;
case4: // VERS LE BAS
if (currentButtonState == 1) {
Joystick.setYAxis(1);
} autre {
Joystick.setYAxis(0);
}
Pause;
case5: // GAUCHE
if (currentButtonState == 1) {
Joystick.setXAxis(-1);
} autre {
Joystick.setXAxis(0);
}
Pause;
cas 6:
Joystick.setButton(0, currentButtonState);
Pause;
cas 7:
Joystick.setButton(1, currentButtonState);
Pause;
cas 8:
Joystick.setButton(2, currentButtonState);
Pause;
cas 9:
Joystick.setButton(3, currentButtonState);
Pause;
cas 10:
Joystick.setButton(4, currentButtonState);
Pause;
cas 16:
Joystick.setButton(5, currentButtonState);
Pause;
cas20:
Joystick.setButton(8, currentButtonState);
Pause;
case21: {
Joystick.setButton(9, currentButtonState);
Pause;
}
}
lastButtonState[index] = currentButtonState;
}
}
retard(10);
}

voir rawgamepad.ino hébergé avec ❤ par GitHub

Étape 7: configuration du Raspberry PI

Configuration du Raspberry PI
Configuration du Raspberry PI

Je recommande un Pi 3 pour des performances de jeu et une compatibilité maximales, mais si vous n'êtes intéressé que par des jeux plus anciens, un appareil moins puissant comme le Pi Zero conviendrait également. J'utilise un Pi 2 de rechange que j'avais déjà avec moi.

Il existe de nombreuses ressources sur le Web décrivant comment configurer le Pi ou un autre SBC choisi avec différents émulateurs et frontaux. Personnellement, j'utilise et recommande RetroPie et j'ai trouvé que ces excellentes vidéos d'ETA Prime étaient un excellent moyen de démarrer rapidement.

Étape 8: Construction du module d'affichage

Construction du module d'affichage
Construction du module d'affichage
Construction du module d'affichage
Construction du module d'affichage
Construction du module d'affichage
Construction du module d'affichage

J'ai commencé la construction du module d'affichage avec les panneaux latéraux, en marquant et en découpant le premier à partir des dimensions mesurées à partir du fichier SketchUp à l'aide du ruban à mesurer virtuel. J'ai ensuite utilisé le premier panneau comme gabarit pour délimiter le second.

Ensuite, j'ai découpé le panneau arrière inférieur, vissé des équerres, puis vissé sur les panneaux latéraux. A ce stade, j'ai vérifié que mon moniteur conviendrait. C'était un peu plus étroit que ce à quoi je m'attendais mais il y avait suffisamment d'espace.

J'ai ensuite ajouté le panneau avant inférieur et découpé des trous pour qu'il corresponde au module de commande. Pour les marquer, j'ai placé le module de commande contre le module d'affichage et j'ai tracé l'intérieur du trou existant dans le module de commande.

À ce stade, j'ai pu boulonner ensemble les deux modules à l'aide de deux boulons de connecteur d'armoire. Maintenant, je pouvais voir la forme finale du module de bar combiné !

L'étape suivante consistait à acheminer les bords des panneaux. Pour cela, j'ai à nouveau démonté l'appareil. J'ai également découpé le trou pour l'entrée d'alimentation et l'interrupteur. Pour cela, j'ai d'abord marqué le trou, puis percé les coins avec une petite mèche à bois et enfin découpé le matériau restant à l'aide d'une scie à spirale.

J'ai ensuite remonté l'unité en collant chaque pièce ensemble cette fois. Comme j'utilisais également des supports, je n'avais pas besoin d'utiliser des pinces pour maintenir les pièces ensemble.

Maintenant que l'unité était dans sa forme finale, j'ai découpé le panneau de l'écran et l'ai mis en place, en travaillant dessus avec du papier de verre jusqu'à ce qu'il soit bien ajusté. Lorsque j'étais satisfait de l'ajustement, je l'ai sorti et j'ai utilisé une scie sauteuse pour découper le trou pour que l'affichage corresponde à la zone visible de l'écran. Cela fait, j'ai pu tester l'écran en place à l'aide de supports pour maintenir le moniteur en position de manière lâche.

J'ai assemblé les deux modules pour voir à quoi cela ressemblait, puis j'ai fini de coller le contour de l'écran en place. Pour ce faire, j'ai ajouté quelques morceaux supplémentaires de MDF de 6 mm derrière le contour de l'écran afin de m'assurer qu'il était solide et d'éviter des fissures dans la peinture plus tard.

Étape 9: Terminer

Finir
Finir
Finir
Finir
Finir
Finir
Finir
Finir

Une fois la colle complètement sèche sur le module d'affichage, j'ai généreusement appliqué du mastic à bois sur tous les joints et imperfections et l'ai poncé avec du papier de verre de qualité grossière.

Je l'ai ensuite enduit d'un liant PVA dilué comme première couche d'étanchéité. Ensuite, j'ai appliqué plusieurs couches d'un mélange de PVA et de peinture blanche pour bois/acier à usage général que j'ai trouvée dans le garage.

Ces couches initiales ont toutes été appliquées à l'aide d'un pinceau ordinaire de 2.

Lorsque les couches de base ont séché, j'ai effectué un léger ponçage avec du papier de verre à grain fin. Après cela, j'ai ajouté une autre couche de peinture blanche.

Quand c'était sec, j'ai poncé à nouveau légèrement, puis j'ai appliqué quelques couches de peinture en aérosol à usage général bon marché à partir de canettes que j'ai achetées à la quincaillerie.

Avant de répéter le processus pour le module de commande, j'ai découpé le panneau arrière supérieur du module d'affichage. Ce panneau a un trou pour que je puisse transporter le module d'affichage plus facilement. Il permet également au son des haut-parleurs intégrés du moniteur de sortir du boîtier.

À ce stade, j'ai également décidé de retirer les vis du panneau supérieur du module de commande et de le coller à la place. Pour m'assurer qu'il était sécurisé, j'ai d'abord collé des pièces de support supplémentaires.

Lorsque le module de commande a été peint, j'ai utilisé un Dremel pour nettoyer les boutonnières en testant continuellement leur taille avec l'un des boutons. Enfin, j'ai collé l'écrou du connecteur de meuble à l'arrière des modules de commande.

J'étais raisonnablement satisfait de la finition obtenue à la fin de cette étape compte tenu du temps et des efforts consacrés. Ce n'était en aucun cas parfait et pourrait être amélioré avec plus de temps pendant cette étape. Cela dépend vraiment du niveau de finition que vous souhaitez atteindre et du temps que cette étape prendra.

Étape 10: Afficher les composants du module

  • Moniteur à écran large 19" avec haut-parleurs
  • Ordinateur monocarte Raspberry PI 2 (SBC)
  • Etui Raspberry PI 2
  • Adaptateur secteur USB 2A
  • Câble micro-usb
  • câble audio 3,5 mm
  • câble HDMI
  • Prise de châssis secteur (type cordon de bouilloire)
  • Câble de bouilloire
  • Prise secteur double

Étape 11: Câblage du module d'affichage

Câblage du module d'affichage
Câblage du module d'affichage
Câblage du module d'affichage
Câblage du module d'affichage
Câblage du module d'affichage
Câblage du module d'affichage
Câblage du module d'affichage
Câblage du module d'affichage

J'ai d'abord ajouté une base et un panneau arrière à la coque du module d'affichage. Le panneau arrière a été fixé en place à l'aide de loquets magnétiques afin qu'il puisse être facilement retiré pour un accès rapide aux composants.

J'ai ensuite câblé un interrupteur d'alimentation à une double prise de courant pour alimenter le PI et le moniteur. J'ai soudé les fils d'alimentation à l'interrupteur et gainé les câbles avec une gaine thermorétractable. Si vous n'êtes pas complètement à l'aise avec cette partie, demandez l'aide d'une personne qualifiée. Ne prenez AUCUN risque avec le câblage secteur.

Après avoir fixé solidement l'interrupteur au boîtier, j'ai placé le moniteur en position. Compte tenu de la lutte déjà serrée, quelques supports en plastique supplémentaires étaient tout ce qui était nécessaire pour fixer l'écran en place.

Ensuite, j'ai branché un adaptateur d'alimentation USB pour le PI et un câble de bouilloire pour le moniteur. Il ne restait plus qu'à brancher les signaux audio et vidéo sur le moniteur.

Comme le moniteur n'a pas d'entrée HDMI, j'ai utilisé un adaptateur HDMI vers DVI. L'audio a été fourni aux haut-parleurs intégrés du moniteur via un câble audio de 3,5 mm du PI. Avec le panneau arrière allumé et les paramètres audio au maximum, le volume audio est correct mais pas fort. Je pourrais ajouter des haut-parleurs et un mini amplificateur dans une future mise à jour.

Enfin, j'ai branché un concentrateur USB sur le PI et j'ai pu commencer le test du module d'affichage entièrement opérationnel.

Étape 12: Assemblée finale et réflexions

Assemblage final et réflexions
Assemblage final et réflexions
Assemblage final et réflexions
Assemblage final et réflexions
Assemblage final et réflexions
Assemblage final et réflexions
Assemblage final et réflexions
Assemblage final et réflexions

Le dernier travail avant l'assemblage final était le recâblage et l'assemblage du module de commande après la peinture. Cela s'est plutôt bien passé, à part la rupture d'un fil qui a dû être ressoudé.

Avant de combiner les modules de commande et d'affichage, j'ai découpé quelques disques de film de contact adhésif transparent pour éviter que les barillets de connecteur de meuble dépassant du module de commande ne rayent la peinture du module d'affichage.

Il s'agissait alors d'une simple tâche de placer les modules et de les visser ensemble. À ce stade, l'unité de bar est entièrement terminée et prête à l'action. Il semble que ce sera la configuration préférée, donc je n'aurai pas besoin de construire le module de support pendant au moins un moment. Si et quand je le fais, je mettrai à jour ce post. Le module de support lui-même devrait être le plus simple de tous. Il s'agit essentiellement d'une simple armoire de rangement avec des trous de boulons dans le haut pour se connecter à l'unité de bar.

J'ai passé un bon moment à travailler sur ce projet avec mes enfants. Nous avons beaucoup appris et sommes maintenant impatients de jouer à de nombreux classiques de l'arcade et de la console sur la nouvelle machine. Merci d'avoir lu et dites-nous ce que vous pensez du projet dans les commentaires !

Conseillé: