Sommario:
- Passaggio 1: assemblaggio meccanico
- Passaggio 2: progetta il tuo gioco
- Passaggio 3: codifica
- Passaggio 4: taglio
- Passaggio 5: assemblaggio del controller
- Passaggio 6: plug and play
Video: Tipo: 6 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:00
Descrizione del progetto: creazione di un controller basato sul movimento in grado di comunicare i dati avanti e indietro dalla scheda arduino al motore di progettazione del gioco Unity 5. In questo caso, stiamo utilizzando un accelerometro a tre assi (Adxl345) per controllare la posizione X e Y degli oggetti di gioco all'interno del motore Unity. Sia l'accelerometro che l'arduino sono assemblati in una scatola rettangolare per formare un controller comodo e facile da usare.
Materiali:
Accelerometro
Colla adesiva
Arduino BoardCompetenze di saldatura di base
BreadboardLaser Cutter (anche la sega a nastro funzionerebbe, ma non così precisa)
Plexiglass (o qualsiasi altro materiale in cui desideri assemblare l'arduino e l'accelerometro) Cavo USB 1.1
fili
Passaggio 1: assemblaggio meccanico
Per prima cosa, metti i perni nell'acceleratore. In questo esempio, tutti i pin sono saldati, ma gli unici pin necessari sono: porta VIN, porta Grnd, porta SDA e porta SCL. Posiziona l'accelerometro sulla breadboard in modo che tutti i pin siano in righe diverse, ma nella stessa colonna. Quindi, collega i quattro fili dall'arduino all'acceleratore. Un filo dovrebbe andare dalla porta 5V sull'arduino, alla porta VIN sull'accelerometro. Anche entrambe le porte di terra sull'arduino e sull'accelerometro dovrebbero essere collegate. Le porte SDA e SCL sull'arduino dovrebbero anche essere collegate (e abbinate) alle porte SDA e SCL sull'accelerometro. Controlla il retro del tuo arduino per scoprire quali delle sue porte sono SDA e SCL. Non preoccuparti di collegare un alimentatore, tutta l'alimentazione verrà fornita all'arduino tramite il cavo USB 1.1.
Passaggio 2: progetta il tuo gioco
Questa è probabilmente la parte più importante del gioco ed è altamente raccomandato essere a proprio agio con l'unità per questo progetto. Puoi davvero realizzare qualsiasi tipo di gioco tu voglia, abbiamo deciso di creare un gioco in stile palla e labirinto. Quando crei il gioco, assicurati di creare tutti gli oggetti che devono essere controllati come figli di un oggetto di gioco più grande.
Passaggio 3: codifica
Questa è probabilmente la parte più difficile del progetto. La prima cosa che vorrai fare è scaricare la libreria di codici per l'accelerometro ADXL345 nell'IDE di Arduino. Può essere trovato sul sito Web di adafruit. Una volta caricato su arduino, sputerà una serie di dati nel monitor seriale. In realtà, l'ideale sarebbe prendere i dati posizionali XYZ e inviarli direttamente al progetto unity, ma l'invio di float non è così semplice come sembra. Quando si inviano i dati, l'unità li leggerà sempre come una stringa, il che si rivela difficile da utilizzare. Per ovviare a questo, quello che possiamo fare è una serie di istruzioni if per arduino. per esempio:
if(evento.accelerazione.y >3){
Serial.println("destra");
}
Vorremo fare questi tipi di confronti per otto diverse direzioni: Su, Giù, Sinistra, Destra, Su-destra, Su-sinistra, Giù-destra e Giù-sinistra.
Inviando queste stringhe di indicazioni, possiamo effettivamente usarle! In Unity, sul nostro controller del lettore (che dovrebbe essere collegato all'oggetto o al gruppo di oggetti che desideri controllare) vorremmo usare un'istruzione if che utilizzerà la stringa che viene letta:
if(serial. ReadLine() == "sinistra"){
Debug. Log("sinistra");
transform. Rotate((-Time.deltaTime * 50), 0, 0);
}
E ancora, vorremo farlo per tutte e otto le direzioni.
Ora, la parte più difficile è consentire effettivamente l'invio dei dati all'unità. Nello stesso script, vorremmo consentire la libreria Serial: using System. IO. Ports
Quindi, vorremo creare una nuova istanza di porta seriale:
SerialPort serial = new SerialPort("COM5", 9600);
** Nota per verificare quale COM sta utilizzando il tuo arduino, puoi farlo in Arduino IDE, ma i più comuni sono COM3 e COM5. **
All'interno della nostra funzione di avvio vogliamo ora aprire la porta seriale:
if(!serial. IsOpen){
seriale. Open();
seriale. ReadTimeout = 10;
}
Dopo tutto questo, prova a testare il trasferimento dei dati e dovresti vedere che funziona!
Passaggio 4: taglio
Ora che hai il tuo gioco codificato e il tuo arduino comunica con Unity 5, il progetto è sostanzialmente finito. Tuttavia, vuoi assemblarlo in un controller intuitivo e attraente per tutti i tuoi amici! Per creare questo controller puoi utilizzare qualsiasi materiale desideri, assicurati solo che non elimini le tue coordinate nel tuo acceleratore, potresti dover tornare indietro e regolare il tuo codice di conseguenza. Inoltre, assicurati di lasciare aperta la porta USB 1.1 per collegare il controller al computer. In questo esempio, abbiamo utilizzato il plexiglass. Per prima cosa, dovrai misurare le dimensioni di ogni pezzo in base alle tue esigenze. Ancora una volta, assicurati di prendere un account per l'apertura della porta USB 1.1. Quindi, usando un cutter laser, ritaglia tutti i pezzi della scatola del controller. Puoi anche tagliare il plexiglass con una sega a nastro, ma il taglio laser è più preciso. Inoltre, abbiamo usato una sega a nastro per ritagliare un piccolo pezzo di legno delle stesse dimensioni dell'arduino. Sebbene ciò non sia necessario, è consigliato per la fase di assemblaggio.
Passaggio 5: assemblaggio del controller
(Se non hai tagliato il pezzo di legno come raccomandato nel passaggio precedente, salta questa prima istruzione) Prendi il tuo pezzo di legno e posizionaci sopra la scheda arduino. Quindi avvita la tavola al legno, assicurandoti che sia saldamente in posizione. Quindi, incolla il legno sul pezzo inferiore del plexiglass. Se hai saltato il legno, potresti avvitare la tavola direttamente al plexiglass, anche se questo potrebbe danneggiarlo o diventare scomodo se non è abbastanza spesso per la vite. Successivamente, rimuovi l'adesivo adesivo dal retro della breadboard, quindi posizionalo vicino e aderente accanto all'arduino. Quindi, incolla il resto dei pezzi della scatola per formare il controller, assicurati di nuovo che la porta USB 1.1 sia ancora accessibile.
Passaggio 6: plug and play
Hai finito! Collega il tuo dolce controller al computer utilizzando il cavo USB 1.1 e prova il tuo gioco!
Consigliato:
Spinner USB tipo Atari con Arduino Leonardo: 4 passaggi
Spinner USB tipo Atari con Arduino Leonardo: questo è un progetto facile. Un controller spinner che può essere utilizzato con qualsiasi emulatore che fa uso di un mouse. In effetti, puoi dire che non è altro che un mouse con solo movimento orizzontale
RIAVVOLGIMENTO di un MOTORE CC (tipo spazzolato RS-540): 15 passaggi
RIAVVOLGIMENTO di un MOTORE CC (RS-540 Brushed Type): RIAVVOLGIMENTO DI UN MOTORE CC RS-555 (simile a un motore RS-540) per ottenere molta più velocità in giri/min. Come aggiornare il motore DC e aumentare la velocità. La cosa più importante sono le spazzole che devono essere in carbonio-rame (metallo-grafite), molto importanti per supportare un grande
Aggiungi o rimuovi la protezione da scrittura su qualsiasi tipo di disco: 3 passaggi
Aggiungi o rimuovi la protezione da scrittura su qualsiasi tipo di disco. Vuoi aggiungere o rimuovere la protezione da scrittura sul tuo disco? Segui questa guida e ce la farai
Adattatore audio fai da te (qualsiasi tipo): 5 passaggi
Adattatore audio fai-da-te (qualsiasi tipo): in questa guida, salderò due jack compositi RCA a un connettore "aux" da 3,5 mm. cavo, ma il processo è lo stesso per qualsiasi tipo di cavo audio che potresti utilizzare (ad esempio XLR, 1/4", ecc.). Nota: assicurati di leggere interamente ogni passaggio prima di
Crea il tuo (tipo di) display trasparente: 7 passaggi
Crea il tuo (tipo di) display trasparente: i display trasparenti sono una tecnologia estremamente interessante che fa sembrare tutto il futuro. Tuttavia ci sono alcuni inconvenienti. Innanzitutto, non ci sono così tante opzioni disponibili. E in secondo luogo, poiché in genere sono display OLED, possono