Sommario:
- Forniture
- Passaggio 1: circuito
- Passaggio 2: codice Arduino
- Passaggio 3: codice unitario
- Passaggio 4: creazione della custodia
Video: Joystick a ultrasuoni: 4 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:01
Utilizzando un Arduino ho voluto realizzare una costruzione per controllare il gioco Snake in un modo insolito, utilizzando sensori di distanza ad ultrasuoni. Questo è fatto per un progetto scolastico chiamato If This Than That presso l'Università delle Arti di Utrecht
Dopo tante sperimentazioni, questo è il risultato finale.
Ci sono ancora alcuni bug durante il controllo di Snake. (Il registro olandese può essere trovato qui)
Forniture
Requisiti:
- Arduino Uno (qualsiasi Arduino teoricamente funzionerebbe)
- 2 sensori di distanza ad ultrasuoni (HC-SR04)
- 8 cavi per collegare i sensori di distanza ad Arduino. Preferibilmente cavi da maschio a femmina
- Un recinto di almeno 300 mm x 300 mm x 40 mm. (larghezza e altezza sono facilmente regolabili. La profondità è di 40 mm perché è necessario spazio per i componenti all'interno)
- Unità
Per renderlo permanente, hai bisogno di:
- Saldatore
- Saldare
- Pistola per colla (a caldo) (o supporti per i sensori di distanza)
- Intestazioni maschio-maschio da collegare ad Arduino
- 8 cavi per saldare i sensori di distanza ad ultrasuoni ai connettori maschio.
Passaggio 1: circuito
Il circuito è davvero semplice.
- È necessario collegare la massa ai pin di massa dei sensori di distanza ad ultrasuoni.- Il 5V (uso anche Vin, perché uso l'alimentazione USB) va sui pin Vcc sull'Arduino.- I pin Trig vanno su D8 (Arduino Digital pin 8) per 1 sensore e D11 per l'altro sensore- I pin Echo vanno su D9 per 1 sensore e D12 per l'altro
Per la sperimentazione, è facile usare cavi da maschio a femmina.
Per fare una soluzione permanente è meglio saldare i fili ai sensori a ultrasuoni e ai connettori maschio-maschio. Dopodiché, puoi inserire l'intestazione da maschio a maschio in Arduino per farlo funzionare.
Passaggio 2: codice Arduino
Ci saranno 2 parti di codice per questo progetto.
1. Ottenere la distanza usando la libreria NewPing.h e spingendola sul Seriale.
2. Assicurarsi che il seriale sia formattato in modo che Unity possa leggerlo correttamente
Puoi vedere il codice, con commenti appropriati qui:
Passaggio 3: codice unitario
Ho fatto serpente in unità. Ci sono alcune risorse Open Source che ho usato.
Primo: tutorial di YouTube su come creare Snake in Unity di Code Monkeyhttps://www.youtube.com/playlist?list=PLzDRvYVwl53…
Secondo: WRMHL per gestire la lettura da Serial all'interno di unity.https://github.com/relativty/wrmhl
Terzo: l'aiuto di UKL e del suo progetto GitHub "rover virtuale"
Con tutte le fonti indicate, il file del progetto Unity può essere scaricato qui:
Faccio sprite con le immagini della parte superiore delle persone e del cibo. Questo perché non volevo utilizzare i beni di altre persone.
Passaggio 4: creazione della custodia
Questo passaggio dipende davvero da te come vuoi farlo. Puoi tagliare molto facilmente la scatola con il laser se hai le risorse. Ho appena preso un grosso pezzo di legno e l'ho visto nelle dimensioni desiderate.
Le mie dimensioni:- Lato inferiore: 450x450mm
- Lato superiore: 450x450mm, con un taglio a croce. Questo è centrato, a 60 mm dai lati e ha una larghezza di 20 mm
- Lati: 2x 450x50mm e 2x 420x50mm (questo perché il legno si sovrapporrebbe altrimenti) È intelligente fare un ritaglio in 1 lato in cui è possibile passare attraverso la porta/cavo USB Arduino per una facile connettività.
- Bastone: diametro 15 mm (assicurarsi che sia inferiore alla larghezza del ritaglio trasversale
L'ho semplicemente messo insieme con le unghie. La parte superiore è stata resa rimovibile avvitando i raccordi a 90 gradi sul fondo, in modo da poterla sollevare verticalmente, ma non è possibile spostarla durante il gioco.
Ho avvitato l'Arduino in modo che non si muova.
I sensori di distanza sono incollati con colla a caldo. Anche i cavi sono gestiti tramite colla a caldo.
Ho dipinto di bianco tutti i lati semplici e ho dipinto 4 frecce sulla parte superiore per renderlo più comodo da usare.
Consigliato:
Robot per evitare gli ostacoli che utilizza il sensore a ultrasuoni (Proteus): 12 passaggi
Robot per evitare gli ostacoli che utilizza il sensore a ultrasuoni (Proteus): generalmente ci imbattiamo in robot per evitare gli ostacoli ovunque. La simulazione hardware di questo robot fa parte della competizione in molti college e in molti eventi. Ma la simulazione software del robot ostacolo è rara. Anche se riusciamo a trovarlo da qualche parte
Lampioni stradali automatici con sensore a ultrasuoni: 3 passaggi
Lampioni stradali automatici con sensore a ultrasuoni: hai mai pensato che i lampioni stradali si accendono automaticamente di notte e si spengono automaticamente al mattino? C'è qualcuno che viene ad ACCENDERE/SPEGNERE queste luci? Ci sono diversi modi per accendere i lampioni ma il seguente c
Misurare la distanza con il sensore a ultrasuoni HC-SRF04 (ultimo 2020): 3 passaggi
Misurare la distanza con il sensore a ultrasuoni HC-SRF04 (ultimo 2020): cos'è il sensore a ultrasuoni (distanza)? Un ultrasuono (sonar) con onde di alto livello che le persone non possono sentire. Tuttavia, possiamo vedere la presenza di onde ultrasoniche ovunque in natura. In animali come pipistrelli, delfini… usa le onde ultrasoniche per
Pattumiera intelligente con Arduino, sensore a ultrasuoni e servomotore: 3 passaggi
Pattumiera intelligente utilizzando Arduino, sensore a ultrasuoni e servomotore: in questo progetto, ti mostrerò come realizzare una pattumiera intelligente usando Arduino, in cui il coperchio della pattumiera si aprirà automaticamente quando ti avvicini con la spazzatura. Gli altri componenti importanti utilizzati per realizzare questa pattumiera Smart sono un sensore a ultrasuoni HC-04
Usa il sensore a ultrasuoni con Magicbit [Magicblocks]: 5 passaggi
Usa il sensore a ultrasuoni con Magicbit [Magicblocks]: questo tutorial ti insegnerà a usare il sensore a ultrasuoni con il tuo Magicbit usando Magicblocks. Stiamo usando magicbit come scheda di sviluppo in questo progetto basato su ESP32. Pertanto qualsiasi scheda di sviluppo ESP32 può essere utilizzata in questo progetto