Sommario:

Escape Robot: RC Car per un gioco di fuga: 7 passaggi (con immagini)
Escape Robot: RC Car per un gioco di fuga: 7 passaggi (con immagini)

Video: Escape Robot: RC Car per un gioco di fuga: 7 passaggi (con immagini)

Video: Escape Robot: RC Car per un gioco di fuga: 7 passaggi (con immagini)
Video: Paky mi fa spaventare 🚔 2024, Dicembre
Anonim
Escape Robot: RC Car per un gioco di fuga
Escape Robot: RC Car per un gioco di fuga
Escape Robot: RC Car per un gioco di fuga
Escape Robot: RC Car per un gioco di fuga

Lo scopo principale di questo progetto era costruire un robot che si differenziasse dai robot già esistenti e che potesse essere utilizzato in un'area reale e innovativa.

Sulla base dell'esperienza personale, è stato deciso di costruire un robot a forma di automobile che sarebbe stato implementato in un Escape Game. Grazie ai diversi componenti, i giocatori potevano accendere l'auto risolvendo un enigma sul controller, controllare la traiettoria dell'auto e ottenere una chiave lungo la strada per uscire dalla stanza.

Poiché questo progetto faceva parte di un corso di meccatronica tenuto presso l'Université Libre de Bruxelles (U. L. B.) e la Vrije Universiteit Brussel (V. U. B.), Belgio, all'inizio sono stati presentati alcuni requisiti, come ad esempio:

  • Utilizzo e combinazione dei campi della meccanica, dell'elettronica e della programmazione
  • Un budget di 200€
  • Avere un robot finito e funzionante che porta qualcosa di nuovo

E poiché sarebbe stato utilizzato in sessioni di gioco di fuga nella vita reale, a volte più sessioni di fila, erano necessari alcuni requisiti in più da soddisfare:

  • Autonomia: trovare un modo per rendere semi-autonomo il robot per rispettare i vincoli di gioco
  • Facile da usare: facile da usare, presenza di uno schermo con feedback della fotocamera
  • Robustezza: materiali resistenti in grado di assorbire gli urti
  • Sicurezza: giocatori non a diretto contatto con il robot

Passaggio 1: concetto principale e motivazione

Come spiegato nell'introduzione, il concetto principale di questo progetto è creare e costruire un robot semi-autonomo, prima controllato dai giocatori del gioco di fuga, poi in grado di riprendere il controllo dai giocatori.

Il principio è il seguente: immagina di essere chiuso in una stanza con un gruppo di amici. L'unica possibilità per uscire dalla stanza è trovare una chiave. La chiave è nascosta in un labirinto situato sotto i tuoi piedi, in un buio soppalco. Per ottenere quella chiave, hai tre cose in tuo possesso: un telecomando, una mappa e uno schermo. Il radiocomando permette di comandare un'auto già nel soppalco, risolvendo un indovinello immaginato sui pulsanti di comando esistenti del radiocomando. Una volta risolto l'enigma, l'auto viene accesa (cfr. Passaggio 5: Codifica - funzione principale denominata 'loop()'), e puoi iniziare a guidare l'auto attraverso il labirinto con l'aiuto della mappa fornita. Lo schermo è lì per visualizzare dal vivo ciò che vede l'auto, grazie a una telecamera fissata davanti al robot, e quindi aiutarti a vedere le traiettorie e soprattutto la chiave. Una volta ottenuta la chiave grazie a un magnete sul fondo del robot, e una volta raggiunta la fine del labirinto, sarai in grado di prendere la chiave e fuggire dalla stanza in cui eri rinchiuso.

I componenti principali del robot sono quindi:

  1. Indovinello da risolvere sul telecomando
  2. Controllo del robot da parte dei giocatori con telecomando
  3. Display di controllo basato sul video girato in diretta dalla telecamera

Poiché in tali giochi il vincolo principale è il tempo (nella maggior parte dei giochi di fuga hai tra 30 minuti e 1 ora per uscire per avere successo), un sensore è attaccato e collegato alla base del robot in modo che se, come giocatori, superi un dato tempo (nel nostro caso 30 minuti), il robot riprende il controllo e termina il percorso da solo, così da avere la possibilità di ottenere la chiave della stanza prima che scada il timer del gioco (nel nostro caso 1 ora)

Inoltre, poiché l'auto si trova in una stanza completamente buia, i LED sono fissati non lontano dal sensore per aiutarlo a leggere il segnale da terra.

Il desiderio alla base di questo progetto di gruppo era quello di basarci su ciò che già esiste sul mercato, modificarlo aggiungendo un valore personale, e poterlo utilizzare in un ambito divertente e interattivo. Infatti, dopo essere stati in contatto con una Escape Room di successo a Bruxelles, in Belgio, abbiamo scoperto che gli escape game non solo sono sempre più famosi, ma spesso mancano di interattività e che i clienti si lamentano di non essere abbastanza "parte di " il gioco.

Abbiamo quindi cercato di elaborare un'idea di un robot che soddisfacesse i requisiti indicati invitando i giocatori a essere davvero parte del gioco.

Ecco un riepilogo di ciò che accade nel robot:

- La parte non autonoma: un telecomando è collegato ad Arduino tramite un ricevitore. I giocatori controllano il telecomando e quindi controllano l'Arduino che controlla i motori. L'Arduino viene acceso prima dell'inizio del gioco, ma entra nella funzione principale quando i giocatori risolvono un indovinello sul telecomando. Una telecamera wireless IR è già accesa (accesa contemporaneamente al "tutto" (controllato dall'Arduino) all'accensione/spegnimento acceso). I giocatori guidano l'auto con il telecomando: controllano la velocità e la direzione (cfr. Step 5: diagramma di flusso). Quando il timer che parte all'ingresso della funzione principale è pari a 30 minuti, il controllo dal controllore è disabilitato.

- La parte autonoma: il controllo viene poi gestito dall'Arduino. Dopo 30 minuti, il sensore di tracciamento della linea IR inizia a seguire una linea a terra per terminare il percorso.

Passaggio 2: materiali e strumenti

Materiale e strumenti
Materiale e strumenti
Materiale e strumenti
Materiale e strumenti
Materiale e strumenti
Materiale e strumenti

MATERIALE

Parti elettroniche

  • Microcontrollore:

    • Arduino UNO
    • Scudo motore Arduino - Reichelt - 22,52€
  • Sensori:

    Inseguitore di linea IR - Mc Hobby - 16,54€

  • Batterie:

    6 batterie da 1,5 V

  • Altro:

    • Protoboard
    • Fotocamera wireless (ricevitore) - Banggood - 21,63€
    • Telecomando (trasmettitore + ricevitore) - Amazon - 36,99€
    • Dock di ricarica (ricevitore Qi) - Reichelt - 22,33€ (non utilizzato - cfr. Step 7: Conclusione)
    • LED - Amazon - 23,60€

Parte meccanica

  • Kit telaio auto fai da te - Amazon - 14,99€

    • Usato:

      • 1x interruttore
      • 1x ruota orientabile
      • 2x ruote
      • 2x motore CC
      • 1x portabatteria
    • Non usato:

      • 1x telaio per auto
      • 4x M3*30 vite
      • 4x L12 distanziale
      • 4x elementi di fissaggio
      • 8x M3*6 vite
      • Dado M3
  • Magnete - Amazon - 9,99€
  • Bulloni, dadi, viti

    • M2*20
    • M3*12
    • M4*40
    • M12*30
    • tutti i rispettivi dadi
  • Pezzi stampati in 3D:

    • 5x molle
    • 2x fissaggio del motore
    • 1x fissaggio del tracker di linea a forma di L
  • Pezzi tagliati al laser:

    • 2x piatto piano rotondo
    • 5x piatto piano rettangolare piccolo

ATTREZZO

  • Macchine:

    • stampante 3d
    • Taglio laser
  • cacciaviti
  • trapano a mano
  • Lime
  • Saldatura elettronica

Passaggio 3: taglio (laser) e stampa (3D)

Image
Image
Taglio (laser) e stampa (3D)
Taglio (laser) e stampa (3D)
Taglio (laser) e stampa (3D)
Taglio (laser) e stampa (3D)

Abbiamo utilizzato sia le tecniche di taglio laser che di stampa 3D per ottenere alcuni dei nostri componenti. Puoi trovare tutti i file CAD nel file.step sottostante

Taglio laser

I due principali pezzi di fissaggio del robot sono stati tagliati al laser: (Materiale = cartone MDF di 4 mm)

- 2 dischi piatti rotondi per realizzare la base (o chassis) del robot

- Diversi fori sui due dischi per ospitare componenti meccanici ed elettronici

- 5 piastrine rettangolari per fissare le molle tra le due piastre telaio

Stampante 3D (Ultimakers & Prusa)

Diversi elementi del robot sono stati stampati in 3D, in modo da conferire loro resistenza e flessibilità allo stesso tempo: (Materiale = PLA)- 5 molle: si noti che le molle sono stampate come blocchi, quindi è necessario archiviarle per dare loro le loro forme "primaverili"!

- 2 incavi rettangolari per il fissaggio dei motori

- Pezzo a forma di L per ospitare il tracker di linea

Passaggio 4: assemblaggio dell'elettronica

Assemblaggio dell'elettronica
Assemblaggio dell'elettronica
Assemblaggio dell'elettronica
Assemblaggio dell'elettronica
Assemblaggio dell'elettronica
Assemblaggio dell'elettronica

Come puoi vedere negli schizzi elettronici, l'Arduino è come previsto il pezzo centrale della parte elettronica.

Connexion Arduino - Line tracker:(cfr. schizzo follower corrispondente)

Connexion Arduino - Motori:(cfr. schema generale corrispondente - sinistra)

Connexion Arduino - Ricevitore Telecomando:(cfr. schema generale corrispondente - in alto)

Connexion Arduino - LED:(cfr. schema generale corrispondente - sinistra)

Viene utilizzata una scheda prototipi per aumentare il numero di porte 5V e GND e facilitare tutte le connessioni.

Questo passaggio non è dei più semplici, in quanto deve soddisfare i requisiti sopra evidenziati (autonomia, semplicità d'uso, robustezza, sicurezza) e poiché il circuito elettrico necessita di particolari attenzioni e precauzioni.

Passaggio 5: codifica

codifica
codifica

La parte di codifica riguarda Arduino, motori, telecomando, tracker di linea e LED.

Puoi trovare sul codice:

1. Dichiarazione delle variabili:

  • Dichiarazione del Pin utilizzato dal ricevitore RC
  • Dichiarazione del Pin utilizzato da DC Motors
  • Dichiarazione del Pin utilizzato dai LED
  • Dichiarazione delle variabili utilizzate dalla funzione 'Riddle'
  • Dichiarazione del Pin utilizzato dai sensori IR
  • Dichiarazione delle variabili utilizzate da IR Deck

2. Funzione di inizializzazione: inizializzare i diversi pin e LED

Funzione 'setup()'

3. Funzione per i motori:

  • Funzione 'turn_left()'
  • Funzione 'turn_right()'
  • Funzione 'CaliRobot()'

4. Tracker della linea di funzione: utilizza la precedente funzione 'CaliRobot()' durante il comportamento semi-autonomo del robot

Funzione 'Seguace()'

5. Funzione per telecomando (indovinello): contiene la giusta soluzione all'enigma presentato ai giocatori

Funzione 'Indovinello()'

6. Funzione loop principale: consente ai giocatori di controllare l'auto una volta trovata la soluzione all'enigma, avvia un timer e cambia l'ingresso da digitale (telecomandato) a digitale (autonomo) quando il timer supera i 30 minuti

Funzione 'loop()'

Il processo principale del codice è spiegato nel diagramma di flusso qui sopra, con le funzioni principali evidenziate.

Puoi anche trovare l'intero codice per questo progetto nel file.ino allegato, che è stato scritto utilizzando l'interfaccia di sviluppo Arduino IDE.

Passaggio 6: assemblaggio

Assemblaggio
Assemblaggio
Assemblaggio
Assemblaggio
Assemblaggio
Assemblaggio

Una volta che abbiamo tutti i componenti tagliati al laser, stampati in 3D e pronti: possiamo assemblare il tutto!

Innanzitutto, fissiamo le molle stampate in 3D sulle loro piastre rettangolari tagliate al laser con bulloni di diametro uguale al diametro dei fori all'interno delle molle.

Una volta fissate le 5 molle sulle loro piastrine, possiamo fissare queste ultime sulla piastra inferiore del telaio con bulloni più piccoli.

In secondo luogo, possiamo fissare i motori ai fissaggi del motore stampati in 3D, sotto la piastra inferiore del telaio con piccoli bulloni.

Una volta fissate queste, possiamo venire a fissare le 2 ruote sui motori all'interno dei fori della piastra inferiore del telaio.

Terzo, possiamo fissare la ruota orientabile, anche sotto la piastra del telaio inferiore, con piccoli bulloni in modo che la piastra del telaio inferiore sia orizzontale

Ora possiamo sistemare tutti gli altri componenti

  • Piastra telaio inferiore:

    • Sotto:

      • Tracciatore di linea
      • GUIDATO
    • Terminato:

      • Ricevitore del telecomando
      • Arduino e scudo motore
      • GUIDATO
  • Piastra telaio superiore:

    • Sotto:

      Telecamera

    • Terminato:

      • batterie
      • Interruttore di accensione/spegnimento

Infine, possiamo assemblare insieme le due piastre del telaio.

Nota: Fare attenzione quando si montano tutti i componenti insieme! Nel nostro caso, una delle piastrine per le molle si è danneggiata durante l'assemblaggio delle due piastre del telaio, perché era troppo sottile. Abbiamo ricominciato con una larghezza maggiore. Assicurati di utilizzare materiali resistenti quando usi il taglio laser (così come la stampante 3D) e verifica le dimensioni in modo che i tuoi pezzi non siano troppo sottili o troppo fragili.

Passaggio 7: conclusione

Image
Image
Conclusione
Conclusione
Conclusione
Conclusione

Una volta assemblati tutti i componenti (assicurarsi che tutti i componenti siano ben fissati e non rischino di cadere), il ricevitore della telecamera collegato ad uno schermo (es. schermo tv), e le batterie (6x 1,5V) inserite nel portabatterie, sei pronto per testare il tutto!

Abbiamo cercato di portare il progetto un ulteriore passo avanti sostituendo le batterie (6x 1,5V) con una batteria portatile, mediante:

  • costruzione di un dock di ricarica (caricabatterie wireless fissato in una stazione di ricarica tagliata al laser (vedi foto));
  • aggiunta di un ricevitore (ricevitore Qi) sulla batteria portatile (vedi foto);
  • scrivendo una funzione sull'Arduino chiedendo al robot di seguire la linea a terra in senso inverso per raggiungere il dock di ricarica e ricaricare la batteria in modo che tutto il robot sia pronto autonomamente per la prossima sessione di gioco.

Poiché abbiamo riscontrato problemi nella sostituzione delle batterie con una batteria portatile poco prima della scadenza del progetto (promemoria: questo progetto è stato supervisionato dai nostri professori di ULB/VUB, quindi avevamo una scadenza da rispettare), non siamo stati in grado di testare il progetto finalizzato robot. Puoi comunque trovare qui un video del robot alimentato dal computer (connessione USB) e controllato dal telecomando.

Tuttavia, siamo riusciti a raggiungere tutti i valori aggiunti che ci eravamo prefissati: - Robustezza- Forma rotonda- Enigma di accensione- Interruttore di controllo (remoto -> autonomo) Se questo progetto ha catturato la vostra attenzione e la vostra curiosità, siamo quindi molto curioso di vedere cosa hai fatto, vedere se hai fatto alcuni passaggi diversi da noi e vedere se sei riuscito nel processo di ricarica autonoma!

Non esitate a dirci cosa ne pensate di questo progetto!

Consigliato: