Innholdsfortegnelse:

Cat Ball Shooter: 9 trinn (med bilder)
Cat Ball Shooter: 9 trinn (med bilder)

Video: Cat Ball Shooter: 9 trinn (med bilder)

Video: Cat Ball Shooter: 9 trinn (med bilder)
Video: Я работаю в Страшном музее для Богатых и Знаменитых. Страшные истории. Ужасы. 2024, November
Anonim
Cat Ball Shooter
Cat Ball Shooter

Materialer som trengs

1 x RFID -sensor/ fjernkontroll

1 x Arduino uno

2 x likestrømsmotorer

1 x 180 servo

1 x 360 servo

flere ledninger

Boks/container for byggeprosjekt

rør for å mate ballen gjennom

Trinn 1: Lag kretsen for å drive motorer og fjernkontroll

Lag kretsen for å drive motorene og fjernkontrollen
Lag kretsen for å drive motorene og fjernkontrollen
Lag kretsen for å drive motorene og fjernkontrollen
Lag kretsen for å drive motorene og fjernkontrollen

Å bygge kretsen

bygg kretsen ovenfor og koble til de samme pinnene for å bruke nøyaktig samme kode

Trinn 2: Lag en base for de to motorene

Lag en base for de to motorene
Lag en base for de to motorene

du må bruke skumplaten til å kutte 4, 5 tommer med 2 tommer rektangler for sidene. skjær deretter ut 2, 5 x 5 tommer firkanter som skal brukes som topp og bunn. Deretter trenger motorene et sted å sitte på, så kutt 2 hull som er 23 mm i diameter og 39 mm fra hverandre for å gi plass til ballen som skal skytes. lag deretter et sted eller et par hull på den nederste firkanten for å la ledningene fra motorene koble seg inn i kretsen.

Trinn 3: Legg servoen til bunnen av motorene

Legg servoen til bunnen av motorene
Legg servoen til bunnen av motorene

lim 180 eller 360 servoen forsiktig på bunnen (i midten) av torget. vi gjør dette slik at vi kan endre retningen manuelt med fjernkontrollen eller tilfeldig slik at ballen skyter i forskjellige retninger

Trinn 4: Skjær hull i den store beholderen

Skjær hull i den store beholderen
Skjær hull i den store beholderen
Skjær hull i den store beholderen
Skjær hull i den store beholderen
Skjær hull i den store beholderen
Skjær hull i den store beholderen

ta den store beholderen og skjær et hull foran og bak, det trenger ikke å være nøyaktig, men foran skal vi være ganske store som sett på bildet for å la ballen bli skutt i forskjellige retninger mens servoen beveger seg. og baksiden av beholderen kuttet et mindre hull for å la ledningene komme ut og plassere kretsdelene i eller endre kretsen om nødvendig. lim servoen på forsiden til lokket på en av beholderne og deretter på bunnen av beholderen for støtte, se det andre bildet for referanse

Trinn 5: Røret

Røret
Røret

lag eller kjøp et PVC -rør som er 1 fot langt, helst med en kurve for å la ballen rulle inn og skjær deretter et stykke 1,5 for å la ballen komme inn

Trinn 6: Hopper

The Hopper
The Hopper
The Hopper
The Hopper
The Hopper
The Hopper

kutt ut 4 like trapeser, kan være valgfri, men min var 5 høy og skråstilt litt når den ble satt på røret, så kuttet stykket med skumplate nederst et hull som var stort nok til at en pingpongkule kunne gå gjennom. lim dem deretter sammen og danner en hopping for alle ballene å sitte i. senere limer vi dette til toppen av røret der hullet er kuttet

Trinn 7: Plassering av beholderen, røret og motorene

Plassering av beholderen, røret og motorene
Plassering av beholderen, røret og motorene

du vil plassere røret inne i beholderen som ligger like på kanten av den hvite boksen som er laget for motorene, slik at ballen kommer ut og skyves av hjulene. du kan nå lime på beholderen til toppen av røret

Trinn 8: Den siste servoen

Den siste servoen
Den siste servoen
Den siste servoen
Den siste servoen

denne servoen limes på bunnen av beholderen/ der røret jeg kutter for å bare stikke ut nok til der pingballene ikke vil falle gjennom før knappen klikkes og servoen beveger seg

Trinn 9: Legg til kode for å teste arbeidsdelene

Legg til kode for å teste arbeidsdelene
Legg til kode for å teste arbeidsdelene

// Cat fixer

// importer biblioteker for å bruke kommandoer i hele koden, for eksempel å erklære pins som servoer og sette opp IR -fjernkontrollen #include #include

// sette opp variabler for å stille hastigheter for likestrømsmotorene int onspeed = 255; int lavhastighet = 100; int offspeed = 0;

// sette opp infared mottakerpinne og de to motorpinnene int IR_Recv = 2; int motor1 = 10; int motor2 = 11;

// deklarere variablene som servoer slik at programmet vet at det er en servo å bruke spesifikke kommandoer Servoklaff; Servovinkel;

// erklærer IR -pin for å motta innganger fra fjernkontroller // får resultatene fra den eksterne IRrecv irrecv (IR_Recv); resultater for dekoderesultater;

ugyldig oppsett () {

Serial.begin (9600); // starter seriell kommunikasjon irrecv.enableIRIn (); // Starter mottakeren

klaff. fest (7); // fester servoklaffen til pinne 7 slik at vi kan bruke den senere i programvinkelen. fest (4); // fester servovinkelen til pinne 4 slik at vi kan bruke den senere i programmet pinMode (motor1, OUTPUT); // sett motor1 til en utgang slik at vi kan sende hastighetene inn når knappen trykkes inn pinMode (motor2, OUTPUT); // sett motor2 til en utgang, slik at vi kan sende hastighetene inn når knappen trykkes inn

}

void loop () {

flap.write (0); // sett servoen som styrer ballmateren til 0 grader for ikke å slippe noen baller gjennom

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

switch (results.value) {

sak 0xFFA25D: // strøm analogWrite (motor1, onspeed); analogWrite (motor2, onspeed); forsinkelse (7000); klaff. skrive (90); forsinkelse (500); flap.write (0); forsinkelse (2000); analogWrite (motor1, offspeed); analogWrite (motor2, offspeed); gå i stykker;

sak 0xFFE01F: // EQ

analogWrite (motor1, onspeed); analogWrite (motor2, lavhastighet); forsinkelse (7000); klaff. skrive (90); forsinkelse (500); flap.write (0); forsinkelse (2000); analogWrite (motor1, offspeed); analogWrite (motor2, offspeed);

gå i stykker;

sak 0xFF629D: // modus

analogWrite (motor1, lavhastighet); analogWrite (motor2, onspeed); forsinkelse (7000); klaff. skrive (90); forsinkelse (500); flap.write (0); forsinkelse (2000); analogWrite (motor1, offspeed); analogWrite (motor2, offspeed);

gå i stykker;

sak 0xFF30CF: // settng 1, 90 grader

vinkel.skrive (30);

gå i stykker;

sak 0xFF18E7: // innstilling 2, 0 grader

vinkel.skrive (90);

gå i stykker;

sak 0xFF7A85: // innstilling 3, 180 grader

vinkel.skrive (150);

gå i stykker;

} } }

Anbefalt: