Difference between revisions of "Makers game"

Line 1: Line 1:
 
{{ {{tntn|Tuto Details}}
 
{{ {{tntn|Tuto Details}}
|Main_Picture=Makers_game_makersgame.jpg
+
|Main_Picture=Makers_game_makersgame_rendu.png
 
|Licences=Attribution-ShareAlike (CC BY-SA)
 
|Licences=Attribution-ShareAlike (CC BY-SA)
 
|Description=<translate><!--T:94--> Table d'arcade pour jouer à Pong, Snake ou Tetris entre amis.</translate>
 
|Description=<translate><!--T:94--> Table d'arcade pour jouer à Pong, Snake ou Tetris entre amis.</translate>
Line 16: Line 16:
 
}}
 
}}
 
{{ {{tntn|Introduction}}
 
{{ {{tntn|Introduction}}
|Introduction=<translate><!--T:95--> Le [https://fr.wikipedia.org/wiki/Retrogaming rétro-gaming], c'est le pied ! Débarrassez la table basse de l'apéro des habituels jeux de société, et retrouvez [https://fr.wikipedia.org/wiki/Pong Pong], [https://fr.wikipedia.org/wiki/Snake_(jeu_vid%C3%A9o) Snake] et [https://fr.wikipedia.org/wiki/Tetris Tetris] dans une dimension inattendue ! Vous trouverez ici tous les conseils du [[Group:Makers' lab|Makers' lab]] pour réaliser votre propre table d'arcade. Bon fork et bon jeu !</translate>
+
|Introduction=<translate><!--T:95--> Le [https://fr.wikipedia.org/wiki/Retrogaming rétro-gaming], c'est le pied ! Débarrassez la table basse de l'apéro des habituels jeux de société, et retrouvez [https://fr.wikipedia.org/wiki/Pong Pong], [https://fr.wikipedia.org/wiki/Snake_(jeu_vid%C3%A9o) Snake] et [https://fr.wikipedia.org/wiki/Tetris Tetris] dans une dimension inattendue.</translate>
 
}}
 
}}
 
{{ {{tntn|TutoVideo}}
 
{{ {{tntn|TutoVideo}}
Line 23: Line 23:
 
}}
 
}}
 
{{ {{tntn|Materials}}
 
{{ {{tntn|Materials}}
 +
|Step_Picture_00=Makers_game_makersgame.jpg
 
|Material=<translate><!--T:96-->
 
|Material=<translate><!--T:96-->
 
* contre-plaqué d’épaisseur 10mm  
 
* contre-plaqué d’épaisseur 10mm  
Line 32: Line 33:
 
* découpeuse laser
 
* découpeuse laser
 
* pistolet à colle, papier à poncer, perceuse-visseuse, fer à souder</translate>
 
* pistolet à colle, papier à poncer, perceuse-visseuse, fer à souder</translate>
 +
|Prerequisites={{ {{tntn|Prerequisites}}
 +
|Prerequisites=Rocket kit
 +
}}
 
|Tuto_Attachments={{ {{tntn|Tuto Attachments}}
 
|Tuto_Attachments={{ {{tntn|Tuto Attachments}}
 
|Attachment=Table arcade bandeau.svg
 
|Attachment=Table arcade bandeau.svg
Line 50: Line 54:
 
|Step_Title=<translate><!--T:97--> Découper les pièces</translate>
 
|Step_Title=<translate><!--T:97--> Découper les pièces</translate>
 
|Step_Content=<translate><!--T:98-->
 
|Step_Content=<translate><!--T:98-->
Dans l’onglet fichier, '''télécharger les documents'''.
+
Dans l’onglet fichier, '''télécharger les documents'''. Et '''découper à la laser :'''
  
<!--T:189-->
+
En '''contre-plaqué de 10mm d’épaisseur''' :
'''Découper à la laser :'''
 
 
 
<!--T:190-->
 
<u>En contre-plaqué de 10mm d’épaisseur:</u>
 
 
* pieds de la table (x4)
 
* pieds de la table (x4)
 
* plateau du dessous (x1)
 
* plateau du dessous (x1)
* plateau du dessus avec pièces annexes (x1)
+
* plateau du dessus avec pièces annexes (x1) Poncer les rebords des découpes afin d’obtenir un rendu propre.<!--T:191-->
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)
  
<!--T:191-->
+
En '''PMMA''':
<u>En médium de 3mm d’épaisseur:</u>
+
* vitre de la table (x1)</translate>
* 4 x bandeaux contours de la table (médium)
 
* 1 x quadrillage intérieur (x1)</translate>
 
 
|Step_Picture_00=Makers_game_dessus.png
 
|Step_Picture_00=Makers_game_dessus.png
|Step_Picture_01=Makers_game_20170429_095129.jpg
+
|Step_Picture_01=Makers_game_pieds.png
|Step_Picture_02=Makers_game_thumb_20170429_101113_1024.jpg
+
|Step_Picture_02=Makers_game_decoupe-laser-machine.jpg
 +
}}
 +
{{ {{tntn|Tuto Step}}
 +
|Step_Title=<translate>Poncer les pièces</translate>
 +
|Step_Content=<translate>Nettoyer et poncer les pieds pour enlever les traces de brûlures. Pour poncer, faites des mouvements circulaires dans le sens du bois.</translate>
 +
|Step_Picture_00=Makers_game_thumb_20170429_101113_1024.jpg
 +
|Step_Picture_01=Makers_game_thumb_20170429_101131_1024.jpg
 +
|Step_Picture_02=Makers_game_thumb_20170429_102305_1024.jpg
 
}}
 
}}
 
{{ {{tntn|Tuto Step}}
 
{{ {{tntn|Tuto Step}}
 
|Step_Title=<translate><!--T:102--> Assembler la table</translate>
 
|Step_Title=<translate><!--T:102--> Assembler la table</translate>
 
|Step_Content=<translate><!--T:103-->
 
|Step_Content=<translate><!--T:103-->
'''Assembler les pieds:'''
+
'''Assembler les pieds :'''
 
* Nettoyer soigneusement les trous taraudés des vis.
 
* Nettoyer soigneusement les trous taraudés des vis.
 
* Visser les planches de bois deux à deux (vis de 2,5 x 20mm)
 
* 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
+
* Insérer les 4 pieds dans le plateau du dessous et visser{{Warning|Attention à ne pas abimer les encoches !}}
Attention aux encoches !
 
  
 
<!--T:192-->
 
<!--T:192-->
'''Assembler la grille:'''
+
'''Assembler la grille :'''
 
* Vous munir de patience !
 
* Vous munir de patience !
 
* Les lattes verticales et horizontales doivent être bien alignées une fois enfoncées.</translate>
 
* Les lattes verticales et horizontales doivent être bien alignées une fois enfoncées.</translate>
|Step_Picture_00=Makers_game_pieds.png
+
|Step_Picture_00=Makers_game_20170429_112425.jpg
 +
|Step_Picture_01=Makers_game_20170429_111343.jpg
 +
}}
 +
{{ {{tntn|Tuto Step}}
 +
|Step_Title=<translate>Mettre en place le bandeau</translate>
 +
|Step_Content=<translate>Emboiter les 6 cales de CP 10mm aux emplacements sur le plateau du dessous et les fixer avec des vis à bois.
 +
 
 +
Une fois les cales vissées, placer les 4 pièces découpées en amont pour les angles arrondis de la table.
 +
 
 +
Trouver le milieu de la largeur de chaque bandeau et le marquer sur la cale en bois.
 +
 
 +
Placer le flexwood à partir du milieu de la cale en bois.
 +
 
 +
Coller le flexwood (mettre de la colle à bois sur les parties ou il y a les cales).
 +
 
 +
Pour rejoindre les 2 bouts de flexwood : collez un petit bout de medium 3mm permettant de les réunir et de solidifier l’ensemble.</translate>
 +
|Step_Picture_00=Makers_game_20170429_125747.jpg
 +
|Step_Picture_01=Makers_game_20170429_121753.jpg
 +
|Step_Picture_02=Makers_game_20170429_121626.jpg
 +
|Step_Picture_03=Makers_game_20170429_125738.jpg
 +
|Step_Picture_04=Makers_game_20170429_121117.jpg
 
}}
 
}}
 
{{ {{tntn|Tuto Step}}
 
{{ {{tntn|Tuto Step}}
Line 89: Line 115:
 
|Step_Content=<translate><!--T:106-->
 
|Step_Content=<translate><!--T:106-->
 
Nous avons utilisé le [https://www.adafruit.com/product/1138 ruban de leds Adafruit Neopixel] (11 x 19 = 209 leds).
 
Nous avons utilisé le [https://www.adafruit.com/product/1138 ruban 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.
+
Couper votre ruban en '''19 rubans de 11 leds'''.
* 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.
+
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.
* '''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.
+
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.
 
{{Info|Programme disponible sur Github: [https://github.com/emlyon/arcadeTable arcadeTable_arduino]}}</translate>
 
{{Info|Programme disponible sur Github: [https://github.com/emlyon/arcadeTable arcadeTable_arduino]}}</translate>
|Step_Picture_00=Makers_game_decoupe-laser-machine.jpg
+
|Step_Picture_00=Makers_game_20170429_112533.jpg
 +
|Step_Picture_01=Makers_game_20170429_112550.jpg
 +
|Step_Picture_02=Makers_game_20170429_141513.jpg
 +
|Step_Picture_03=Makers_game_20170429_115210.jpg
 
}}
 
}}
 
{{ {{tntn|Tuto Step}}
 
{{ {{tntn|Tuto Step}}
 
|Step_Title=<translate><!--T:108--> Programmer la Raspberry Pi 1</translate>
 
|Step_Title=<translate><!--T:108--> Programmer la Raspberry Pi 1</translate>
 
|Step_Content=<translate><!--T:109-->
 
|Step_Content=<translate><!--T:109-->
* Télécharger et copier l’image sur la Raspberry Pi en utilisant [https://etcher.io/ Etcher.io]
+
'''Installer le système de la Raspberry Pi''':
* Installer les jeux</translate>
+
 
|Step_Picture_00=Makers_game_20170429_095129.jpg
+
Télécharger et copier l’image de [https://downloads.raspberrypi.org/raspbian_lite_latest Raspbian Stretch Lite] sur votre Raspberry Pi en utilisant [https://etcher.io/ Etcher.io].
 +
 
 +
Vous pouvez suivre le guide [https://www.raspberrypi.org/documentation/installation/installing-images/README.md installing operating system images] pour plus de détails.
 +
 
 +
Démarrer votre Raspberry Pi avec un clavier, un câble ethernet relié à votre box internet et un écran branchés.
 +
 
 +
( identifiant par défaut: pi / mot de passe: raspberry )
 +
 
 +
Une fois identifié, vous pouvez taper: <code>sudo raspi-config</code> pour configurer la langue du clavier ( en français: http://www.tropfacile.net/doku.php/raspberry-pi/comment-passer-votre-raspberry-en-francais )
 +
 
 +
Installez openFrameworks en suivant le guide suivant: [http://openframeworks.cc/setup/raspberrypi/raspberry-pi-getting-started/ Getting your Raspberry Pi ready for openFrameworks]
 +
 
 +
Une fois openFrameworks installé et testé, vous pouvez maintenant télécharger le code des jeux et le compiler:
 +
<code>cd /home/pi/openFrameworks/apps/myApps/
 +
git clone <nowiki>https://github.com/emlyon/makers-game-code.git</nowiki>
 +
make</code>
 +
Ne lancez pas le programme maintenant: si l'Arduino n'est pas branchée, le programme ne peut pas fonctionner.
 +
 
 +
Pour que le jeu se lance automatiquement au démarrage, éditez le fichier <code>rc.local</code>:
 +
<code>sudo nano /etc/rc.local</code>
 +
Et ajouter avant la ligne <code>exit</code>:
 +
<code>su pi -c 'cd /home/pi/openFrameworks/apps/myApps/makers-game-code && make run'</code>
 +
Faites <code>Ctrl+x</code> pour quitter, puis <code>y</code> pour sauvegarder.</translate>
 +
|Step_Picture_00=Makers_game_Tourn_gauche.jpg
 
}}
 
}}
 
{{ {{tntn|Tuto Step}}
 
{{ {{tntn|Tuto Step}}
 
|Step_Title=<translate><!--T:110--> Installer les boutons d’arcade</translate>
 
|Step_Title=<translate><!--T:110--> Installer les boutons d’arcade</translate>
 +
 
|Step_Content=<translate><!--T:111-->
 
|Step_Content=<translate><!--T:111-->
Utiliser une plaque de prototype pour réaliser vos soudures.
+
'''Préparer les boutons''' :
 +
* Souder des fils électriques sur les pins des boutons: 10 fils de 100cm 'pour les 5 boutons du "Player 2" 10 de 25 cm (pour les 5 boutons du "Player 1"
 +
* Fixer les boutons sur le dessus de la table. Pour cela: Retirer l'écrou. Couper l'anneau en deux points afin d'en retirer à peu près 1/3. Placer le bouton dans le trou prévu pour le revoir et le fixer en serrant l'anneau par dessous.</translate>
 +
|Step_Picture_00=Makers_game_20170429_135807.jpg
 +
|Step_Picture_01=Makers_game_20170429_135734.jpg
 +
|Step_Picture_02=Makers_game_20170429_135747.jpg
 +
}}
 +
{{ {{tntn|Tuto Step}}
 +
|Step_Title=<translate>Réaliser le montage électronique</translate>
 +
|Step_Content=<translate>Utiliser une plaque de prototype pour réaliser vos soudures.
  
<!--T:193-->
+
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 ».
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 ».
 
  
<!--T:194-->
 
 
Utiliser des cables male - femelle pour les pins destinées à être connectées au Raspberry Pi.
 
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''
+
Utiliser des cables male - male pour les pins destinées à être connectées sur l'Arduino Uno.
* ''Player 1 - LEFT button: pin 10''
+
 
* ''Player 1 - RIGHT button: pin 9''
+
'''Ne pas oublier''' de :
* ''Player 1 - RESET button: pin 11''
+
 
* ''Player 2 - UP button: pin 4''
+
Connecter l'Arduino Uno à la Raspberry Pi à l'aide d'un cable USB-USB.
* ''Player 2 - DOWN button: pin 17''
+
 
* ''Player 2 - LEFT button: pin 18''
+
Alimenter la Raspberry pi à l'aide d'un cable micro-USB: brancher la micro-USB à la Raspberry pi et dénuder l'autre côté afin de connecter les fils au condensateur.</translate>
* ''Player 2 - RIGHT button: pin 27''
+
|Step_Picture_00=Makers_game_plan_makers_game.jpg
* ''Player 2 - RESET button: pin 22''</translate>
+
}}
|Step_Picture_00=Atom_welcome.png
+
{{ {{tntn|Tuto Step}}
 +
|Step_Title=<translate>Branchements des 10 boutons sur la Raspberry Pi</translate>
 +
|Step_Content=<translate>Voici les '''branchements des 10 boutons sur la 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
 +
 
 +
'''[http://opensourceforu.com/wp-content/uploads/2017/06/Figure-1-Raspberry-Pi-pinout-diagram.jpg Raspberry Pi pinout]'''</translate>
 +
|Step_Picture_00=Makers_game_18191420_10213168765520500_2103967889_n.jpg
 +
|Step_Picture_01=Makers_game_18253865_10213168765720505_1710207909_n.jpg
 
}}
 
}}
 
{{ {{tntn|Tuto Step}}
 
{{ {{tntn|Tuto Step}}
Line 141: Line 233:
 
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.</translate>
 
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.</translate>
 
|Step_Picture_00=Makers_game_main2.png
 
|Step_Picture_00=Makers_game_main2.png
|Step_Picture_01=Makers_game_index.html.png
+
|Step_Picture_01=Makers_game_snake.png
 
|Step_Picture_02=Makers_game_main.png
 
|Step_Picture_02=Makers_game_main.png
 
|Step_Picture_03=Makers_game_p5.png
 
|Step_Picture_03=Makers_game_p5.png
Line 149: Line 241:
 
|Step_Content=<translate><!--T:118--> 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.</translate>
 
|Step_Content=<translate><!--T:118--> 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.</translate>
 
|Step_Picture_00=Makers_game_snake.png
 
|Step_Picture_00=Makers_game_snake.png
}}
 
{{ {{tntn|Tuto Step}}
 
|Step_Title=<translate><!--T:119--> Ponçage</translate>
 
|Step_Content=<translate><!--T:120--> Nettoyer et poncer les pieds pour enlever les traces de brûlures. Pour poncer, faites des mouvements circulaires dans le sens du bois.</translate>
 
|Step_Picture_00=Makers_game_thumb_20170429_101113_1024.jpg
 
|Step_Picture_01=Makers_game_thumb_20170429_101131_1024.jpg
 
|Step_Picture_02=Makers_game_thumb_20170429_102305_1024.jpg
 
}}
 
{{ {{tntn|Tuto Step}}
 
|Step_Title=<translate><!--T:121--> Assemblage de la table</translate>
 
|Step_Content=<translate><!--T:122-->
 
Préparer les pieds de table. Nettoyer soigneusement les trous taraudés des vis qui servent de jonction pour l’assemblage des pieds.  
 
 
<!--T:123-->
 
Visser les planches de bois deux à deux pour fabriquer les pieds de la table.
 
 
<!--T:124-->
 
Insérer les 4 pieds de la table sur le socle.
 
 
<!--T:195-->
 
{{Warning|Attention à ne pas casser les encoches !}}</translate>
 
|Step_Picture_00=Makers_game_20170429_103951.jpg
 
|Step_Picture_01=Makers_game_20170429_104015.jpg
 
|Step_Picture_02=Makers_game_20170429_104840.jpg
 
|Step_Picture_03=Makers_game_20170429_105418.jpg
 
|Step_Picture_04=Makers_game_20170429_111343.jpg
 
|Step_Picture_05=Makers_game_20170429_112425.jpg
 
}}
 
{{ {{tntn|Tuto Step}}
 
|Step_Title=<translate><!--T:126--> Placement du ruban de LED</translate>
 
|Step_Content=<translate><!--T:127-->
 
Placer la bande de LED entre chaque ligne de perçage.
 
 
<!--T:128-->
 
Faire en sorte que chaque LED soit à peu près au milieu de chaque case.
 
 
<!--T:129-->
 
Attention les câbles doivent passer entre les encoches supérieures des pieds de la table.
 
 
<!--T:130-->
 
Vérifier que toutes les soudures ont bien été effectuées !</translate>
 
|Step_Picture_00=Makers_game_20170429_112533.jpg
 
|Step_Picture_01=Makers_game_20170429_112550.jpg
 
|Step_Picture_02=Makers_game_20170429_113209.jpg
 
|Step_Picture_03=Makers_game_20170429_120206.jpg
 
}}
 
{{ {{tntn|Tuto Step}}
 
|Step_Title=<translate><!--T:131--> Mise en place de la grille</translate>
 
|Step_Content=<translate><!--T:132-->
 
Positionner la grille
 
 
<!--T:133-->
 
Vérifier que toutes les LED soient toujours bien en place.
 
 
<!--T:134-->
 
Ensuite, enfoncer la grille ligne par ligne .
 
 
<!--T:135-->
 
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
 
 
<!--T:136-->
 
Visser la grille avec les encoches supérieure des pieds de la table.</translate>
 
|Step_Picture_00=Makers_game_20170429_114121.jpg
 
|Step_Picture_01=Makers_game_20170429_114129.jpg
 
|Step_Picture_02=Makers_game_20170429_115210.jpg
 
 
}}
 
}}
 
{{ {{tntn|Tuto Step}}
 
{{ {{tntn|Tuto Step}}
Line 263: Line 290:
 
|Step_Picture_01=Makers_game_20170429_124445.jpg
 
|Step_Picture_01=Makers_game_20170429_124445.jpg
 
|Step_Picture_02=Makers_game_20170429_124451.jpg
 
|Step_Picture_02=Makers_game_20170429_124451.jpg
}}
 
{{ {{tntn|Tuto Step}}
 
|Step_Title=<translate><!--T:151--> Assemblage des boutons</translate>
 
|Step_Content=<translate><!--T:152-->
 
•    Placer les boutons dans les trous du socle supérieure.
 
 
<!--T:153-->
 
•    Couper les anneaux métallique (environ 1/3).
 
 
<!--T:154-->
 
•    Insérer les anneaux autour des boutons (l’objectif est de caler les boutons par rapport à la planche).</translate>
 
|Step_Picture_00=Makers_game_20170429_135603.jpg
 
|Step_Picture_01=Makers_game_20170429_135707.jpg
 
|Step_Picture_02=Makers_game_20170429_135734.jpg
 
|Step_Picture_03=Makers_game_20170429_135747.jpg
 
|Step_Picture_04=Makers_game_20170429_135807.jpg
 
 
}}
 
}}
 
{{ {{tntn|Tuto Step}}
 
{{ {{tntn|Tuto Step}}
Line 371: Line 382:
 
|Step_Picture_02=Makers_game_18216930_10213168764960486_41233358_n.jpg
 
|Step_Picture_02=Makers_game_18216930_10213168764960486_41233358_n.jpg
 
|Step_Picture_03=Makers_game_18253865_10213168765720505_1710207909_n.jpg
 
|Step_Picture_03=Makers_game_18253865_10213168765720505_1710207909_n.jpg
 +
}}
 +
{{ {{tntn|Tuto Step}}
 +
|Step_Title=<translate>Résultat final</translate>
 +
|Step_Content=<translate>Vous êtes arrivé à bout, bien joué !</translate>
 +
|Step_Picture_00=Makers_game_makersgame_rendu.png
 
}}
 
}}
 
{{ {{tntn|Notes}}
 
{{ {{tntn|Notes}}
 
|Notes=<translate><!--T:186-->
 
|Notes=<translate><!--T:186-->
Site du makers' lab d'emlyon business school : http://makerslab.em-lyon.com/
+
Une création du [[Group:Makers' lab|Makers'lab emlyon]] à retrouver aussi sur [https://github.com/emlyon/makers-game github.com/emlyon/makers-game].</translate>
 
 
<!--T:188-->
 
La vidéo du Bootcamp : https://youtu.be/QJow042pSI0</translate>
 
 
}}
 
}}
 
{{ {{tntn|Tuto Status}}
 
{{ {{tntn|Tuto Status}}
 
|Complete=Published
 
|Complete=Published
 
}}
 
}}

Revision as of 10:31, 12 July 2018

Author avatarmakers' lab | Last edit 9/12/2019 by Clementflipo

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.

Video overview

Materials

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

Tools

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

Step 1 - Découper les pièces

Dans l’onglet fichier, télécharger les documents. Et 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)

En PMMA:

  • vitre de la table (x1)


Step 2 - Poncer les pièces

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


Step 3 - 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 à ne pas abimer les encoches !

Assembler la grille :

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



Step 4 - Mettre en place le bandeau

Emboiter les 6 cales de CP 10mm aux emplacements sur le plateau du dessous et les fixer avec des vis à bois.

Une fois les cales vissées, placer les 4 pièces découpées en amont pour les angles arrondis de la table.

Trouver le milieu de la largeur de chaque bandeau et le marquer sur la cale en bois.

Placer le flexwood à partir du milieu de la cale en bois.

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

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

Step 5 - Préparer et installer le ruban de LED

Nous avons utilisé le ruban 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.

Programme disponible sur Github: arcadeTable_arduino


Step 6 - Programmer la Raspberry Pi 1

Installer le système de la Raspberry Pi:

Télécharger et copier l’image de Raspbian Stretch Lite sur votre Raspberry Pi en utilisant Etcher.io.

Vous pouvez suivre le guide installing operating system images pour plus de détails.

Démarrer votre Raspberry Pi avec un clavier, un câble ethernet relié à votre box internet et un écran branchés.

( identifiant par défaut: pi / mot de passe: raspberry )

Une fois identifié, vous pouvez taper: sudo raspi-config pour configurer la langue du clavier ( en français: http://www.tropfacile.net/doku.php/raspberry-pi/comment-passer-votre-raspberry-en-francais )

Installez openFrameworks en suivant le guide suivant: Getting your Raspberry Pi ready for openFrameworks

Une fois openFrameworks installé et testé, vous pouvez maintenant télécharger le code des jeux et le compiler:

cd /home/pi/openFrameworks/apps/myApps/
git clone https://github.com/emlyon/makers-game-code.git
make

Ne lancez pas le programme maintenant: si l'Arduino n'est pas branchée, le programme ne peut pas fonctionner.

Pour que le jeu se lance automatiquement au démarrage, éditez le fichier rc.local:

sudo nano /etc/rc.local

Et ajouter avant la ligne exit:

su pi -c 'cd /home/pi/openFrameworks/apps/myApps/makers-game-code && make run'

Faites Ctrl+x pour quitter, puis y pour sauvegarder.




Step 7 - Installer les boutons d’arcade

Préparer les boutons :

  • Souder des fils électriques sur les pins des boutons: 10 fils de 100cm 'pour les 5 boutons du "Player 2" 10 de 25 cm (pour les 5 boutons du "Player 1"
  • Fixer les boutons sur le dessus de la table. Pour cela: Retirer l'écrou. Couper l'anneau en deux points afin d'en retirer à peu près 1/3. Placer le bouton dans le trou prévu pour le revoir et le fixer en serrant l'anneau par dessous.


Step 8 - Réaliser le montage électronique

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.

Utiliser des cables male - male pour les pins destinées à être connectées sur l'Arduino Uno.

Ne pas oublier de :

Connecter l'Arduino Uno à la Raspberry Pi à l'aide d'un cable USB-USB.

Alimenter la Raspberry pi à l'aide d'un cable micro-USB: brancher la micro-USB à la Raspberry pi et dénuder l'autre côté afin de connecter les fils au condensateur.




Step 9 - Branchements des 10 boutons sur la Raspberry Pi

Voici les branchements des 10 boutons sur la 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

Raspberry Pi pinout



Step 10 - 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.


Step 11 - 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.




Step 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.




Step 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

Step 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.


Step 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.


Step 16 - 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)


Step 17 - 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.


Step 18 - Résultat final

Vous êtes arrivé à bout, bien joué !




Notes and references

Une création du Makers'lab emlyon à retrouver aussi sur github.com/emlyon/makers-game.

Comments

Published