Table des matières

Pong IRL

Membres

Alexandre Janin

alexandrejanin92@gmail.com

Description

Le but de ce projet est de recréer le jeu vidéo Pong “en vrai”.

Le jeu se joue à deux joueurs: chacun contrôle une raquette, de chaque côté de l'écran. Le but est d'envoyer la balle de l'autre côté de l'écran.

Pong

Initialement, l'idée était de représenter à la fois la balle et les raquettes avec des objets physiques, mais par contrainte de temps j'ai décidé de représenter la balle sur un écran d'ordinateur et d'utiliser des raquettes physiques de chaque coté de cet écran.

Matériel nécessaire

Code source

Les fichers source pour Arduino et Processing sont disponibles sur github.com/alexandrejanin/pong_irl

Montage

Le capteur branché sur le pin `SHT_LOX1` (7 par défaut, à droite sur le schéma) doit être placé en haut à gauche de l'écran.

Le capteur branché sur le pin `SHT_LOX2` (6 par défaut, à gauche sur le schéma) doit être placé en haut à droite de l'écran.

Branchements

Placement des capteurs en haut de l'écran (le carton sert à ajouter une marge entre les capteurs et le haut de l'écran car les capteurs perdent en précision si l'objet est trop proche)

Placement des capteurs en haut de l'écran

Branchements derrière l'écran

Branchements derrière l'écran

Utilisation du programme

La taille de la raquette utilisée, en millimètres, doit être fixée dans la variable `paddleHeight` de `pong_irl.pde`.

Au lancement du programme, il faut calibrer les capteurs pour que le programme établisse une relation entre distance des capteurs et taille de l'écran.

Pour calibrer les capteurs, il faut aligner le haut de la raquette de droite avec le haut de l'écran, cliquer sur le bouton “Haut Droite”, puis l'aligner avec le bas de l'écran et cliquer sur le bouton “Bas Droite”, puis pareil pour la raquette de gauche.

Journal de bord

Vendredi 25 octobre 2019

J'ai effectué des tests avec un moteur pas-a-pas et un shield, en contrôlant la rotation du moteur avec des boutons poussoir.

Vendredi 8 novembre 2019

J'ai essayé de faire fonctionner deux moteurs pas-a-pas simultanément mais sans succès.

J'ai effectué mes premiers tests avec les capteurs de distance que j'utiliserai pour les raquettes.

Vendredi 15 Novembre 2019

Par contrainte de temps, j'ai du abandonner l'idée de la balle physique et me concentrer sur les raquettes, en affichant la balle sur un écran d'ordinateur (avec le logiciel Processing).

J'ai pu connecter deux capteurs laser à l'Arduino grâce a la bibliothèque Adafruit_VL53L0X, en adaptant leur exemple d'utilisation de deux capteurs laser en même temps.

Sur Processing, j'ai pu créer un programme qui lit les données de distance fournies par l'Arduino, il ne reste plus qu'a les utiliser pour le fonctionnement du jeu !

Vendredi 22 Novembre 2019

J'ai complété le programme Processing. Le jeu est jouable: calibration des détecteurs, détection des raquettes, physique de la balle, système de score.

La détection des raquettes pourrait encore être améliorée.