Table des matières:
Vidéo: Boîte de puzzle Arduino : 7 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:06
Pour ce projet, nous allons créer une boîte de puzzle qui fonctionne avec de la musique. L'essentiel est que lorsque vous appuyez sur un bouton, il libère une mélodie et l'Arduino calcule quels boutons sont enfoncés afin qu'il sache quelle est la bonne et la mauvaise réponse.
Fournitures
1 x Arduino uno
1 résistance de 1k Ohm
5 résistances de 220 Ohm
1 sonnerie piézoélectrique
5 x bouton poussoir 6x6 mm
1 x jeu de fils de cavalier
1 x panneau perforé/strip
1 x jeu de soudure
1 x charnière
1 x pince
1 x petite commode/bois
1x pistolet à colle chaude + bâtons de colle
1 pile 9v + support
un peu de worbla
Peinture
Étape 1:
Pour commencer, vous devez enfoncer vos épingles dans votre planche à pain. Connectez maintenant l'analogique 2 avec un fil au coin de la carte. Nous allons y connecter deux résistances en ligne. La première est une résistance de 10k Ohm. À l'autre extrémité de cette résistance, nous connectons un fil à la terre analogique. La deuxième résistance est une résistance de 220 Ohm que nous connectons au premier bouton. Utilisez une autre résistance de même valeur afin de connecter le deuxième côté ouvert du bouton avec le deuxième bouton. Continuez à connecter les boutons comme celui-ci jusqu'au dernier. Au dernier, vous attrapez un fil et le connectez à un côté fermé correspondant du bouton et connectez-le au suivant en ligne. Vous répétez maintenant le processus que vous avez fait avec les résistances ne connaissent qu'avec des fils simples. Connectez le premier bouton au port analogique 3, 3V de votre Arduino. Dans l'ensemble, vous obtiendrez une sorte de motif croisé comme illustré ci-dessous.
Étape 2:
Ensuite, branchez votre buzzer sur la planche à pain et fixez un côté à la terre numérique et l'autre au port 12. Il est judicieux de télécharger déjà le code suivant dans votre Arduino afin de pouvoir tester si tout fonctionne correctement. Si c'est le cas, vous pouvez commencer à souder les composants ensemble. Pour ce faire, retirez-les de la planche à pain et soudez directement les fils et les connexions ensemble. Si vous pensez avoir besoin de plus de longueur entre les boutons, vous pouvez ajouter du fil supplémentaire entre les résistances. La planche à pain n'est plus nécessaire à ce stade.
Étape 3:
Une fois que tout est soudé, il est temps de fabriquer la boîte elle-même. J'ai utilisé un ensemble de tiroirs bon marché comme base pour le mien. J'ai simplement coupé en deux dans le sens de la longueur et enlevé le dos et le côté que j'ai coupé. Vous devriez avoir deux pièces en forme de C maintenant. Coupez un côté de l'un d'eux pour l'utiliser comme couvercle. Maintenant, faites pivoter l'une des pièces restantes pour qu'elles s'emboîtent comme une boîte sans couvercle et collez-les ensemble. Une fois que la colle a bien pris, percez un petit trou de chaque côté de la boîte pour les boutons et un plus grand pour le buzzer dans le couvercle.
Étape 4:
Vous pouvez maintenant commencer à peindre la boîte. J'ai fait le mien avec un design de fleurs basé sur BOTW mais vous pouvez vraiment choisir n'importe quel design que vous voulez. Après cela, vous pouvez mettre les boutons à l'intérieur des trous et mettre une boule de colle sur le dos du bouton et le bois environnant. Le même principe s'applique au buzzer mais le mien rentre parfaitement dans le trou le rendant inutile. Ensuite, vous prenez un peu de worbla et vous le chauffez et le coupez afin de faire quelques petits boutons. Collez-les soigneusement sur les boutons, mais assurez-vous de ne pas utiliser trop de colle car vous pourriez accidentellement coincer les boutons. Vous pouvez maintenant les peindre pour qu'ils se fondent davantage dans la boîte.
Étape 5:
Enfin, vous collez ou vissez la pince et les charnières sur la boîte et le couvercle reliant les deux.
Étape 6:
Maintenant que votre box est terminée, il ne vous reste plus qu’à mettre l’Arduino et la batterie à l’intérieur et fermer le couvercle.
Étape 7: Coder
// Ceci est le code d'un puzzle/boîte à musique sur le thème de Zelda.
// ceci connecte votre code à la liste des notes dans l'autre onglet
#include "emplacements.h"
// cette variable garantira que l'Arduino voit une pression plus longue sur le bouton comme une seule pression
int même = 0;
// à partir de là, il lira votre entrée
entier k = 2;
//c'est votre broche de sortie
haut-parleur int = 12;
// ci-dessous les mélodies de fin
int Zelda = {NOTE_B4, NOTE_D5, NOTE_A4, NOTE_G4, NOTE_A4, NOTE_B4, NOTE_D5, NOTE_A4, NOTE_G4, NOTE_A4, NOTE_B4, NOTE_D5, NOTE_A5, NOTE_G5, NOTE_D5, NOTE_C5_A_B}; NOTE_A5}, NOTE
int ZeldaTime = {2, 4, 2, 4, 4, 2, 2, 2, 4, 4, 2, 4, 2, 2, 2, 4, 4, 2};
int Epona = {NOTE_D5, NOTE_B4, NOTE_A4, NOTE_D5, NOTE_B4, NOTE_A4, NOTE_D5, NOTE_B4, NOTE_A4, NOTE_B4, NOTE_A4};
int EponaTime = {4, 4, 1.5, 4, 4, 1.5, 4, 4, 2, 2, 1};
int Saria = {NOTE_F4, NOTE_A4, NOTE_B4, NOTE_F4, NOTE_A4, NOTE_B4, NOTE_F4, NOTE_A4, NOTE_B4, NOTE_E5, NOTE_D5, NOTE_B4, NOTE_C5, NOTE_B4, NOTE_G4, NOTE_E4, NOTE, NOTE_D4_, NOTE_E}
int SariaTime = {8, 8, 4, 8, 8, 4, 8, 8, 8, 8, 4, 8, 8, 8, 8, 3, 8, 8, 8, 2, 1};
// la durée normale d'une note
int BEATTIME = 300;
// le compteur qui va garder une trace de l'endroit où nous sommes dans la solution
int caissier = 0;
void setup() {
Serial.begin(9600);
pinMode(2, INPUT);
pinMode(1, INPUT);
}
boucle vide() {
// lit l'entrée des broches
k = lecture analogique(2);
int p = analogRead(1);
//si aucun bouton n'est enfoncé, il ne devrait y avoir aucune tonalité
si (caissier == 0) {
pas de ton (12);
}
//si les données lues correspondent aux paramètres, exécutez le bit de code décrit
si (k > 320 && k < 350) {
rechts();
}
//""
sinon si (k 290) {
liens();
}
//""
sinon si (k > 260 && k < 280) {
boven();
}
//""
sinon si (k> 240 && k < 260) {
sous ();
}
//""
sinon si (k > 220 && k < 240) {
une();
}
// si ce n'est pas le cas (quand aucun bouton n'est enfoncé), exécutez ce code
autre {
// réinitialiser le même pour qu'il puisse être utilisé la prochaine fois qu'un bouton est enfoncé
même = 0;
// si le compteur est jusqu'à un certain nombre exécuter le bit de code décrit
si (caissier == 166) {
zelda();
}
//""
sinon si (caissier == 386) {
saria();
}
//""
else if (caissier == 266) {
épona();
}
//""
else if (caissier == 999) {
//joue ce ton pour marquer l'erreur
ton(haut-parleur, NOTE_C3, BEATTIME);
//remet le compteur à 0
caissier = 0;
}
}
//le délai entre l'entrée et la sortie
retard (100);
// imprime les valeurs de votre entrée dans le moniteur série
Serial.println(k);
}
// c'est la première mélodie
zelda vide () {
//cela définit un compteur qui se met à jour tout en jouant la mélodie afin qu'il puisse la lire et s'arrêter quand il le devrait
for (int i = 0; i < sizeof(Zelda); i++) {
//indique combien de temps une note doit durer
int ZTime = 1000 / ZeldaTime;
// génère les tonalités
ton (haut-parleur, Zelda, ZTime);
//crée le bon délai
pause int = ZTime * 1,30;
retard (pause);
//réinitialise le compteur
caissier = 0;
// imprime les valeurs de votre entrée dans le moniteur série
Serial.println(caissier);
}
}
//""
épona vide() {
for (int i = 0; i < sizeof(Epona); i++) {
int ETime = 1000 / EponaTime;
tonalité (haut-parleur, Epona, ETime);
int pause = EHeure * 1,30;
retard (pause);
caissier = 0;
Serial.println(caissier);
}
}
//""
saria vide() {
for (int i = 0; i < sizeof(Saria); i++) {
int STime = 1000 / SariaTime;
ton (haut-parleur, Saria, STime);
int pause = SHeure * 1,30;
retard (pause);
caissier = 0;
Serial.println(caissier);
}
}
annuler l'enregistrement
hts() {
// si ce n'était pas déjà pressé
si (même == 0) {
// si le compteur a actuellement l'une de ces valeurs, ajoutez-le
if (caissier == 0 || caissier == 132 || caissier == 165 || caissier == 232 || caissier == 265 || caissier == 331 || caissier == 374) {
caissier = caissier + 1;
}
// sinon, définissez-le sur 999 pour que vous entendiez le bruit d'erreur
autre {
caissier = 999;
}
// définissez la même chose sur un pour que l'Arduino ne lise pas une pression prolongée comme plusieurs pressions
même = 1;
}
// joue le ton
autre {
ton(haut-parleur, NOTE_A4, BEATTIME);
}
// imprime les valeurs de votre entrée dans le moniteur série
Serial.println(caissier); }
//""
liens vides() {
si (même == 0) {
if (caissier == 133 || caissier == 254 || caissier == 244 || caissier == 332 || caissier == 375 || caissier == 221) {
caissier = caissier + 11;
}
else if (caissier == 0) {
caissier = 111;
}
autre {
caissier = 999;
}
même = 1;
} autre{
ton(haut-parleur, NOTE_B4, BEATTIME);
} Serial.println(caissier);
}
//""
void boven() {
if (idem == 0) { if (caissier == 111 || caissier == 144 || caissier == 233) {
caissier = caissier + 21;
}
else if (caissier == 0) {
caissier = 221;
}
autre {
caissier = 999;
}
même = 1;
}
autre {
tonalité(haut-parleur, NOTE_D5, BEATTIME);
Serial.println(caissier);
}
}
//""
annuler sous () {
si (même == 0) {
si (caissier == 343) {
caissier = caissier + 31;
}
else if (caissier == 0) {
caissier = 331;
} autre {
caissier = 999;
} même = 1;
} autre {
tonalité(haut-parleur, NOTE_F4, BEATTIME);
Serial.println(caissier);
}
}
//""
annuler un () {
si (même == 0) {
si (caissier == 0) {
caissier = 461;
}
autre {
caissier = 999;
}
même = 1;
}
tonalité(haut-parleur, NOTE_D4, BEATTIME);
Serial.println(caissier);
}
Conseillé:
Capteur de boîte aux lettres utilisant Arduino : 4 étapes
Capteur de boîte aux lettres utilisant Arduino : Bonjour, j'espère que vous allez tous bien. Aujourd'hui, je vais vous montrer comment créer une boîte aux lettres avec un capteur à l'aide de la carte arduino et de l'IDE. Ce projet est très simple et la plupart des fournitures se trouvent dans la plupart des maisons. Sachez que le Covid-19 a frappé nous sommes
Crack the Code Game, boîte de puzzle basée sur Arduino: 4 étapes (avec photos)
Crack the Code Game, Arduino Based Puzzle Box : Dans ce Instructable, je vais vous montrer comment créer votre propre jeu de code dans lequel vous utilisez un encodeur rotatif pour deviner le code généré aléatoirement dans le coffre-fort. Il y a 8 LED à l'avant du coffre-fort pour vous dire combien de th
La boîte Barbie : un étui camouflé/boîte boom pour votre lecteur MP3 : 4 étapes (avec photos)
La Barbie Box : un étui camouflé/boîte perche pour votre lecteur mp3 : il s'agit d'un étui de protection rembourré pour votre lecteur mp3 qui convertit également la prise casque en quart de pouce, peut servir de boîte perche en appuyant simplement sur un interrupteur, et déguise votre lecteur mp3 en un lecteur de cassette du début des années 90 ou un vol faible similaire i
Construire une boîte de batterie de boîte à cigares pour les radios à tube: 4 étapes
Construisez une boîte à piles pour boîtes à cigares pour les radios à tube : Si vous aimez construire et jouer avec des radios à tube comme moi, vous avez probablement le même problème que moi pour les alimenter. La plupart des anciens circuits étaient conçus pour fonctionner avec des batteries haute tension b qui ne sont plus disponibles. Donc
Afficher la boîte à lumière à partir d'une boîte en bois : 9 étapes (avec des images)
Boîte à lumière d'affichage à partir d'une boîte en bois : ma femme et moi avons offert à ma mère une sculpture en verre pour Noël. Quand ma mère l'a ouvert, mon frère a dit "RadBear (en fait, il a dit mon nom) pourrait te construire une boîte à lumière!". Il a dit cela parce qu'en tant que collectionneur de verre, j'ai