Sommario:
- Passaggio 1: requisiti
- Passaggio 2: il tappetino Twister
- Passaggio 3: l'alloggiamento
- Passaggio 4: elettronica
- Passaggio 5: configurazione del Raspberry PI
- Passaggio 6: banca dati
- Passaggio 7: codice
- Passaggio 8: servizio automatizzato
- Passaggio 9: istruzioni
Video: Twister interattivo: 9 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:04
Twister è un classico gioco per famiglie e sono sicuro che tutti coloro che leggono questo Instructable ci hanno giocato almeno una volta. L'obiettivo principale del gioco è essere l'ultimo uomo in piedi sulla tela e assicurarsi di non cadere durante l'esecuzione dei compiti scelti dalla ruota che gira.
Il problema è che in ogni partita di Twister ci deve sempre essere qualcuno che fa girare la ruota. Non sarebbe molto più semplice se tutto questo potesse accadere automaticamente? In questo modo tutti possono divertirsi giocando a Twister.
Sono uno studente di NMCT a Howest Kortrijk. Questo è il progetto finale nel nostro primo anno.
In questo Instructable spiegherò come ho realizzato un gioco Twister interattivo e come potresti costruirlo a casa.
Passaggio 1: requisiti
- Lampone Pi
- T-calzolaio
- Gioco Twister
- Motore passo-passo
- DRV8825
- LDR
- Condensatori (100 µf e 10 µf)
- Cavi in diversi colori
- Foglio di alluminio
- nastro adesivo
- Nastro elettrico
- Nastro biadesivo
- Velcro
- Tavole di legno
- Breadbord
- Perfboard (opzionale)
- Intestazioni femminili (opzionale)
- Adattatore 5V per Raspberry Pi
- Adattatore 12V
- 2 x MCP23017
Passaggio 2: il tappetino Twister
Requisiti:
- Rotolo di schiuma
- Tappetino Twister
- nastro adesivo
- Foglio di alluminio
- cavi
- marcatore
Istruzioni:
Realizzare il tappetino è in realtà la parte più impegnativa dell'intero progetto. Non è così difficile da montare, ma devi solo ripetere tutto 24 volte. Implica anche un sacco di ductape… e intendo davvero molto.
Per iniziare devi tagliare 2 pezzi di gommapiuma delle stesse dimensioni del tappetino Twister. Ho usato la schiuma che si usava per mettere sotto i pavimenti in parquet. Il problema è che la schiuma è piuttosto sottile. Se riesci a trovare una schiuma di almeno 2 mm, sarebbe molto meglio e avrai meno lavoro per realizzare la tela, ma ci tornerò più tardi.
Sul primo strato di schiuma devi mettere quattro strisce di foglio di alluminio attraverso l'intera schiuma. Questi saranno usati come massa per il circuito. Il modo migliore per attaccarlo è mettere il ductape sui lati.
Metti lo strato successivo di schiuma sopra il tappetino Twister. Disegna un cerchio per ogni punto sul tappetino Twister. devi fare un buco in ogni cerchio sulla schiuma. Il diametro del foro non è così importante, assicurati solo che non sia troppo grande o troppo piccolo.
Ogni foro deve essere coperto da un foglio di alluminio. Anche in questo caso il modo migliore per attaccarlo è ductape. Assicurati che nessuna patch conduca per evitare errori.
Questo non è necessario, ma se la schiuma utilizzata è inferiore a 2 mm, è necessario applicare una sorta di rialzo su ciascun foro per evitare che la pellicola si attacchi. Ho usato piccole noccioline di schiuma fornite con la confezione dei miei componenti.
L'ultimo passaggio è il cablaggio. Ogni patch necessita di 1 cavo. Le patch di terra possono essere collegate tra loro e successivamente con il Raspberry pi.
Passaggio 3: l'alloggiamento
Requisiti
- tavole di legno
- unghia
- trapano
- velcro
Istruzioni:
dimensioni: 32 cm x 30 cm x 8 cm
L'alloggiamento è solo un semplice design a scatola. Puoi vedere le tavole di cui hai bisogno in una delle immagini sopra. Il legno è stato segato nel mio deposito locale. Non sono molto pratico e per un piccolo prezzo hanno visto il legno e sai già che sarà delle dimensioni giuste.
Per assemblare la scatola ho solo forato le viti sul fondo. La lunghezza delle viti non è così importante. Assicurati solo che siano più lunghi dell'altezza della piastra di base e che non siano troppo lunghi in modo da rompere il legno.
Al centro del coperchio devi praticare un piccolo foro per adattare il motore. Quel foro deve avere un diametro di 5 mm.
Il coperchio è fissato alla scatola tramite velcro.
L'ultima cosa che devi fare è fare un foro nella parte anteriore per i cavi del tappetino Twister e un foro nella parte posteriore per i due adattatori. Il diametro dei fori dipende dagli adattatori che utilizzi e da come puoi gestire i cavi del tuo tappetino. Ho tagliato un foro rettangolare per i cavi del tappetino perché non avevo un trapano abbastanza grande.
Passaggio 4: elettronica
Requisiti:
- DRV8825
- Motore passo-passo
- 2 x mcp23017
- LDR
- Condensatore elettrolitico da 100 µF
- Condensatore elettrolitico da 10 µF
- Calzolaio a T Raspberry Pi
- Resistore da 24 x 330 ohm
Istruzioni:
Il modo più veloce per realizzare tutta l'elettronica è metterla su una breadboard. Il problema è che non è stato risolto nulla e alcuni componenti possono allentarsi. Il modo migliore per procedere è saldare tutto su un pcb. Ho saldato il driver del motore passo-passo e il sensore. Ho lasciato i due espansori IO sulla breadboard perché molti cavi vanno agli MCP23017. Come farlo dipende interamente da te.
Alcune note a margine sul cablaggio:
Il motore passo-passo ha due coppie di bobine. I fili delle coppie sul mio motore dove:
nero, verde -> coppia 1
rosso, blu -> coppia 2
Assicurati che gli ingressi del tappetino Twister siano collegati nell'ordine corretto. Il primo punto è collegato a GPA0 del primo MCP23017. L'ultimo punto è collegato a GPA7 del secondo MCP23017. Assicurati che ci sia un resistore alla fine di ogni ingresso.
Passaggio 5: configurazione del Raspberry PI
Requisiti:
- Lampone PI
- Scheda SD
- cavo Ethernet
Istruzioni:
Scarica l'immagine Raspian da https://www.raspberrypi.org/downloads/raspbian/. Assicurati di scaricare la versione desktop. Masterizza l'immagine sulla tua scheda SD utilizzando un programma di masterizzazione. Ho usato etch, ma sentiti libero di usare un altro programma. Prima di inserire la scheda SD nel tuo Pi, devi cambiare alcune cose con il PC. Apri il segmento di avvio della scheda SD. Non puoi aprire l'altro segmento perché Windows non riconosce Linux. Nel boot, apri il file: "cmdline.txt". Alla fine del file, aggiungi la riga: "ip=169.2554.10.1". Questo è un indirizzo APIPA e viene utilizzato per connettere il PC e il Pi tramite ssh. Una volta fatto, crea un file sul segmento di avvio chiamato "ssh" ma senza un'estensione. In questo modo il Pi abiliterà ssh all'avvio.
Collega il tuo Pi al PC con un cavo ethernet. Dovrai scaricare un programma per ssh sul Pi. Ho usato lo stucco. Apri mastice e inserisci l'indirizzo APIPA (169.254.10.1) e apri la connessione. Quando il PI si avvia per la prima volta, potrebbe volerci un po' di tempo prima che tutto sia pronto. Aspetta un attimo e riprova più tardi se non riesci a connetterti. Una volta connesso, accedi con le credenziali standard: username: pi, password: raspberry.
Se vuoi puoi creare il tuo utente. Ora devi configurare una connessione Internet. Se vuoi usare il wifi, puoi usare questi due comandi:
wpa_passphrase 'SSID' 'Password' | sudo tee -a /etc/wpa_supplicant/wpa_supplicant.conf
wpa_cli -i wlan0 reconfigure
Installa questi programmi utilizzando i seguenti comandi:
sudo apt update && sudo apt install -y python3-venv
python3 -m pip install --upgrade pip setuptools wheel python3 -m venv --system-site-packages env
python -m pip install mysql-connector-python argon2-cffi Flask Flask-HTTPAuth Flask-MySQL mysql-connector-python passlib flask-socketio
Passaggio 6: banca dati
Requisiti:
- Lampone Pi
- Cavo Ethernet
L'applicazione utilizza un database per memorizzare informazioni sugli utenti, sui vincitori e sui dati di gioco.
Per prima cosa configura il programma db sul tuo Raspberry Pi. Hai già installato Mysql sul Pi nel passaggio precedente.
Usa "sudo systemctl status mysql" per verificare se Mysql funziona.
Avvia MySQL:
sudo mariadb
Quindi inserisci il seguente codice:
CREA UTENTE 'project_name-admin'@'localhost' IDENTIFICATO DA 'adminpassword';
CREATE DATABASE nome_progetto;
CONCEDERE TUTTI I PRIVILEGI SU project_name.* a 'project1-admin'@'localhost' CON L'OPZIONE DI CONCESSIONE;
PRIVILEGI DI SCARICO;
Cambia il nome del progetto come preferisci.
Per riempire il database, esegui il file sql fornito con il codice più avanti in questo istruzioni.
Passaggio 7: codice
Puoi trovare il codice al seguente link:
Basta clonare il repository sul tuo Raspberry Pi.
Assicurati che sia clonato nella directory diretta sotto il tuo utente.
Passaggio 8: servizio automatizzato
Il programma deve avviarsi all'avvio di Raspberry Pi. Per fare ciò devi rendere un servizio della tua applicazione.
La configurazione è già stata effettuata e si trova nella directory conf.
L'unica cosa che devi fare per consentire l'avvio del servizio all'avvio è questa riga di codice:
sudo systemctl enable project1.service
L'unico problema è che il pi attenderà l'avvio di una rete. Puoi disabilitarlo ma non ha alcun effetto perché utilizziamo l'indirizzo APIPA nel cmdline.txt. Se vuoi che si avvii più velocemente, devi rimuovere l'indirizzo APIPA ma poi dovrai collegare il tuo Pi a un monitor quando non puoi connetterti al wifi se c'è un problema.
Passaggio 9: istruzioni
Digita l'indirizzo IP di th Pi nel tuo browser. Non dimenticare di aggiungere:5000 all'indirizzo IP.
Quando arrivi al sito, inizia una nuova partita e inserisci i nomi dei giocatori.
Una volta avviato il gioco, devi attendere 5 secondi affinché i due dispositivi siano collegati.
Per far girare il puntatore, coprire il sensore di luce. Dopo che il puntatore smette di girare, la mossa appare sullo schermo.
Se qualcuno cade o non può svolgere il proprio compito, perde e devi premere il suo nome sullo schermo.
Vince l'ultimo giocatore in piedi.
Puoi vedere tutti coloro che hanno vinto in passato nel grafico della cronologia.
Divertiti!
Consigliato:
BBC Micro:bit and Scratch - Volante interattivo e gioco di guida: 5 passaggi (con immagini)
BBC Micro:bit e Scratch - Volante interattivo e gioco di guida: Uno dei miei compiti di classe questa settimana è utilizzare BBC Micro:bit per interfacciarsi con un programma Scratch che abbiamo scritto. Ho pensato che questa fosse l'occasione perfetta per usare il mio ThreadBoard per creare un sistema embedded! La mia ispirazione per lo scratch p
Come aggiungere un bot interattivo in Discord: 6 passaggi
Come aggiungere un bot interattivo in Discord: in questo tutorial mostrerò come creare un proprio bot interattivo che funzioni con alcuni comandi. Discord è un'app di social media Skype/Whats-app che unisce i giocatori. Possono avere un proprio canale, controllare a quale gioco gioca ogni membro
Come eseguire il rebase interattivo con Eclipse (eGit): 10 passaggi
Come eseguire il rebase interattivo con Eclipse (eGit): 20180718 - I "penso" Ho risolto il problema con le immagini. Se appaiono ingranditi o non hanno senso, prova a fare clic. Se riscontri un problema inviami un messaggio e cercherò di aiutarti
Tavolino LED interattivo Arduino: 6 passaggi (con immagini)
Arduino Interactive LED Coffee Table: Ho realizzato un tavolino interattivo che accende le luci a led sotto un oggetto, quando l'oggetto viene posizionato sopra il tavolo. Si accenderanno solo i led che si trovano sotto quell'oggetto. Lo fa utilizzando efficacemente i sensori di prossimità e quando la prossima
Realizza un sistema LED interattivo per scale: 7 passaggi
Crea un sistema LED interattivo per le scale: c'è una scala in casa. È molto interessante vedere molti progetti di ristrutturazione delle scale nella comunità. Non molto impegnato di recente, quindi ho deciso di utilizzare alcuni moduli hardware open source per trasformare le scale di casa e aggiungere un po' di interazione