Sommario:

Cat Ball Shooter: 9 passaggi (con immagini)
Cat Ball Shooter: 9 passaggi (con immagini)

Video: Cat Ball Shooter: 9 passaggi (con immagini)

Video: Cat Ball Shooter: 9 passaggi (con immagini)
Video: Maranza allo stadio ➡️@quanto_costa 2024, Dicembre
Anonim
Tiratore di palle di gatto
Tiratore di palle di gatto

Materiale necessario

1 x sensore RFID/telecomando

1 x Arduino uno

2 x motori CC

1 x 180 servo

1 x 360 servo

più fili

Scatola/contenitore per costruire progetto

tubo per far passare la pallina

Passaggio 1: creare il circuito per alimentare i motori e il telecomando

Crea il circuito per alimentare i motori e il telecomando
Crea il circuito per alimentare i motori e il telecomando
Crea il circuito per alimentare i motori e il telecomando
Crea il circuito per alimentare i motori e il telecomando

Costruire il circuito

costruisci il circuito sopra e connettiti agli stessi pin per usare lo stesso identico codice

Passaggio 2: creare la base per i due motori

Crea la base per i due motori
Crea la base per i due motori

dovrai usare il pannello di gommapiuma per tagliare rettangoli di 4, 5 pollici per 2 pollici per i lati. quindi ritaglia dei quadrati di 2,5 x 5 pollici da utilizzare come parte superiore e inferiore. successivamente i motori avranno bisogno di un posto dove sedersi, quindi tagliare 2 fori di 23 mm di diametro e 39 mm di distanza l'uno dall'altro per dare spazio alla palla da sparare. quindi fare un punto o un paio di fori sul quadrato inferiore per consentire ai fili dei motori di collegarsi al circuito.

Passaggio 3: aggiungere il servo alla parte inferiore dei motori

Aggiungi il servo alla parte inferiore dei motori
Aggiungi il servo alla parte inferiore dei motori

incollare con cura il servo 180 o 360 sul fondo (al centro) del quadrato. lo stiamo facendo in modo da poter cambiare la direzione manualmente con il telecomando o in modo casuale in modo che la palla spari in direzioni diverse

Passaggio 4: praticare fori nel contenitore grande

Praticare dei fori nel grande contenitore
Praticare dei fori nel grande contenitore
Praticare dei fori nel contenitore grande
Praticare dei fori nel contenitore grande
Praticare dei fori nel grande contenitore
Praticare dei fori nel grande contenitore

prendi il contenitore grande e fai un buco nella parte anteriore e posteriore, non deve essere esatto ma nella parte anteriore dovrebbe essere abbastanza grande come mostrato nell'immagine per consentire alla palla di essere sparata in direzioni diverse con il servo in movimento. e la parte posteriore del contenitore ha praticato un foro più piccolo per consentire l'uscita dei fili e per posizionare le parti del circuito o cambiare il circuito se necessario. nella parte anteriore incollare il servo al coperchio di uno dei contenitori e poi sulla base del contenitore per supporto, vedere la seconda immagine per riferimento

Passaggio 5: il tubo

La pipa
La pipa

creare o acquistare un tubo in pvc lungo 1 piede, preferibilmente con una curva per far entrare la palla, quindi tagliare un pezzo di 1,5 per far entrare la palla

Passaggio 6: la tramoggia

la tramoggia
la tramoggia
la tramoggia
la tramoggia
la tramoggia
la tramoggia

ritaglia 4 trapezi uguali, può essere una scelta, ma i miei erano alti 5 pollici e leggermente inclinati quando vengono messi sul tubo, quindi il pezzo di schiuma nella parte inferiore ha tagliato un buco abbastanza grande da far passare una pallina da ping pong. poi incollali insieme formando un saltello per far accomodare tutte le palline. poi lo incolleremo alla parte superiore del tubo dove viene praticato il foro

Passaggio 7: posizionamento della tramoggia, del tubo e dei motori

Posizionamento della tramoggia, del tubo e dei motori
Posizionamento della tramoggia, del tubo e dei motori

ti consigliamo di posizionare il tubo all'interno del contenitore appoggiato proprio sul bordo della scatola bianca realizzata per i motori in modo che la pallina fuoriesca e venga spinta dalle ruote. ora puoi incollare la tramoggia nella parte superiore del tubo

Passaggio 8: il servo finale

Il servo finale
Il servo finale
Il Servo Finale
Il Servo Finale

questo servo è incollato sul fondo della tramoggia/dove il tubo che ho tagliato per farlo sporgere abbastanza da dove le sfere del ping non cadranno fino a quando non si fa clic sul pulsante e il servo si muove

Passaggio 9: aggiungere codice per testare le parti di lavoro

Aggiungi codice per testare le parti funzionanti
Aggiungi codice per testare le parti funzionanti

// Riparatore di gatti

//importa le librerie per utilizzare i comandi in tutto il codice, ad esempio, dichiarando i pin come servi e impostando il telecomando IR #include #include

//impostare le variabili per impostare le velocità per i motori DC int onspeed = 255; int bassa velocità = 100; int offspeed = 0;

//impostare il pin del ricevitore a infrarossi ei due pin del motore int IR_Recv = 2; int motore1 = 10; int motore2 = 11;

//dichiarare le variabili come servo in modo che il programma sappia che è un servo per usare comandi specifici Servo flap; Angolo del servo;

//dichiara il pin IR per ricevere input dai telecomandi //riceve i risultati dal telecomando IRrecv irrecv(IR_Recv); decode_results risultati;

void setup() {

Serial.begin(9600); //avvia la comunicazione seriale irrecv.enableIRIn(); // Avvia il ricevitore

flap.attach(7); //attacca il servo flap al pin 7 in modo da poterlo usare in seguito nel programma angle.attach(4); //attacca l'angolo del servo al pin 4 in modo da poterlo utilizzare in seguito nel programma pinMode(motor1, OUTPUT); //imposta motor1 su un output in modo da poter inviare velocità a in quando viene premuto il pulsante pinMode(motor2, OUTPUT); // imposta motor2 su un'uscita in modo che possiamo inviare velocità a quando viene premuto il pulsante

}

ciclo vuoto() {

flap.write(0); //imposta il servo che controlla l'alimentatore di palline su 0 gradi per non far passare nessuna pallina

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

switch(results.value) {

case 0xFFA25D: //power analogWrite(motor1, onspeed); analogWrite(motore2, velocità); ritardo(7000); flap.write(90); ritardo (500); flap.write(0); ritardo (2000); analogWrite(motore1, offspeed); analogWrite(motore2, velocità off); rottura;

caso 0xFFE01F: //EQ

analogWrite(motor1, onspeed); analogWrite(motore2, bassa velocità); ritardo(7000); flap.write(90); ritardo (500); flap.write(0); ritardo (2000); analogWrite(motore1, offspeed); analogWrite(motore2, velocità off);

rottura;

case 0xFF629D: //modalità

analogWrite(motore1, bassa velocità); analogWrite(motore2, velocità); ritardo(7000); flap.write(90); ritardo (500); flap.write(0); ritardo (2000); analogWrite(motore1, offspeed); analogWrite(motore2, velocità off);

rottura;

case 0xFF30CF: //impostazione 1, 90 gradi

angolo.scrivi(30);

rottura;

case 0xFF18E7: //impostazione 2, 0 gradi

angolo.write(90);

rottura;

case 0xFF7A85: //impostazione 3, 180 gradi

angolo.write(150);

rottura;

} } }

Consigliato: