Sommario:

Crack the Code Game, Puzzle Box basato su Arduino: 4 passaggi (con immagini)
Crack the Code Game, Puzzle Box basato su Arduino: 4 passaggi (con immagini)

Video: Crack the Code Game, Puzzle Box basato su Arduino: 4 passaggi (con immagini)

Video: Crack the Code Game, Puzzle Box basato su Arduino: 4 passaggi (con immagini)
Video: Высокая плотность 2022 2024, Dicembre
Anonim
Image
Image
Crack the Code Game, Puzzle Box basato su Arduino
Crack the Code Game, Puzzle Box basato su Arduino
Crack the Code Game, Puzzle Box basato su Arduino
Crack the Code Game, Puzzle Box basato su Arduino

Progetti Tinkercad »

In questo Instructable, ti mostrerò come costruire il tuo gioco di cracking del codice in cui usi un selettore rotativo per indovinare il codice generato casualmente nella cassaforte. Ci sono 8 LED sulla parte anteriore della cassaforte per dirti quante delle cifre che hai indovinato sono corrette e quante sono anche nel posto giusto.

La cassaforte è inizialmente aperta, permettendoti di riporre qualcosa nello scomparto interno. L'Arduino e la batteria sono alloggiati in un vano separato nella parte posteriore. Quindi premi la manopola per bloccare la cassaforte, operazione che viene eseguita utilizzando un servo all'interno della porta. È quindi necessario inserire il codice ruotando la manopola per selezionare le cifre e premendo la manopola per confermare ciascuna cifra. Dopo aver scelto la tua quarta cifra, la cassaforte mostra quante delle tue cifre sono corrette e quante di esse sono nella posizione corretta utilizzando i LED rosso e verde sulla porta.

Un LED rosso indica una cifra corretta e un LED verde indica che è anche nella posizione corretta. Quindi è necessario accendere tutti e quattro i LED rosso e verde per decifrare il codice e aprire la cassaforte.

La cassaforte tiene traccia di quante ipotesi hai fatto per decifrare il codice e questo viene visualizzato una volta che sei riuscito a decifrarlo. All'inizio può sembrare complicato, ma in realtà non è così difficile, devi solo ricordare e costruire sulle tue ipotesi precedenti. La maggior parte delle volte dovresti essere in grado di decifrare il codice in 5-10 tentativi, a seconda di quanto siano fortunati i tuoi tentativi iniziali.

Se ti piace questo Instructable, considera di votarlo nel concorso Arduino.

Forniture

Per costruire questa cassetta di sicurezza Crack The Code, avrai bisogno di:

  • Arduino Uno - Acquista qui
  • Display OLED I2C – Acquista qui
  • Encoder a pulsante – Acquista qui
  • LED rossi da 4 x 5 mm – Acquista qui
  • 4 LED verdi da 5 mm – Acquista qui
  • 8 x 220Ω resistori – Acquista qui
  • Micro Servo – Acquista qui
  • Cavo a nastro - Acquista qui
  • Strisce di intestazione - Acquista qui
  • Interruttore di alimentazione - Acquista qui
  • Foglio MDF da 3 mm - Acquista qui

Avrai anche bisogno di alcuni strumenti di base, colla per legno, una pistola per colla e un saldatore.

Le parti per la cassetta di sicurezza devono essere tagliate al laser. Se non hai accesso a un laser cutter, prendi in considerazione l'utilizzo di un servizio di taglio laser online, sono diventati abbastanza convenienti e taglieranno e consegneranno i componenti a casa tua.

Questo è il laser cutter che ho usato in Instructable - K40 Laser Cutter

Passaggio 1: assemblare la scatola

Assemblare la scatola
Assemblare la scatola
Assemblare la scatola
Assemblare la scatola
Assemblare la scatola
Assemblare la scatola
Assemblare la scatola
Assemblare la scatola

Ho progettato la cassetta di sicurezza in Inkscape, per essere tagliata da MDF da 3 mm. Se lo desideri, puoi anche tagliare le parti da acrilico o compensato da 3 mm. Se usi un materiale di diverso spessore, dovrai regolare le fessure nei componenti della scatola in modo che si adattino correttamente.

Puoi scaricare i file di taglio laser qui.

Ci sono 6 pannelli che compongono l'esterno della scatola, il retro e il davanti hanno dei ritagli per le porte anteriori e posteriori. I pannelli sono etichettati nel file di stampa in modo da poterne tenere traccia.

Anche il quadrante è composto da alcuni pezzi tagliati al laser che vengono poi incollati insieme.

Ci sono tre pannelli decorativi che sono attaccati alla parte superiore e ai due lati della scatola per farla sembrare più una cassaforte. Ci sono anche due pannelli che compongono la porta e un pannello divisorio che va al centro della scatola per separare il vano cassaforte dal vano dell'elettronica.

I pezzi si adattano a un unico pezzo di MDF 400 x 500 mm e possono essere divisi in pezzi più piccoli se il tuo laser cutter non è abbastanza grande da tagliare tutti i pezzi contemporaneamente.

Ho iniziato incollando prima i pannelli decorativi sulla parte superiore e sui lati. Assicurati di avere i pezzi nell'ordine corretto in modo da sapere quali sono quali. Ci sono tre pezzi diversi, la parte superiore e quella inferiore sono uguali, i lati sono gli stessi e il davanti e il dietro sono gli stessi.

Una volta che i pannelli sono asciutti, puoi assemblare la scatola.

Assicurati che i ritagli per il divisore centrale siano sui lati. Questi servono per far passare qualsiasi cavo dalla parte anteriore della scatola al retro della scatola dove si trovano l'Arduino e la batteria.

Anche le cerniere sono tagliate al laser e vengono semplicemente incollate in posizione una volta allineata la porta. Assicurati che siano parallele alla porta o avrai difficoltà ad aprirla. Potrebbe anche essere necessario carteggiare leggermente il bordo incernierato interno della porta in modo che non sfreghi sul bordo della scatola mentre si sposta oltre.

Incolla i quattro quadrati negli angoli dietro il pannello posteriore per forare le viti per il coperchio posteriore.

Puoi quindi praticare i fori per le viti e iniziare a montare lo schermo, l'Arduino, la cover posteriore e infine l'encoder.

Passaggio 2: collegare l'elettronica

Collega l'elettronica
Collega l'elettronica
Collega l'elettronica
Collega l'elettronica
Collega l'elettronica
Collega l'elettronica

Ho progettato il circuito su una breadboard in Tinkercad Circuits e successivamente ho aggiunto il display OLED.

Abbiamo 8 LED collegati ai pin IO digitali da 6 a 13. Il servo di bloccaggio è collegato al pin 5. L'encoder è collegato ai pin 2, 3 e 4 e il display OLED è collegato all'interfaccia I2C di Arduino.

Ho usato un resistore da 220 ohm per ogni LED, saldato direttamente sul led negativo e ho collegato i componenti insieme usando un cavo a nastro colorato per mantenere il cablaggio ordinato e per tenere traccia di quale filo doveva andare a ciascun pin Arduino.

Ho spinto i cavi a nastro attraverso lo scomparto posteriore e ho saldato alcune strisce di intestazione del pin sul cavo a nastro per collegarlo all'Arduino.

Ho anche montato un interruttore di alimentazione sulla cover posteriore e l'ho collegato a una presa della batteria per collegarlo a una batteria ricaricabile per alimentare il gioco. Se lo desideri, puoi anche utilizzare una batteria da 9 V.

Infine, dovrai posizionare il servo di bloccaggio verso il bordo della porta in modo che passi sopra il labbro nella scatola e il braccio sia in grado di spingersi contro l'interno del labbro per bloccare la scatola. Questo non è il meccanismo di blocco più potente, ma è davvero semplice e funziona bene per lo scopo del gioco.

Passaggio 3: programmazione di Arduino

Programmare Arduino
Programmare Arduino
Programmare Arduino
Programmare Arduino

Non esaminerò il codice in modo così dettagliato come al solito poiché c'è molto da fare. Ho fatto un resoconto dettagliato spiegando ogni parte di esso che puoi trovare insieme al download del codice tramite questo link - Crack The Code Game Code.

In sintesi; iniziamo importando le librerie per controllare il display OLED e il servo.

Quindi impostiamo i parametri per il display e creiamo tutte le nostre variabili. Ci sono alcune variabili dedicate al tracciamento dei giri dell'encoder poiché queste vengono eseguite tramite interruzioni del fronte di salita sui pin 2 e 3.

Sono stati creati due array di codici, uno per memorizzare il codice generato casualmente e uno per memorizzare l'ipotesi corrente dell'utente.

Nella funzione di configurazione avviamo il display, colleghiamo il servo, impostiamo le modalità dei pin IO e quindi visualizziamo l'animazione di testo Crack The Code sul display.

La funzione loop fa lampeggiare i LED e visualizza il messaggio push to lock safe che poi attende che l'utente prema la manopola per avviare il gioco. Lo stesso codice viene eseguito alla fine di un gioco che quindi visualizza il numero di tentativi e attende la pressione del quadrante per iniziare un nuovo gioco.

C'è un codice antirimbalzo sul pulsante dell'encoder e una volta premuto, il servo blocca la cassaforte e viene generato un codice casuale. Il codice quindi chiama una funzione per chiedere all'utente di inserire la propria ipotesi e poi un'altra per verificare l'ipotesi, questo viene ripetuto finché l'utente non indovina correttamente il codice.

C'è una funzione per aggiornare il codice visualizzato che viene chiamato ogni volta che si gira l'encoder e il codice visualizzato deve cambiare.

La funzione per generare un nuovo codice assegna semplicemente una cifra casuale a ciascuno dei quattro elementi nell'array di codice.

La funzione per inserire un codice indovinato consente all'utente di selezionare una cifra utilizzando l'encoder e quindi confermare ogni cifra inserita premendo l'encoder verso il basso.

La funzione di verifica del codice indovina quindi esamina il codice indovinato e decide quante cifre sono corrette e quante sono nella posizione corretta.

La funzione di aggiornamento dei LED attiva il numero corretto di LED rossi e verdi in base all'ipotesi dell'utente.

La funzione ani di avvio mostra l'animazione Crack The Code all'avvio.

Infine, due funzioni di interrupt gestiscono l'ingresso dall'encoder, una che incrementa la cifra se ruotata in senso orario e una che diminuisce se ruotata in senso antiorario.

Passaggio 4: giocare a Crack the Code Game

Giocare a Crack the Code Game
Giocare a Crack the Code Game
Giocare a Crack the Code Game
Giocare a Crack the Code Game
Giocare a Crack the Code Game
Giocare a Crack the Code Game
Giocare a Crack the Code Game
Giocare a Crack the Code Game

Il modo migliore per imparare a giocare è guardare il video all'inizio, ci sono due esempi del gioco che viene giocato verso la fine.

La cassaforte è inizialmente sbloccata, permettendoti di mettere qualcosa al suo interno.

Quindi premi la manopola per bloccare la cassaforte e generare un nuovo codice.

Il codice indovinato viene inserito utilizzando la manopola per incrementare la cifra e premendo la manopola per passare alla cifra successiva o per confermare il codice una volta selezionate tutte e quattro le cifre.

I LED sulla parte anteriore si accendono quindi per dirci cosa era corretto nella nostra ipotesi.

Quindi usi questo feedback per fare la tua prossima ipotesi fino a quando non sarai in grado di indovinare il codice corretto e riaprire la cassaforte. Una volta inserito il codice corretto, la cassaforte si sblocca e viene visualizzato il numero di tentativi necessari per decifrare il codice.

Divertiti a costruire la tua cassetta di sicurezza per decifrare il codice. Se ti è piaciuto questo Instructable, considera di votarlo nel concorso Arduino.

Concorso Arduino 2020
Concorso Arduino 2020
Concorso Arduino 2020
Concorso Arduino 2020

Secondo Premio al Concorso Arduino 2020

Consigliato: