Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Console de jeu Arduino Pocket + A-Maze - Maze Game

Composants et fournitures

SSD1306 OLED
× 1
SparkFun Arduino Pro Mini 328 - 5V/16MHz
× 1
Interrupteur à bouton-poussoir SparkFun 12mm
× 7
Support de pile bouton
× 2
Commutateur à glissière
× 1
PCb prototype 4x6 mm
× 1

À propos de ce projet

Bienvenue dans mon premier tutoriel !

Le projet que je souhaite partager avec vous aujourd'hui est le jeu de labyrinthe Arduino, qui est devenu une console de poche aussi performante qu'Arduboy et des consoles similaires basées sur Arduino. Il peut être flashé avec mes (ou vos) futurs jeux grâce à l'en-tête ICSP exposé.

J'ai eu l'idée il y a quelques mois de créer un jeu de labyrinthe sur Arduino, mais sans ensemble de labyrinthes codés en dur. Il devrait être capable de générer un nouveau labyrinthe pour chaque niveau auquel vous jouez, ainsi vous ne verrez plus jamais le même labyrinthe :)

Le codage était un peu un défi, car Arduino est limité en mémoire RAM, puis j'ai trouvé quelques exemples de la façon dont cela peut être fait avec un simple algorithme Bo-Taoshi.

Code que j'ai utilisé comme point de départ que j'ai repris par SANUKI UDON et son projet COMMENT FAIRE UN GÉNÉRATEUR DE LABYRINTHE EN UTILISANT ATTINY13A

Étape 1 : prototypage de la planche à pain

Mon point de départ était avec une petite planche à pain avec seulement 4 boutons connectés pour se déplacer dans le labyrinthe, mais plus tard, quand j'ai décidé que ce devrait être une console de jeu, j'ai ajouté quelques boutons supplémentaires. Sur une plus grande maquette, vous pouvez voir 2 autres boutons, et plus tard j'en ai ajouté un troisième à utiliser comme bouton de démarrage/pause/menu

Étape 2 : pièces nécessaires

  • Puce Arduino pro mini / Arduino Uno / Atmega328P
  • Prise DIP 28 broches (en option)
  • Écran OLED SSD1306
  • Enceinte piézo
  • Boutons poussoirs - 7 pièces
  • Supports de pile bouton
  • Interrupteur à bascule
  • Fils
  • Prototype de circuit imprimé (60 x 40 mm)

Étape 3 : Câblage de la planche à pain/Schéma

Connexion des composants comme indiqué dans le schéma ci-dessus.

Boutons :

  • Bouton UP :broche 7 de l'Arduino
  • Bouton BAS :broche Arduino 6
  • Bouton GAUCHE :broche Arduino 9
  • Bouton DROIT :broche Arduino 8
  • Bouton A :broche 5 de l'Arduino
  • Bouton B :broche Arduino 4
  • Bouton START :broche Arduino 2

Écran OLED SSD1306 :

  • SCL :broche Arduino A5
  • SDA :broche Arduino A4
  • VCC :Arduino VCC
  • GND :Arduino GND

Avertisseur :

  • Buzzer positif :broche 3 de l'Arduino
  • Buzzer masse :Arduino GND

Étape 4 : Code source

Le code source du jeu A-Maze peut être trouvé ici :https://github.com/alojzjakob/A-Maze

Ouvrez dans Arduino IDE et téléchargez sur votre carte ou utilisez le programmeur ISP pour programmer votre puce.

Je recommande d'utiliser USBTIny ISP, je n'ai jamais eu de problèmes avec :) mais vous pouvez également utiliser un Arduino ordinaire pour programmer votre puce.

Dans mon cas, je n'ai pas utilisé de cristal externe, donc ma puce Atmega328p fonctionne sur un oscillateur interne de 8MhZ.

Pour plus d'informations, visitez ce lien :https://www.arduino.cc/en/Tutorial/ArduinoToBreadboard.

Étape 5 : le voir en action

Étape 6 : boîtier et miniaturisation

Si vous voulez rendre ce projet permanent, avec un joli boîtier, voici le simple boîtier imprimable en 3D que j'ai conçu :https://www.thingverse.com/thing:2851100

Dans les images ci-dessus, vous pouvez voir comment tous les composants sont disposés sur le prototype de PCB 4x6.

La plupart des câbles des boutons passent sous les supports de batterie, essayez de le rendre aussi simple que possible, de sorte que les supports de batterie puissent avoir un ajustement relativement affleurant au-dessus de la carte avec des fils entre les deux.

Je recommande également de faire d'autres câblages sous l'écran, car les pattes de la puce Atmega sont soudées et exposées sous l'écran. Lorsque vous avez terminé de souder, placez du ruban isolant sous l'écran pour éviter les courts-circuits, etc.

L'en-tête ICSP est facultatif, et si vous décidez de ne pas l'exposer, cela rendra votre assemblage beaucoup plus facile, 6 connexions de moins à prendre en charge, mais programmez d'abord la puce avant de la souder, ou utilisez une prise DIP à 28 broches pour que vous puissiez facilement retirer la puce pour la programmation.

Code

Github
https://github.com/alojzjakob/A-Mazehttps://github.com/alojzjakob/A-Maze

Pièces et boîtiers personnalisés

Thingverse
https://www.thingverse.com/thing:2851100CAD fichier sur thingverse.com

Schémas


Processus de fabrication

  1. Console d'édition Photoshop DIY utilisant Arduino Nano RP 2040
  2. Jeu de gyroscope Arduino avec MPU-6050
  3. Console de jeu portable TeleBall Retro
  4. Console de jeu portable | Clone Arduboy
  5. Jeu Arduino Pong - Écran OLED
  6. Contrôleur de jeu Arduino
  7. Jeu Arduino Pong sur matrice 24x16 avec MAX7219
  8. Arduino Touch Breakout Game
  9. Giant Animatronics Lego Minfig Operation Game