Table des matières:

Robot d'évasion : Voiture télécommandée pour un jeu d'évasion : 7 étapes (avec photos)
Robot d'évasion : Voiture télécommandée pour un jeu d'évasion : 7 étapes (avec photos)

Vidéo: Robot d'évasion : Voiture télécommandée pour un jeu d'évasion : 7 étapes (avec photos)

Vidéo: Robot d'évasion : Voiture télécommandée pour un jeu d'évasion : 7 étapes (avec photos)
Vidéo: Elle A Essayé De Tromper La Police 2024, Juillet
Anonim
Escape Robot: Voiture RC pour un Escape Game
Escape Robot: Voiture RC pour un Escape Game
Escape Robot: Voiture RC pour un Escape Game
Escape Robot: Voiture RC pour un Escape Game

Le but principal de ce projet était de construire un robot qui se différencierait des robots déjà existants, et qui pourrait être utilisé dans un domaine réel et innovant.

Sur la base d'une expérience personnelle, il a été décidé de construire un robot en forme de voiture qui serait implémenté dans un Escape Game. Grâce aux différents composants, les joueurs pouvaient allumer la voiture en résolvant une énigme sur la manette, contrôler la trajectoire de la voiture, et récupérer une clé en chemin afin de s'échapper de la pièce.

Comme ce projet faisait partie d'un cours de Mécatronique donné à l'Université Libre de Bruxelles (U. L. B.) et à la Vrije Universiteit Brussel (V. U. B.), Belgique, quelques exigences ont été présentées au début, telles que:

  • Utiliser et combiner les domaines de la mécanique, de l'électronique et de la programmation
  • Un budget de 200€
  • Avoir un robot fini et fonctionnel qui apporte quelque chose de nouveau

Et comme il allait être utilisé dans de vraies sessions d'escape game, parfois plusieurs sessions d'affilée, quelques exigences supplémentaires devaient être remplies:

  • Autonomie: trouver un moyen de rendre le robot semi-autonome pour respecter les contraintes du jeu
  • Convivial: simplicité d'utilisation, présence d'un écran avec retour d'information de la caméra
  • Robustesse: matériaux solides capables d'amortir les chocs
  • Sécurité: joueurs non en contact direct avec le robot

Étape 1: Concept principal et motivation

Comme expliqué dans l'introduction, le concept principal de ce projet est de créer et de construire un robot semi-autonome, d'abord contrôlé par les joueurs de l'escape game, puis capable de reprendre le contrôle des joueurs.

Le principe est le suivant: Imaginez que vous êtes enfermé dans une pièce avec un groupe d'amis. La seule possibilité de sortir de la pièce est de trouver une clé. La clé est cachée dans un labyrinthe situé sous vos pieds, dans un étage intermédiaire sombre. Pour obtenir cette clé, vous avez en votre possession trois choses: une télécommande, une carte et un écran. La télécommande permet de contrôler une voiture déjà à l'étage intermédiaire, en résolvant une énigme imaginée sur les boutons de commande existants de la télécommande. Une fois que vous avez résolu cette énigme, la voiture est allumée (cfr. Étape 5: Codage - fonction principale nommée 'loop()'), et vous pouvez commencer à guider la voiture à travers le labyrinthe à l'aide de la carte donnée. L'écran est là pour afficher en direct ce que voit la voiture, grâce à une caméra fixée devant le robot, et donc vous aider à voir les trajectoires et surtout la clé. Une fois que vous avez obtenu la clé grâce à un aimant situé au bas du robot, et une fois arrivé au bout du labyrinthe, vous êtes capable de prendre la clé et de vous échapper de la pièce dans laquelle vous étiez enfermé.

Les principaux composants du robot sont donc:

  1. Devinette à résoudre sur la télécommande
  2. Contrôle du robot par les joueurs avec télécommande
  3. Affichage de contrôle basé sur une vidéo filmée en direct par la caméra

Parce que dans de tels jeux la contrainte principale est le temps (dans la plupart des escape games vous avez entre 30 minutes et 1 heure pour sortir pour réussir), un capteur est fixé et connecté à la base du robot afin que si vous, en tant que joueurs, dépassez un temps donné (dans notre cas 30 minutes), le robot reprend le contrôle et termine le parcours tout seul, afin que vous ayez une chance d'obtenir la clé de la salle avant que le chronomètre du jeu ne se déclenche (dans notre cas 1 heure)

De plus, comme la voiture se trouve dans une pièce complètement sombre, des LED sont fixées non loin du capteur pour l'aider à lire le signal du sol.

La volonté derrière ce projet de groupe était de se baser sur ce qui existe déjà sur le marché, de le modifier en y ajoutant une valeur personnelle, et de pouvoir l'utiliser dans un domaine ludique et interactif. En effet, après avoir été en contact avec un Escape Game à succès à Bruxelles, en Belgique, nous avons découvert que les jeux d'évasion sont non seulement de plus en plus célèbres, mais qu'ils manquent souvent d'interactivité et que les clients se plaignent de ne pas faire assez "partie de " le jeu.

Nous avons donc essayé de trouver une idée de robot qui répondrait aux exigences données tout en invitant les joueurs à vraiment faire partie du jeu.

Voici un résumé de ce qui se passe dans le robot:

- La partie non autonome: une télécommande est reliée à Arduino via un récepteur. Les joueurs contrôlent la télécommande et contrôlent donc l'Arduino qui contrôle les moteurs. L'Arduino est allumé avant le début du jeu, mais il entre dans la fonction principale lorsque les joueurs résolvent une énigme sur la télécommande. Une caméra sans fil IR est déjà allumée (allumée en même temps que le "tout" (contrôlé par l'Arduino) lorsque l'interrupteur marche/arrêt est allumé). Les joueurs guident la voiture avec une télécommande: ils contrôlent la vitesse et la direction (cfr. Etape 5: organigramme). Lorsque la minuterie qui démarre à l'entrée de la fonction principale est égale à 30 minutes, le contrôle du contrôleur est désactivé.

- La partie autonome: le contrôle est alors géré par l'Arduino. Au bout de 30 minutes, le capteur de suivi de ligne IR commence à suivre une ligne au sol pour terminer le parcours.

Étape 2: Matériel et outils

Matériel et outils
Matériel et outils
Matériel et outils
Matériel et outils
Matériel et outils
Matériel et outils

MATÉRIEL

Parties éléctroniques

  • Microcontrôleur:

    • Arduino UNO
    • Blindage moteur Arduino - Reichelt - 22.52€
  • Capteurs:

    Traqueur de ligne IR - Mc Hobby - 16,54€

  • Piles:

    6x 1.5V batterie

  • Autre:

    • Protoboard
    • Caméra sans fil (récepteur) - Banggood - 21.63€
    • Télécommande (émetteur + récepteur) - Amazon - 36,99€
    • Station de recharge (récepteur Qi) - Reichelt - 22,33€ (non utilisé - cfr. Etape 7: Conclusion)
    • LED - Amazone - 23.60€

Partie mécanique

  • Kit châssis de voiture DIY - Amazon - 14,99€

    • Utilisé:

      • 1x interrupteur
      • 1x roulette
      • 2x roues
      • 2x moteur à courant continu
      • 1x support de batterie
    • Non utilisé:

      • 1x châssis de voiture
      • 4x vis M3*30
      • 4x entretoise L12
      • 4x attaches
      • 8x vis M3*6
      • Écrou M3
  • Aimant - Amazon - 9.99€
  • Boulons, écrous, vis

    • M2*20
    • M3*12
    • M4*40
    • M12*30
    • tous les écrous respectifs
  • Pièces imprimées en 3D:

    • 5x ressorts
    • 2x fixation moteur
    • 1x fixation de suivi de ligne en forme de L
  • Pièces découpées au laser:

    • 2x assiette plate ronde
    • 5x petite assiette plate rectangulaire

OUTIL

  • Machines:

    • Imprimante 3D
    • Découpeur laser
  • Tournevis
  • Perceuse à main
  • Chaux
  • Soudure électronique

Étape 3: Découpe (laser) et impression (3D)

Image
Image
Découpe (laser) et impression (3D)
Découpe (laser) et impression (3D)
Découpe (laser) et impression (3D)
Découpe (laser) et impression (3D)

Nous avons utilisé à la fois des techniques de découpe laser et d'impression 3D pour obtenir certains de nos composants. Vous pouvez trouver tous les fichiers CAO dans le fichier.étape ci-dessous

Découpeur laser

Les deux principales pièces de fixation du robot ont été découpées au laser:(Matériau = carton MDF de 4mm)

- 2 disques plats ronds pour faire la base (ou châssis) du robot

- Plusieurs trous sur les deux disques afin d'accueillir des composants mécaniques et électroniques

- 5 petites plaques rectangulaires pour fixer les ressorts entre les deux plaques du châssis

Imprimante 3D (Ultimakers & Prusa)

Différents éléments du robot ont été imprimés en 3D, afin de leur donner à la fois résistance et souplesse:(Matériau = PLA)- 5 ressorts: notez que les ressorts sont imprimés sous forme de blocs, il faut donc les limer pour donner eux leurs formes « printanières » !

- 2 pièces rectangulaires évidées pour fixer les moteurs

- Pièce en forme de L pour accueillir le Line tracker

Étape 4: Assemblage de l'électronique

Assemblage de l'électronique
Assemblage de l'électronique
Assemblage de l'électronique
Assemblage de l'électronique
Assemblage de l'électronique
Assemblage de l'électronique

Comme vous pouvez le voir sur les croquis électroniques, l'Arduino est comme prévu la pièce centrale de la partie électronique.

Connexion Arduino - Line tracker:(cfr. croquis suiveur correspondant)

Connexion Arduino - Moteurs:(cfr. croquis général correspondant - à gauche)

Connexion Arduino - Télécommande Récepteur:(cfr. croquis général correspondant - haut)

Connexion Arduino - LEDs:(cfr. schéma général correspondant - à gauche)

Une protoboard permet d'augmenter le nombre de ports 5V et GND et de faciliter toutes les connexions.

Cette étape n'est pas la plus simple, car elle doit répondre aux exigences soulignées ci-dessus (autonomie, convivialité, robustesse, sécurité), et le circuit électrique nécessite une attention et des précautions particulières.

Étape 5: Codage

Codage
Codage

La partie codage concerne l'Arduino, les moteurs, la télécommande, le tracker de ligne et les LED.

Vous pouvez trouver sur le code:

1. Déclaration des variables:

  • Déclaration de broche utilisée par le récepteur RC
  • Déclaration de broche utilisée par les moteurs à courant continu
  • Déclaration du Pin utilisé par les LED
  • Déclaration des variables utilisées par la fonction 'Riddle'
  • Déclaration de broche utilisée par les capteurs IR
  • Déclaration des variables utilisées par IR Deck

2. Fonction d'initialisation: initialiser les différentes broches et LED

Fonction 'configuration()'

3. Fonction pour les moteurs:

  • Fonction 'turn_left()'
  • Fonction 'turn_right()'
  • Fonction 'CaliRobot()'

4. Fonction tracker de ligne: utilise la fonction précédente 'CaliRobot()' pendant le comportement semi-autonome du robot

Fonction 'Suiveur()'

5. Fonction pour télécommande (énigme): contient la bonne solution à l'énigme présentée aux joueurs

Fonction 'Énigme()'

6. Fonction boucle principale: permet aux joueurs de contrôler la voiture une fois qu'ils ont trouvé la solution de l'énigme, démarre un chronomètre et bascule l'entrée de numérique (télécommandé) à numérique (autonome) une fois que le chronomètre dépasse 30 minutes

Fonction 'boucle()'

Le processus principal du code est expliqué dans l'organigramme ci-dessus, avec les principales fonctions mises en évidence.

Vous pouvez également trouver l'intégralité du code de ce projet dans le fichier.ino joint, qui a été écrit à l'aide de l'interface de développement Arduino IDE.

Étape 6: Assemblage

Assemblage
Assemblage
Assemblage
Assemblage
Assemblage
Assemblage

Une fois que nous avons tous les composants découpés au laser, imprimés en 3D et prêts: nous pouvons assembler le tout !

Tout d'abord, nous fixons les ressorts imprimés en 3D sur leurs plaques rectangulaires découpées au laser avec des boulons de diamètre égal au diamètre des trous à l'intérieur des ressorts.

Une fois les 5 ressorts fixés sur leurs petites plaques, on peut fixer ces dernières sur la plaque inférieure du châssis avec des boulons plus petits.

Deuxièmement, nous pouvons fixer les moteurs aux fixations de moteur imprimées en 3D, sous la plaque inférieure du châssis avec de petits boulons.

Une fois celles-ci fixées, on peut venir fixer les 2 roues sur les moteurs à l'intérieur des trous de la platine inférieure du châssis.

Troisièmement, nous pouvons fixer la roue pivotante, également sous la plaque de châssis inférieure, avec de petits boulons de sorte que la plaque de châssis inférieure soit horizontale

Nous pouvons maintenant réparer tous les autres composants

  • Plaque de châssis inférieure:

    • Au dessous de:

      • Suivi de ligne
      • LED
    • Plus de:

      • Récepteur de télécommande
      • Arduino et bouclier moteur
      • LED
  • Plaque de châssis supérieure:

    • Au dessous de:

      Caméra

    • Plus de:

      • Piles
      • Interrupteur marche / arrêt

Enfin, nous pouvons assembler les deux plaques de châssis ensemble.

Remarque: Soyez prudent lors de l'assemblage de tous les composants ensemble ! Dans notre cas, une des petites plaques pour les ressorts s'est endommagée lors de l'assemblage des deux plaques du châssis, car elle était trop fine. Nous avons recommencé avec une plus grande largeur. Veillez à utiliser des matériaux solides lors de l'utilisation de la découpe laser (ainsi que l'imprimante 3D), et vérifiez les dimensions pour que vos pièces ne soient pas trop fines ou trop fragiles.

Étape 7: Conclusion

Image
Image
Conclusion
Conclusion
Conclusion
Conclusion

Une fois tous les composants assemblés (assurez-vous que tous les composants sont bien fixés et ne risquent pas de tomber), le récepteur de la caméra connecté à un écran (c'est-à-dire un écran de télévision), et les piles (6x 1.5V) mises sur le support de batterie, vous êtes prêt à tester le tout !

Nous avons essayé d'aller plus loin dans le projet en remplaçant les batteries (6x 1.5V) par une batterie portable, en:

  • construction d'une station de recharge (chargeur sans fil fixé dans une borne de recharge découpée au laser (voir photos));
  • ajout d'un récepteur (récepteur Qi) sur la batterie portable (voir photos);
  • écrire une fonction sur l'Arduino demandant au robot de suivre la ligne au sol dans le sens opposé pour atteindre la station de charge et recharger la batterie afin que l'ensemble du robot soit prêt de manière autonome pour la prochaine session de jeu.

Comme nous avons rencontré des problèmes de remplacement des batteries par une batterie portable juste avant la date limite du projet (rappel: ce projet était encadré par nos professeurs de l'ULB/VUB, nous avions donc un délai à respecter), nous n'avons pas pu tester le robot. Vous pouvez néanmoins trouver ici une vidéo du robot alimenté depuis l'ordinateur (connexion USB) et contrôlé par la télécommande.

Néanmoins, nous avons pu atteindre toutes les valeurs ajoutées que nous visions: - Robustesse- Forme ronde- Devinette à allumage- Interrupteur de commande (télécommande -> autonome) Si ce projet a retenu votre attention et votre curiosité, nous sommes donc très curieux de voir ce que vous avez fait, de voir si vous avez effectué certaines étapes différentes de la nôtre et de voir si vous avez réussi le processus de charge autonome !

N'hésitez pas à nous dire ce que vous pensez de ce projet !

Conseillé: