Sadržaj:

Pucanje mačjom loptom: 9 koraka (sa slikama)
Pucanje mačjom loptom: 9 koraka (sa slikama)

Video: Pucanje mačjom loptom: 9 koraka (sa slikama)

Video: Pucanje mačjom loptom: 9 koraka (sa slikama)
Video: 16 ошибок штукатурки стен. 2024, Studeni
Anonim
Mačka strijelac
Mačka strijelac

Potrebni materijali

1 x RFID senzor/ daljinski

1 x Arduino uno

2 x istosmjerni motori

1 x 180 servo

1 x 360 servo

više žica

Kutija/kontejner za izradu projekta

cijev za prolaz kugle

Korak 1: Stvorite krug za napajanje motora i daljinskog upravljača

Napravite krug za napajanje motora i daljinskog upravljača
Napravite krug za napajanje motora i daljinskog upravljača
Napravite krug za napajanje motora i daljinskog upravljača
Napravite krug za napajanje motora i daljinskog upravljača

Izgradnja kruga

izgradite gornji krug i spojite se na iste iglice kako biste koristili potpuno isti kod

Korak 2: Stvorite bazu za dva motora

Stvorite bazu za dva motora
Stvorite bazu za dva motora

morat ćete upotrijebiti pjenu za rezanje pravokutnika dimenzija 4,5 x 2 inča za stranice. zatim izrežite kvadrate veličine 2,5 x 5 inča koje ćete koristiti kao gornji i donji dio. zatim će motorima trebati mjesto za sjedenje pa izrežite 2 rupe promjera 23 mm i udaljenosti 39 mm jedna od druge kako biste dali prostora za ispucavanje lopte. zatim napravite mjesto ili nekoliko rupa na donjem kvadratu kako biste omogućili da se žice s motora spoje u krug.

Korak 3: Dodajte servo na dno motora

Dodajte Servo na dno motora
Dodajte Servo na dno motora

pažljivo zalijepite servo od 180 ili 360 na dno (u sredini) kvadrata. radimo to tako da možemo ručno promijeniti smjer daljinskim upravljačem ili nasumično tako da lopta puca u različitim smjerovima

Korak 4: Izrežite rupe u velikom spremniku

Izrežite rupe u velikom spremniku
Izrežite rupe u velikom spremniku
Izrežite rupe u velikom spremniku
Izrežite rupe u velikom spremniku
Izrežite rupe u velikom spremniku
Izrežite rupe u velikom spremniku

uzmite veliki spremnik i izrežite rupu sprijeda i straga, ne mora biti točna, ali sprijeda bi trebala biti prilično velika kao što se vidi na slici kako bi se omogućilo da se lopta puca u različitim smjerovima dok se servo pomiče. a stražnji dio spremnika izrezao je manju rupu kako bi žice mogle izaći i postaviti dijelove strujnog kruga ili promijeniti krug ako je potrebno. na prednjoj strani zalijepite servo na poklopac jednog od spremnika, a zatim na podnožje spremnika za podršku, pogledajte drugu sliku za referencu

Korak 5: Cijev

Cijev
Cijev

napravite ili kupite PVC cijev duljine 1 stopa, po mogućnosti s zavojem da se kuglica otkotrlja, a zatim izrežite peice 1,5 inča kako bi lopta ušla

Korak 6: Spremnik

Spremnik
Spremnik
Spremnik
Spremnik
Spremnik
Spremnik

izrezati 4 jednaka trapeza, mogu biti po izboru, ali moji su bili visoki 5 inča i malo nakošeni kad su ih stavili na cijev, a zatim je komad pjenaste ploče na dnu izrezao rupu dovoljno veliku za prolazak kugle za stolni tenis. zatim ih zalijepite zajedno tvoreći skakaonicu u koju će sjediti sve kuglice. kasnije ćemo ovo zalijepiti na vrh cijevi gdje je izrezana rupa

Korak 7: Postavljanje lijevka, cijevi i motora

Postavljanje lijevka, cijevi i motora
Postavljanje lijevka, cijevi i motora

poželjet ćete postaviti cijev u spremnik koji se nalazi samo na rubu bijele kutije napravljene za motore, tako da će lopta izaći van i biti gurnuta kotačima. sada možete lijepiti lijevak na vrh cijevi

Korak 8: Završni servo

Završni servo
Završni servo
Završni servo
Završni servo

ovaj servo je zalijepljen na dno lijevka/ gdje je cijev koju sam prerezao samo da dovoljno strši tamo gdje ping kuglice neće pasti sve dok se ne pritisne gumb i dok se servo ne pomakne

Korak 9: Dodajte kôd za testiranje radnih dijelova

Dodajte kôd za testiranje radnih dijelova
Dodajte kôd za testiranje radnih dijelova

// Popravak za mačke

// uvoz knjižnica za korištenje naredbi u cijelom kodu, na primjer, proglašavanje pinova kao servo upravljača i postavljanje IR daljinskog upravljača #include #include

// postavljanje varijabli za postavljanje brzina za istosmjerne motore int onspeed = 255; int lowspeed = 100; int offspeed = 0;

// postavljanje infracrvenog prijemnika i dva pina motora int IR_Recv = 2; int motor1 = 10; int motor2 = 11;

// deklariranje varijabli kao servo, tako da program zna da je servo za korištenje posebnih naredbi Servo flap; Servo kut;

// deklariranje IC pina za primanje ulaza s daljinskih upravljača // dobiva rezultate s daljinskog IRrecv unrecv (IR_Recv); decode_results rezultate;

void setup () {

Serial.begin (9600); // započinje serijsku komunikaciju unrecv.enableIRIn (); // Pokreće prijemnik

klapna.pričvršćivač (7); // pričvršćuje servo zaklopku na pin 7 kako bismo je kasnije mogli koristiti u programskom kutu.attach (4); // priključuje servo kut na pin 4 kako bismo ga kasnije mogli koristiti u programu pinMode (motor1, OUTPUT); // postavimo motor1 na izlaz kako bismo mogli poslati brzine u kad se pritisne gumb pinMode (motor2, OUTPUT); // postavimo motor2 na izlaz kako bismo mogli poslati brzine u kad se pritisne gumb

}

void loop () {{100} {101}

flap.write (0); // postavite servo koji kontrolira dodavač loptice na 0 stupnjeva da ne propušta kuglice

if (unrecv.decode (& results)) {long int decCode = results.value; Serial.println (decCode); unrecv.resume ();

switch (results.value) {

slučaj 0xFFA25D: // napajanje analogWrite (motor1, onspeed); analogWrite (motor2, onspeed); kašnjenje (7000); flap.pisati (90); kašnjenje (500); flap.write (0); odgoda (2000); analogWrite (motor1, offspeed); analogWrite (motor2, offspeed); pauza;

slučaj 0xFFE01F: // EQ

analogWrite (motor1, onspeed); analogWrite (motor2, niska brzina); kašnjenje (7000); flap.pisati (90); kašnjenje (500); flap.write (0); odgoda (2000); analogWrite (motor1, offspeed); analogWrite (motor2, offspeed);

pauza;

slučaj 0xFF629D: // način

analogWrite (motor1, niska brzina); analogWrite (motor2, onspeed); kašnjenje (7000); flap.pisati (90); kašnjenje (500); flap.write (0); odgoda (2000); analogWrite (motor1, offspeed); analogWrite (motor2, offspeed);

pauza;

kućište 0xFF30CF: // postavljeno 1, 90 stupnjeva

angle.write (30);

pauza;

kućište 0xFF18E7: // postavljanje 2, 0 stupnjeva

angle.write (90);

pauza;

kućište 0xFF7A85: // podešavanje 3, 180 stupnjeva

kut.pisati (150);

pauza;

} } }

Preporučeni: