Makers game

De Wikifab

Une Technique de avatarmakers' lab dans les catégories Art, Mobilier, Jeux & Loisirs | Dernière modification le 20/03/2018 par Maker Early Maker.

Makers game makersgame.jpg

Introduction

Le rétro-gaming, c'est le pied ! Débarrassez la table basse de l'apéro des habituels jeux de société, et retrouvez Pong, Snake et Tetris dans une dimension inattendue ! Vous trouverez ici tous les conseils du Makers' lab pour réaliser votre propre table d'arcade. Bon fork et bon jeu !

Video d'introduction

Matériaux

  • contre-plaqué d’épaisseur 10mm
  • médium d'épaisseur 3mm
  • Arduino, carte epoxy
  • Raspberry Pi 1
  • ruban de LED

Outils

  • découpeuse laser
  • pistolet à colle, papier à poncer, perceuse-visseuse, fer à souder

Étape 1 - Découper les pièces

Dans l’onglet fichier, télécharger les documents.

Découper à la laser :

En contre-plaqué de 10mm d’épaisseur:

  • pieds de la table (x4)
  • plateau du dessous (x1)
  • plateau du dessus avec pièces annexes (x1)

Poncer les rebords des découpes afin d’obtenir un rendu propre.

En médium de 3mm d’épaisseur:

  • 4 x bandeaux contours de la table (médium)
  • 1 x quadrillage intérieur (x1)


Étape 2 - Assembler la table

Assembler les pieds:

  • Nettoyer soigneusement les trous taraudés des vis.
  • Visser les planches de bois deux à deux (vis de 2,5 x 20mm)
  • Insérer les 4 pieds dans le plateau du dessous et visser

Attention aux encoches !

Assembler la grille:

  • Vous munir de patience !
  • Les lattes verticales et horizontales doivent être bien alignées une fois enfoncées.



Étape 3 - Préparer et installer le ruban de LED

Nous avons utilisé leruban de leds Adafruit Neopixel (11 x 19 = 209 leds).

  • Couper votre ruban en 19 rubans de 11 leds.
  • Souder les extrémités de vos rubans de façon à réaliser un « serpent » (cf. photo): GND - GND /  DIN - DOUT / 5V - 5V. Attention: la longueur de vos fils doit être suffisante pour pouvoir disposer les leds comme sur la photo.
  • Une fois les soudures réalisées, les fixer avec un point de pistolet à colle.
  • Placer le ruban LED sur la table. Faire en sorte que chaque LED soit à peu près au milieu de chaque case de la grille. Les câbles doivent pouvoir passer entre les encoches supérieures des pieds de la table.
  • Tester les soudures de votre ruban à l’aide de l’Arduino Uno. Pour cela, nous utilisons l’exemple « Simple » de la librairie « Adafruit Neopixel ».
  • Une fois testé, disposer parfaitement votre ruban de legs et enfoncer la grille dans le plateau du dessous de la table.
  • Téléverser le programme disponible sur Github: « arcadeTable_arduino » // https://github.com/emlyon/arcadeTable



Étape 4 - Programmer la Raspberry Pi 1

  • Télécharger et copier l’image sur la Raspberry Pi en utilisantEtcher.io
  • Installer les jeux

A COMPLETER



Étape 5 - Installer les boutons d’arcade

Utiliser une plaque de prototype pour réaliser vos soudures.

Attention: l’Arduino Uno, la Raspberry Pi et l’alimentation seront du côté du « Player 1 ». Il faut donc une certaine longueur de fil pour les boutons d’arcade du « Player 2 ».

Utiliser des cables male - femelle pour les pins destinées à être connectées au Raspberry Pi.

  • Player 1 - UP button: pin 23
  • Player 1 - DOWN button: pin 24
  • Player 1 - LEFT button: pin 10
  • Player 1 - RIGHT button: pin 9
  • Player 1 - RESET button: pin 11
  • Player 2 - UP button: pin 4
  • Player 2 - DOWN button: pin 17
  • Player 2 - LEFT button: pin 18
  • Player 2 - RIGHT button: pin 27
  • Player 2 - RESET button: pin 22



Étape 6 - Programmation du jeu "Pong" – JavaScript

Utilisation du langage html, qui permet de structurer une page web. C'est le langage de programmation le moins difficile à utiliser. Dans le dossier joint Pong, voir le fichier index.html qui permet de relier les différents fichiers utilisés par la suite (main.css, main2.css et p5.js).

La bibliothèque p5 nous a permis d'utiliser certaines fonctions. Nous avons téléchargé le fichier p5.js sur https://p5js.org/ / Download / Single Files / p5.js. Cette bibliothèque est utilisée telle quelle, sans modification préalable.

Dans le fichier main.css, nous définissons la marge du corps (body) se référant à l'index.

Le fichier main2.js contient les instructions utilisées pour programmer le jeu Pong. Consultez les commentaires du fichier afin de mieux comprendre le fonctionnement de celui-ci.

Étape 7 - Programmation du jeu "Snake" – Python

Nous avons ici utilisé Python, qui est un logiciel de programmation différent de JavaScript. Sur le fichier snake.py, nous avons commencé par importer toutes les librairies nécessaires (sys, os, pygame, pygame.locals, randint). Pour la suite de la programmation, nous vous laissons observer et comprendre les commentaires que nous avons insérés dans le fichier.



Étape 8 - Ponçage

Nettoyer et poncer les pieds pour enlever les traces de brûlures. Pour poncer, faites des mouvements circulaires dans le sens du bois.


Étape 9 - Assemblage de la table

Préparer les pieds de table. Nettoyer soigneusement les trous taraudés des vis qui servent de jonction pour l’assemblage des pieds.  

Visser les planches de bois deux à deux pour fabriquer les pieds de la table.

Insérer les 4 pieds de la table sur le socle.

Attention à ne pas casser les encoches !

Étape 10 - Placement du ruban de LED

Placer la bande de LED entre chaque ligne de perçage.

Faire en sorte que chaque LED soit à peu près au milieu de chaque case.

Attention les câbles doivent passer entre les encoches supérieures des pieds de la table

Vérifier que toutes les soudures ont bien été effectuées !

Étape 11 - Mise en place de la grille

Positionner la grille

Vérifier que toutes les LED soient toujours bien en place.

Ensuite, enfoncer la grille ligne par ligne .

Si la bande de LED ne se trouve pas bien centrée dans les encoches, vous risquez de ne pas pouvoir enfoncer la grille et abîmer le plastique des LED

Visser la grille avec les encoches supérieure des pieds de la table.


Étape 12 - Mettre un léger point de colle avec le pistolet à colle sur les fils extérieure à la grille

Ne pas mettre le pistolet trop près car cela risque de faire fondre les fils.



Étape 13 - Réalisation du contour de la table

Positionnement des cales. Placer les 6 cales rectangulaires permettant de faire le bord de la table et les visser. Ils serviront plus tard à coller le flexwood.

•    2 cales de part et d’autre sur la largeur du rectangle

•    4 cales (2 de chaque côté) sur la longueur

•    placer les 4 coins arrondies

Étape 14 - Coller le flexwood

Trouver le milieu de la largeur et notez-le sur la cale en bois.

Placer le flewood à partir du milieu de la cale en bois

Coller le flexwood (mettre de la colle sur les parties ou il y a les cales).

Pour rejoindre les 2 bouts de flexwood : collez un petit bout de bois permettant de les réunir et de solidifier l’ensemble.


Étape 15 - Percer un trou pour faire passer les fils électriques

Le trou doit se situer sur la longueur du coté où vous choisirez de mettre le joueur 1.


Étape 16 - Assemblage des boutons

•    Placer les boutons dans les trous du socle supérieure.

•    Couper les anneaux métallique (environ 1/3).

•    Insérer les anneaux autour des boutons (l’objectif est de caler les boutons par rapport à la planche).

Étape 17 - Connexion des 10 boutons avec les GPIO

- Prenez 14 câbles que vous couperez en 2.

- Séparez en deux catégories les câbles: 12 câbles femelles et 11 câbles mâles

- Dénudez le bout des câbles pour pouvoir les étamer

- Prenez une carte epoxy

- Mettez de l'étain sur chaque rangée de la carte pour venir ensuite souder les câbles

- Soudez les câbles femelles sur la carte epoxy

- Afin de simplifier les connexions, mettre un ground et un 5v communs aux boutons, des circuits avec résistances 10Kohm sont réalisés sur des cartes de prototypage.

- On a relié les lignes de câbles qui sont sur la carte epoxy avec la ligne correspondant au ground avec une résistance 10 kohm.

- Sur la rangée libre de la carte epoxy brancher les câbles mâles sauf sur la rangée ground.

- Coupez tous les fils qui dépassent des soudures.

- Reliez chaque câble mâle sur un Domino.

- Sur les trois dominos : il y en avait un relié à un 5volt, il y en avait un relié aux 5 câbles pour les boutons du player 1 et le dernier reliés aux 5 câbles pour les 5 boutons du player 2.

- Passez les résistances à travers le Domino et venir souder chacune des extrémités (voir photo)

-Une fois le ground soudé, le connecter au rasspberry via ….

-Connecter le RB au ARDUINO UNO via USB Serial ( cf photo)


Étape 18 - Installation des éléments électroniques de la table

-Disposez les bandes de LED de manière régulière dans les axes définis afin que chaque bande passe à travers les trous du quadrillage.

-Coller le quadrillage à ses 4 extrémités une fois disposé. Collez aussi les fils des led sur le plateau de bois

-Faites sortir la sortie des LED en faisant attention à ne pas tirer sur les câbles

-Connectez via domino le ARDUINO UNO

- Une fois les côtés Player 1 et Player 2 définis, posez l'Arduino et le RB du côté du Player 1.

- Faites glisser les fils connectés aux boutons à travers les trous qui y sont destinés

- Coupez la moitié des fils du côté du Player 1 et dénudez les afin de gagner en ergonomie.

- Décollez chaque paire de fil. Pour chaque paire, prenez un des deux fils et reliez-le à un domino. Rajoutez un fil supplémentaire au domino (il sera connecté au 5V). Faites cela de chaque côté.

- Branchez les fils restants au RB aux emplacements correspondants. Assurez vous de bien respecter les emplacements des fils que vous avez défini auparavant, sans quoi les boutons ne marcheront pas comme vous le souhaitez !

- Insérez la carte SD chargée du jeu.

- Branchez la table afin de vous assurer que tous les LED fonctionnent.

- Vérifiez que le jeu et les boutons fonctionnent avant de refermer la table.

Notes et références

Site du makers' lab d'emlyon business school : http://makerslab.em-lyon.com/

La vidéo du Bootcamp : https://youtu.be/QJow042pSI0 Yes