Table des matières:

Arduino Riddlebox : 4 étapes (avec photos)
Arduino Riddlebox : 4 étapes (avec photos)

Vidéo: Arduino Riddlebox : 4 étapes (avec photos)

Vidéo: Arduino Riddlebox : 4 étapes (avec photos)
Vidéo: mind blowing arduino puzzle box (with electronics) 2024, Octobre
Anonim
Boîte à énigmes Arduino
Boîte à énigmes Arduino

Dans ce Instructable, je vais vous montrer comment faire un Riddlebox alimenté par Arduino. J'ai fait cela pour ajouter un peu de plaisir au cadeau de Noël de ma copine, que j'ai caché dans le compartiment de la boîte.

Une fois que 5V sont appliqués au câble USB, l'Arduino s'allume et l'écran LCD affiche un court tutoriel, puis une séquence de dix énigmes, qui doivent être résolues pour ouvrir le compartiment servocommandé, qui peut contenir un cadeau ou un cadeau.

Il existe également un menu de paramètres sournois et protégé par mot de passe pour réinitialiser la progression et ouvrir le compartiment.

J'ai utilisé ce que j'ai pu trouver dans ma quincaillerie locale et j'ai imprimé le reste en 3D. Évidemment, vous pouvez personnaliser la Riddlebox en ajoutant plus de capteurs ou en omettant certaines pièces. Laissez libre cours à votre créativité.

Tu auras besoin de:

  • Arduino Mega (un Uno pourrait également suffire)
  • Cavaliers flexibles
  • Interrupteur à clé
  • Clavier 4x4
  • I2C LCD 20x04
  • 2x servomoteurs SG90
  • Boîtier en aluminium
  • Charnière en métal
  • Feuille d'aluminium
  • Scie à chantourner ou outil rotatif avec une meule à tronçonner
  • Pistolet à colle chaude
  • Colle à haute adhérence
  • clé USB
  • Lime en métal

Étape 1: configuration du matériel

Configuration du matériel
Configuration du matériel

J'ai d'abord prototypé les énigmes, avec l'Arduino une maquette et les composants que je voulais utiliser, à savoir l'interrupteur à clé et le clavier. Pour utiliser le code Arduino de cette instructable tel quel, connectez les pièces comme décrit ci-dessous. Bien sûr, vous pouvez ajouter et supprimer des composants, ou utiliser des broches différentes, tant que vous apportez les modifications appropriées au code.

La plupart des claviers ont une broche pour chaque ligne et chaque colonne. Découvrez quelles broches sont les broches de la rangée, en testant la continuité entre les différentes broches tout en appuyant sur les boutons pour fermer le circuit (voir l'exemple de schéma). Les 4 broches restantes doivent être les broches de la colonne. (Remarque: parfois, les deux broches les plus à l'extérieur sont connectées au remplissage en cuivre du circuit imprimé et peuvent être ignorées)

Connectez les broches du clavier COL0 - COL3 aux broches Arduino 12 - 9 et ROW0 - ROW3 aux broches Arduino 8 - 5.

L'écran LCD est connecté via I2C, il n'y a donc que quatre broches nécessaires: SDA, SCL, 5V et GND.

L'interrupteur à clé a trois positions et six broches: les deux broches C (communes) vont à la terre, tandis que les deux broches étiquetées NO (normalement ouvertes) vont aux broches Arduino 22 et 23 respectivement. (Remarque: les entrées arduino sont tirées haut, nous n'avons donc qu'à connecter la terre aux broches communes du commutateur)

Les deux servos permettent d'ouvrir physiquement la porte du compartiment et de la verrouiller via un loquet.

Connectez 5V et GND des servos à l'Arduino et connectez les lignes de signal comme suit: servo de verrouillage = broche 44, servo de porte = broche 45.

Étape 2: Code Arduino et énigmes

Code Arduino et énigmes
Code Arduino et énigmes
Code Arduino et énigmes
Code Arduino et énigmes

Le code de l'Arduino se compose de plusieurs fichiers. L'esquisse principale initie tout le matériel, les bibliothèques et les variables globales. Toutes les énigmes et blocs de menu sont stockés dans des fonctions dans des fichiers séparés pour une gestion facile. L'état d'avancement, qui est enregistré dans l'EEPROM (c'est-à-dire qu'il est sûr même après le cycle d'alimentation), détermine quelles fonctions d'énigme sont appelées dans la fonction de commutation du fichier principal.

J'ai supprimé toutes les informations personnelles du code et remplacé certaines solutions par des solutions génériques (1234…). N'hésitez pas à modifier le code comme bon vous semble et à ajouter des solutions personnalisées.

Devinettes et blocs de menus:

  1. Avancé: menu des paramètres avancés avec réinitialisation de la progression et commandes des compartiments.
  2. Intro: Menu d'introduction avec texte d'accueil et tutoriel.
  3. Élémentaire: Devinette demandant le numéro atomique de l'iode.
  4. Externalisation: le joueur doit contacter une adresse e-mail qui répond automatiquement à une énigme numérique. (Énigme en forme d'étoile dans les images)
  5. Seize: le joueur doit convertir un nombre hexadécimal en décimal.
  6. Choix: le joueur doit terminer une aventure textuelle située sur un lecteur flash, le mot de passe pour le niveau suivant est caché dans l'histoire. (voir Amnesia.rtf)
  7. Hors ligne: le joueur doit recevoir la clé pour activer l'interrupteur à clé (par exemple, par courrier, un bon moyen de les ralentir s'ils sont trop rapides).
  8. Invisible: Le mot de passe pour le niveau suivant est écrit sur un morceau de papier à l'encre invisible.
  9. Calcul: Tâche de calcul simple. (Plus d'un espace réservé qui n'a jamais été rempli, car je manquais de temps)
  10. Change: Petite énigme concernant les billets en euros, peut être adaptée à n'importe quelle devise avec des billets de différentes couleurs.
  11. Patience: Le joueur ne doit pas tourner la clé pendant une période de 5 min, sinon la minuterie se réinitialise et double. (Remarque: Si vous tournez la clé assez souvent, la variable déborde et se remet à zéro en raison de sa taille limitée.)
  12. La réponse: « Quelle est LA réponse ? ». La solution est évidemment 42.
  13. Écran de fin: félicitations et instructions pour l'ouverture du compartiment. (via l'interrupteur à clé)

J'ai inclus une documentation supplémentaire sous forme de commentaires dans les fichiers de code.

Pour info: maintenir 'A' pendant l'écran de démarrage ouvre le menu des paramètres. Mot de passe: 2582

Étape 3: Construire la façade

Construire la façade
Construire la façade
Construire la façade
Construire la façade
Construire la façade
Construire la façade

J'ai acheté le boîtier dans ma quincaillerie locale avec la feuille d'aluminium. Il est venu avec des diviseurs que j'ai réutilisés plus tard pour créer les murs du compartiment.

La feuille d'aluminium était trop large, alors je l'ai tracée et raccourcie avec une scie à chantourner. Cependant, une scie à chantourner, un outil rotatif ou même une meuleuse avec une meule à tronçonner pourraient être mieux adaptés, car cela m'a pris du temps et j'ai cassé deux lames au cours du processus. L'espace à l'avant du boîtier est intentionnel. Il offre un espace pour placer une banque d'alimentation et la clé USB.

Après avoir marqué où je voulais que tout aille, j'ai percé des trous dans les coins des sections marquées et les ai découpés à nouveau à l'aide de la scie à chantourner. Pour la section des compartiments, j'ai essayé une meule à tronçonner sur une meuleuse, et cela a fonctionné à merveille. J'ai utilisé une lime en métal pour couper les ouvertures pour s'adapter aux composants et les ébavurer. Un passage rapide avec la ponceuse orbitale a donné à l'ensemble une finition mate. Ceci est bien sûr totalement facultatif, j'ai beaucoup éraflé la plaque d'aluminium, donc le ponçage semblait un bon moyen de les cacher et d'enlever mes marques de sharpie.

La porte du compartiment est simplement un morceau coupé de la feuille d'aluminium restante.

J'ai attaché la charnière à la porte et à la plaque métallique à l'aide de la colle à haute adhérence. Il est appliqué sur les deux surfaces, laissé durcir pendant 10-20 min. puis les deux côtés sont pressés l'un contre l'autre. La liaison est instantanée et il n'y a aucun moyen d'ajuster les deux pièces par la suite.

Le clavier et l'écran LCD tiennent en place avec de la colle chaude sur les côtés. (Remarque: assurez-vous d'isoler les broches des composants de la feuille d'aluminium. Un peu de colle chaude fait l'affaire)

L'interrupteur à clé a un filetage et un écrou, j'ai donc percé un trou de la bonne taille et inséré l'interrupteur à travers.

Pour que le compartiment s'ouvre automatiquement, j'ai attaché la porte et les servos de verrouillage au dessous de la feuille d'aluminium avec de la colle chaude. Le crochet de verrouillage et le levier d'ouverture et le loquet de verrouillage que je me suis plié pour façonner certains supports (semblables au ruban de plombier). À première vue, je pourrais et devrais probablement avoir ces composants imprimés en 3D car ils sont un peu fragiles de cette façon et seront probablement la première chose à échouer. J'ai fixé ces pièces respectivement avec de la colle chaude et de la colle à haute adhérence (voir photos).

Parce que le devant n'était pas très joli de cette façon, j'ai décidé d'imprimer des cadres pour faire le tour des différents composants et de les fixer également avec de la colle chaude.

Étape 4: Terminer le boîtier

Finir l'affaire
Finir l'affaire
Finir l'affaire
Finir l'affaire

Comme je l'ai mentionné précédemment, le boîtier est venu avec quelques deviders. J'ai décidé d'un arrangement pour créer un compartiment rugueux et un peu d'espace pour l'Arduino, puis j'ai utilisé la colle à haute adhérence pour tout fixer en place.

Après avoir connecté tous les composants à l'Arduino Mega et l'avoir collé à chaud sur le boîtier, j'ai fait sortir le câble USB par la petite ouverture entre les séparateurs, de sorte qu'il soit accessible de l'extérieur.

Après avoir soigneusement déposé la plaque d'aluminium dans sa position finale, je l'ai fixée en place en appuyant la buse du pistolet à colle chaude sur le joint entre la plaque et le boîtier et en forçant la colle dans l'espace. Au début, j'étais sceptique quant à l'intégrité de cette méthode de fixation mais elle a tenu jusqu'à présent.

La dernière chose à faire était d'appliquer quelques touches de finition. J'ai conçu des autocollants simples dans MS Publisher que j'ai imprimés, découpés et attachés à la plaque avant avec un simple bâton de colle.

Bien sûr, c'est à vous de décider si et combien d'autocollants vous souhaitez créer et attacher. Cela pourrait également être une bonne occasion de pratiquer certaines techniques de vieillissement pour que tout cela ait l'air un peu plus mauvais. Malheureusement, cela ne m'est venu que lors de la rédaction de ce Instructable.

Quoi qu'il en soit, j'espère que vous avez apprécié cette version de Riddlebox. Si vous avez des questions ou des idées d'amélioration, laissez-moi un commentaire ci-dessous et j'essaierai de vous répondre dans les plus brefs délais.

Conseillé: