Kazalo:
2025 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2025-01-23 15:08
Een handchoen die je kan gebruiken als motion controller za strelce na železnici. Ta projekt je namenjen nadzoru gibanja, vključno z njegovo uporabo. (Je schiet door te "finger bangen")
1. korak: Het Materiaal
Het materiaal dat je gaat nodig hebben is vrij simpel. 1x Arduino pro micro žiroskopa Arduino Leonardo1x MPU6050
4x kabli
2. korak: De Bekabeling
Zoals je v shemi in v nadaljevanju je zelo preprosta. MPU VCC> Arduino VCCMPU ozemljitev> Arduino masa MPU SCL> Pin 3MPU SDA> Pin 2
3. korak: Knjižnice 1
Za projekt heb je een paar knjižnice po meri nodig van deze povezava:
Prenesite datoteko ZIP v razdelku »Kloniraj ali prenesi«.
4. korak: Knjižnice 2
Odprite datoteko Zip in kliknite na zemljevid "Arduino". Na zemljevidu Arduino bo prikazan zemljevid "I2Cdev" in "MPU6050", pakiran v knjižnicah Arduino (programske datoteke> Arduino> knjižnice)
5. korak: De Code
#vključi
#include #include #include #include
MPU6050 mpu;
int16_t sekira, ay, az, gx, gy, gz;
int16_t accx, accy, accz; int vx, vy; plavajoči kot;
// koda za glajenje inputint readIndex = 0; const int numReadings = 20; int angleReadings [numReadings]; int skupaj = 0; float averageAngle = 0,0;
int oldZ = 0;
int novoZ = 0;
void setup () {Serial.begin (115200); Wire.begin (); Mouse.begin (); mpu.initialize (); if (! mpu.testConnection ()) {while (1); }
for (int thisReading = 0; thisReading <numReadings; thisReading ++) {angleReadings [thisReading] = 0; }}
void loop () {
total = total - angleReadings [readIndex];
angleReadings [readIndex] = kot; total = total + angleReadings [readIndex]; readIndex = readIndex + 1; if (readIndex> = numReadings) {readIndex = 0; }
if (gz> 30000) {Serial.println ("Bang"); Mouse.click (); // Streljaj s pištolo nazaj (udarjanje s prstom)}
// accx, accy, accz;
mpu.getMotion6 (& ax, & ay, & az, & gx, & gy, & gz); mpu.getAcceleration (& accx, & accy, & accz); //Serial.println(gy); // Serial.println (kot);
staroZ = novoZ;
vx = (gx + 1000) / 150; vy = - (gz - 200) / 150; Mouse.move (vx, vy); zamuda (20);
Dit stukje code heeft een beetje uitleg nodig omdat je het waarschijnlijk een klein beetje moet aanpassen.
Wat er waarschijnlijk gaat gebeuren is dat je cursor uit zichzelf over je scherm gaat bewegen (van rechts naar links, van boven naar onder of diagonaal) en dit stukje code zorgt er voor dat je curor stil blijft staan als je geen input geeft. Je moet de values in "gx + 1000" en "gz - 200" aanpassen totdat is het resultat krijgt dat je wil en ik denk dat de values die wil nodig hebt afhankelijk zijn van je scherm resolutie. Als de cursor uit zichzelf van rechts naar links beweegd wil je "gx + x" aanpassen. Als de cursor uit zichzelf van boven naar onder beweegd wil je de "gz - x" aan passen. Als het diagonaal beweegd, dan kies je een van de twee vrednote om aan te passen totdat hij nog maar over een as beweegd en dan pas je de andere aan.
Serial.print ("gx =");
Serijski.tisk (gx); Serial.print ("| gz ="); Serijski.tisk (gz); Serial.print ("| gy ="); Serial.println (gy); if (gx> 32000) {Serial.println ("Flick Right"); // Znova naloži, ko pištolo pritisneš na desno Keyboard.write ('r'); zamuda (250); } Serial.print ("accx ="); Serial.print (accx); Serial.print ("| accy ="); Serial.print (accy); Serial.print ("| accz ="); Serial.println (accz); // delovno // kot = atan2 ((plovec) (ay - 16384), (plovec) (sekira - 16384)) * (180,0 /PI) * -1; kot = atan2 ((float) ay, (float) ~ ax) * (180,0 / PI); // plavajoči kot = atan2 ((float) ay, (float) -ax) * (180,0 /PI); //Serial.println(averageAngle); }
Priporočena:
Gimbal za nadzor gibanja: 12 korakov
Gimbal za nadzor gibanja: Pozdravljeni vsi, moje ime je Harji Nagi. Trenutno sem študent drugega letnika, ki študira elektroniko in komunikacijski inženiring na Tehnološkem inštitutu Pranveer Singh, Kanpur (UP). Zelo me zanimajo robotika, arduino, umetna inteligenca in
Drsnik za nadzor gibanja za Time Lapse Rail: 10 korakov (s slikami)
Drsnik za nadzor gibanja za Time Lapse Rail: Ta navodila poučujejo, kako motorizirati tirnico s časovnim zamikom s koračnim motorjem, ki ga poganja Arduino. Osredotočili se bomo predvsem na krmilnik gibanja, ki poganja koračni motor, ob predpostavki, da že imate tirnico, ki jo želite motorizirati
Nadzor senzorja gibanja/števca: 7 korakov
Senzor gibanja/števec krmiljenih luči: Ta projekt je nastal kot končni projekt za tečaj digitalnega oblikovanja na Cal Polyju v San Luis Obispu (CPE 133). Zakaj to počnemo? Želimo pomagati pri ohranjanju naravnih virov na svetu. Naš projekt se osredotoča na varčevanje z električno energijo. S prihrankom več ele
Rokavice za nadzor miške Arduino: 6 korakov (s slikami)
Rokavice za nadzor miške Arduino: Tako sem za svoj šolski projekt izdelal rokavico Arduino, ki lahko nadzoruje vaš kazalec z merilnikom pospeška. V nekaj preprostih korakih vam bom pokazal, kako ponoviti ta postopek
Izhod z nadzorom gibanja - iz luči zaznavanja gibanja: 6 korakov
Izhod z nadzorom gibanja - iz svetlobe zaznavanja gibanja: Predstavljajte si, da ste prevaranti in se odpravite v najbolj strašno hišo v bloku. Ko greste mimo vseh duhov, duhov in pokopališč, končno pridete na zadnjo pot. Pred vami je sladica v posodi! A potem nenadoma gho