Table des matières:
- Étape 1: Développer le modèle de travail
- Étape 2: Rassembler les composants
- Étape 3: Génération d'obstacles: Partie A
- Étape 4: Génération d'obstacles: Partie B
- Étape 5: Le SAUT et le RÉSULTAT
- Étape 6: Bon jeu
Vidéo: Dot Jump Game (sans utiliser Arduino): 6 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:07
Aperçu
Salut! Je suis Shivansh, étudiant à IIIT-Hyderabad. Je suis ici avec mon premier instructable qui est un jeu inspiré du jeu Dinosaur Jump de Google Chrome. Le jeu est simple: sautez à travers les obstacles entrants afin de marquer un point. Si vous entrez en collision, vous perdez et le score se réinitialise.
La caractéristique principale de ce projet est qu'il n'y a pas d'utilisation d'un Arduino ou de tout autre microcontrôleur. Il est purement dérivé de composants électriques de base et implique la mise en œuvre de machines à états finis (FSM) à l'aide de schémas logiques, etc.
Intéressé? Commençons.
Conditions préalables:
- Connaissances de base sur les composants électriques tels que les résistances, les condensateurs, les circuits intégrés (CI).
- Connaissance de base des portes logiques (ET, OU, NON, etc.)
- Connaissance du fonctionnement de Flip-Flop, Counter, Multiplexer, etc.
REMARQUE: les conditions préalables énumérées ci-dessus permettent de comprendre l'ensemble du fonctionnement du projet. Celui qui n'a pas une connaissance approfondie de la même chose peut également construire le projet en suivant les étapes de l'instructable.
Étape 1: Développer le modèle de travail
La première tâche consiste à créer un modèle de travail pour le projet. Ce n'est qu'alors que nous pouvons décider des matériaux requis pour le projet. L'ensemble du projet peut être divisé en trois parties.
Partie 1: Génération d'obstacles
Premièrement, nous devons générer des obstacles aléatoires pour que le point saute. Les obstacles se présenteront également sous la forme d'une impulsion de point qui se déplace d'une extrémité à l'autre de la matrice LED.
Pour générer des obstacles, nous utilisons deux circuits temporisés (schémas de circuits ci-joints), un avec une haute fréquence (HF Timer) et un autre avec une basse fréquence (LF Timer). La partie « aléatoire » est gérée par le temporisateur HF dont la sortie est vue sur chaque front montant du temporisateur LF (qui est pris comme entrée CLK). L'instruction de génération d'obstacles est l'état du temporisateur HF sur chaque front montant du temporisateur LF (1 -> Générer un obstacle | 0 -> Ne pas générer d'obstacle). La minuterie HF est RÉINITIALISÉE à chaque « SAUT » pour assurer la génération d'obstacles aléatoires. La sortie de la minuterie HF est donnée comme entrée D à une bascule D (pour stocker l'instruction pour le cycle suivant) avec l'entrée CLK comme sortie de la minuterie LF.
Une fois que l'instruction binaire pour la génération d'obstacles est sortie, nous devons générer l'« impulsion d'obstacle » sur le réseau de LED. Nous le faisons à l'aide d'un compteur 4 bits dont la sortie est transmise à un démultiplexeur 4x16 (DeMUX). La sortie du DeMUX ferait briller les 16 LED respectives.
Partie 2: Le SAUT
Pour l'action JUMP, nous prendrons l'entrée du bouton poussoir comme instruction. Une fois l'instruction donnée, la LED de l'objet en ligne cesse de briller et une autre LED au-dessus s'allume, ce qui signifie un saut.
Partie 3: Résultat
Le résultat sera comme: Si l'objet plante, RÉINITIALISEZ le jeu; sinon, incrémenter le score.
La collision peut être exprimée sous forme de AND à la fois du signal d'obstacle et du signal d'objet pour la position au sol de l'obstacle. S'il n'y a pas de collision, le compteur de points est incrémenté et s'affiche sur une paire d'afficheurs à 7 segments.
Étape 2: Rassembler les composants
Les composants requis sont les suivants:
- PCB x 1, planche à pain x 3
- LED: Vert(31), Rouge(1), Bicolore: Rouge+Vert (1)
- Bouton poussoir x 2
- Affichage 7 segments x 2
- IC 555 x 3 [pour les circuits de minuterie]
- IC 7474 x 1 (D FlipFlop)
- IC 7490 x 2 (compteur de décade) [pour afficher le score]
- IC 7447 x 2 (BCD vers décodeur 7 segments) [pour afficher le score]
- IC 4029 x 1 (compteur 4 bits) [pour l'affichage des obstacles]
- IC 74154 x 1 (DeMUX) [pour l'affichage des obstacles]
- IC 7400 x 3 (PAS de porte)
- IC 7404 x 1 (porte NAND)
- IC 7408 x 1 (porte ET)
- Prises CI
- Source de tension (5V)
Outils nécessaires:
- Fer à souder
- Coupe-fil
Étape 3: Génération d'obstacles: Partie A
Tout d'abord, nous devons configurer les circuits de minuterie pour générer le signal de génération d'obstacles (HIGH/LOW).
Le circuit sera mis en place conformément à la théorie discutée précédemment. Le schéma de circuit pour le même est joint ci-dessus. Le circuit est implémenté sur une maquette (bien qu'il puisse également être implémenté sur un PCB) comme suit:
- Placez les deux circuits intégrés 555 et la bascule D (IC 7474) sur le diviseur de la planche à pain avec un espace libre (4 à 5 colonnes) entre les deux.
- Connectez la rangée supérieure de la planche à pain avec la borne positive de la source de tension et la rangée inférieure avec la borne négative.
- Effectuez d'autres connexions en suivant le schéma de circuit. Après les connexions nécessaires, le circuit ressemblerait à l'image ci-jointe.
REMARQUE: Les valeurs des résistances R1 et R2 et de la capacité C sont calculées à l'aide des équations suivantes:
T = 0,694 x (R1 + 2*R2) * C
où T est requis Période.
D = 0,694 x [(R1 + R2)/T] *100
où D est le cycle de service, c'est-à-dire le rapport entre le temps d'activation et le temps total.
Dans ce projet, pour la minuterie haute fréquence, T = 0,5 s et pour la minuterie basse fréquence, T = 2 s.
Étape 4: Génération d'obstacles: Partie B
Maintenant que nous savons quand générer l'obstacle, nous devons maintenant l'afficher. Nous utiliserons un compteur 4 bits, un démultiplexeur, un timer et une matrice de 16 LED. Pourquoi 16 ? C'est parce que nous allons mapper la sortie 4 bits du compteur sur les 16 LED à l'aide du démultiplexeur. Cela signifie que le compteur comptera de 0 à 15 et que le démultiplexeur allumera la LED avec cet indice.
Le chronomètre a pour rôle de réguler la vitesse de comptage, c'est-à-dire la vitesse de déplacement des obstacles. L'obstacle se déplacera d'une position dans une période de temps de la minuterie. Vous pouvez jouer avec différentes valeurs de R1, R2 et C en utilisant les équations de l'étape précédente pour obtenir des vitesses différentes.
Pour la matrice LED, soudez 16 LED de manière linéaire avec une masse commune. La borne positive de chaque LED sera connectée au DeMUX (après avoir inversé en utilisant NOT gate, puisque le DeMUX donne une sortie LOW).
Le schéma de circuit pour le même est joint ci-dessus.
Étape 5: Le SAUT et le RÉSULTAT
La prochaine chose est l'action de saut. Pour afficher un saut, il suffit de placer une LED de couleur différente au dessus de la matrice, de la mettre à la terre et de relier sa borne +ve à un bouton. Fixez l'autre extrémité du bouton-poussoir à la source de tension.
Aussi, prenez un autre bouton poussoir, placé à côté du précédent et branchez une de ses bornes au +5V. L'autre terminal va à une porte NAND (IC 7404) avec l'autre entrée de la porte NAND comme entrée de la LED juste en dessous de la LED JUMP (c'est-à-dire la LED objet). La sortie de la porte NAND va à RESET (PIN 2 et 3 des deux compteurs BCD) du compteur de score. Avec cela, nous réinitialisons le score si le signal LED OBJET (en position de base) et le signal OBSTACLE sont donnés en même temps, c'est-à-dire que l'objet et l'obstacle sont entrés en collision.
Prenez des dispositions pour vous assurer que les deux boutons-poussoirs sont pressés ensemble. Vous pouvez utiliser une pièce de monnaie et y coller les deux boutons.
Pour configurer le compteur de points, suivez le schéma de circuit joint ci-dessus (source de la photo: www.iamtechnical.com).
REMARQUE: connectez les broches 2 et 3 à la sortie de la porte NAND pour qu'elle réinitialise le score en cas de collision avec l'obstacle
Étape 6: Bon jeu
C'est ça. Vous avez terminé votre projet. Vous pouvez y ajouter quelques finitions pour qu'il soit beau. Le repos c'est bien.
PRENDRE PLAISIR..!!
Conseillé:
Comment recycler les téléphones Android pour BOINC ou une plate-forme pliante sans utiliser de piles : 8 étapes
Comment recycler les téléphones Android pour BOINC ou une plate-forme pliante sans utiliser de piles : il peut également être utilisé pour le PLIAGE Comme je n'ai pas trop de temps, je vais
Comment faire un robot suiveur de ligne sans utiliser Arduino (microcontrôleur): 5 étapes
Comment faire un robot suiveur de ligne sans utiliser Arduino (microcontrôleur): dans cette instructable, je vais vous apprendre comment faire un robot suiveur de ligne sans utiliser Arduino. suivez la ligne.Vous n'aurez besoin d'aucune sorte d'expérience en programmation pour
Capteur d'obstacles IR sans utiliser Arduino ni aucun microcontrôleur : 6 étapes
Capteur d'obstacles IR sans utiliser d'Arduino ou de microcontrôleur : dans ce projet, nous allons créer un simple capteur d'obstacles sans utiliser de microcontrôleur
Comment utiliser le terminal Mac et comment utiliser les fonctions clés : 4 étapes
Comment utiliser le terminal Mac et comment utiliser les fonctions clés : Nous allons vous montrer comment ouvrir le terminal MAC. Nous vous montrerons également quelques fonctionnalités du terminal, telles que ifconfig, le changement de répertoire, l'accès aux fichiers et arp. Ifconfig vous permettra de vérifier votre adresse IP, et votre annonce MAC
HC-06 (module esclave) Changer " NAME " sans utiliser " Monitor Serial Arduino " qui " fonctionne facilement " : Manière sans défaut ! : 3 étapes
HC-06 (module esclave) Modification de " NAME " sans utilisation " Monitor Serial Arduino "… qui " Fonctionne facilement " : Manière sans défaut ! : Après " Longtemps " essayer de changer de nom sur HC - 06 (module esclave), en utilisant " moniteur série de l'Arduino, sans " Succès ", j'ai trouvé un autre moyen facile et je partage maintenant ! Amusez-vous bien les copains