Innholdsfortegnelse:
- Trinn 1: Materialer
- Trinn 2: Breadboarding
- Trinn 3: Koding av Arduino
- Trinn 4: Samhold
- Trinn 5: Sluttnotater
Video: Enkel enhetskontroller: 5 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:23
Beskrivelse
Dette prosjektet er en veldig enkel kontroller som kan gi input til Unity når jeg trykker på knappene jeg designet den for å kontrollere et spill jeg laget der spilleren kan gå til venstre og høyre. Selvfølgelig kan du alltid justere den for flere kontroller. Det er ikke nødvendig å bruke noen ekstra biblioteker.
Trinn 1: Materialer
Komponenter som trengs
- -Arduino 2x motstand
- -[~ 220 Ohm
- -Ledninger
- -2x knapper
- -Brødbrett
Trinn 2: Breadboarding
Jeg begynte med å koble arduino GND-porten til en negativ (-) pinne på venstre side av brødbrettet, og koble 5V til en positiv (+) på høyre side av brødbrettet.
Etter det satte jeg knappene på stedet jeg ville ha mto. Og koblet dem til med ledningene og motstandene.
Trinn 3: Koding av Arduino
Først av alt må du skrive noen kode for at Arduino skal kjøre. Jeg legger kommentarer i koden som forklarer hva den gjør.
// Angi pins som knappene er koblet til.
const int buttonPin1 = 3; const int buttonPin2 = 4;
ugyldig oppsett ()
{// Start serien Serial.begin (9600); // Konfigurer pinnene som utgang. pinMode (buttonPin1, INPUT); pinMode (buttonPin2, INPUT); }
hulrom ()
{// Les statusen til knappen hvis (digitalRead (buttonPin1) == HIGH) {// skriv ut denne linjen hvis tilstanden er HIGH. Serial.println ("Venstre"); forsinkelse (20); } if (digitalRead (buttonPin2) == HIGH) {// skriv ut denne linjen hvis tilstanden er HIGH. Serial.println ("Høyre"); forsinkelse (20); }}
Trinn 4: Samhold
Hvis du ikke har et spill klart, vil denne koden fungere på ethvert spillobjekt i enhet.
Hvis dette er tilfellet trenger du et spillobjekt for å flytte.
For enkelhets skyld vil vi lage en kube ved å gå til GameObject-> 3D Object-> Cube
Når kuben er i scenen din, velg den og trykk på Legg til komponent -knappen, og opprett nytt skript.
Du må også endre Api -kompatibilitetsnivået for at System. IO. Ports -biblioteket skal fungere.
For å gjøre dette, gå til Rediger-> Prosjektinnstillinger-> Spiller
bla nedover i denne menyen til du finner Api -kompatibilitetsnivået og velg. NET 2.0 i stedet for. Net 2.0 -delsett
Du er nå klar til å begynne å kode.
bruker System. Collections; bruker System. Collections. Generic; bruker UnityEngine; bruker System. IO. Ports;
offentlig klasse PlayerMovement: MonoBehaviour
{offentlig flytehastighet; flytebevegelse;
SerialPort sp = ny SerialPort ("COM3", 9600);
ugyldig start ()
{// Kjør koden for å åpne den serielle porten OpenSerialPort (); }
ugyldig OpenSerialPort ()
{// Åpne den serielle porten sp. Open (); sp. ReadTimeout = 1; }
ugyldig bevegelse (strengretning)
{// Sjekk hvilken retning arduinoen har gitt videre hvis (Retning == "Venstre") {bevegelse = -1; } hvis (Retning == "Høyre") {movement = 1; } // beregne mengden som gameobjectet skal flyttes float translation = bevegelse * hastighet; // Bruk bevegelsen på gameobject transform. Translate (oversettelse, 0, 0); }
ugyldig oppdatering ()
{if (sp. IsOpen) {try {// mens serieporten er åpen, kjør bevegelsesfunksjonen og passerer linjen som Arduino skriver ut Movement (sp. ReadLine ()); } catch (System. Exception) {
}
}
} }
Trinn 5: Sluttnotater
Sjekk om komponentene dine fungerer
Et problem jeg oppdaget under opprettelsen av dette var at alle ledninger og kode var riktige og det burde ikke være noe problem i det hele tatt, men det fungerte ikke. I mitt tilfelle var det en ledning som ikke fungerte, selv om det samme kan skje med noen av de andre komponentene dine.
Anbefalt:
Enkel og enkel Spider-Man Web-Shooter: 12 trinn
Enkel og enkel Spider-Man Web-Shooter: Har du sett en Spider-Man-film? En Spider-Man-tegneserie? Noe uklart Spider-Man-relatert? Spider-Man er tilsynelatende overalt. Hvorfor ikke lage en enkel web-shooter? Etter litt øvelse laget jeg et design av husmaterialer som kunne lages
(Enkel) enkel måte å få analog/pwm -lyd fra Raspberry PI Zero og også tilkobling til Crt TV: 4 trinn
(Enkel) enkel måte å få analog/pwm -lyd fra Raspberry PI Zero og også tilkobling til Crt TV: Her har jeg brukt en enkleste metode for å mate lyd til en tv sammen med video fra en annen side
En virkelig enkel/enkel/ikke komplisert måte å få mennesker/mennesker/dyr/roboter til å se ut som om de har en veldig kul/lys varmesyn (farge du velger) ved hjelp av GIMP: 4 trinn
En virkelig enkel/enkel/ikke komplisert måte å få mennesker/mennesker/dyr/roboter til å se ut som om de har en veldig kul/lys varmesyn (farge du velger) Ved å bruke GIMP: Les … tittelen
Guitar Amp Tilt Stand - "African Chair" Design - Enkel, liten, sterk, enkel, gratis eller ekte billig: 9 trinn
Guitar Amp Tilt Stand - "African Chair" Design - Enkel, liten, sterk, enkel, gratis eller ekte billig: Guitar Amp Tilt Stand - For lett - enkel, liten, sterk, gratis eller skikkelig billig. For alle forsterkere, til og med store skap med separat hode. Bare lag brett og rør i størrelsen, og du trenger for nesten alt utstyr du ønsker
En enkel å lage, billig og enkel LED-blinkende krets med CMOS 74C14: 5 trinn
En enkel å lage, billig og enkel LED-blinkende krets med CMOS 74C14: Noen ganger trenger du ganske enkelt noen blinkende lysdioder, for dekorasjon av chrismas, blinkende kunstverk eller bare for å ha det gøy med blink blink blink. Jeg skal vise deg hvordan du lager en billig og enkel krets med opptil 6 blinkende lysdioder. Merk: Dette er min første instuctable og