Table des matières:

Cat Ball Shooter : 9 étapes (avec photos)
Cat Ball Shooter : 9 étapes (avec photos)

Vidéo: Cat Ball Shooter : 9 étapes (avec photos)

Vidéo: Cat Ball Shooter : 9 étapes (avec photos)
Vidéo: Handball Attack - Important lesson for all junior players 2024, Novembre
Anonim
Tireur de balle de chat
Tireur de balle de chat

Les matériaux nécessaires

1 x capteur RFID/télécommande

1 x Arduino uno

2 moteurs à courant continu

1x180 servo

1x360 servo

plusieurs fils

Boîte/conteneur pour construire le projet

tuyau pour faire passer la balle à travers

Étape 1: Créez le circuit pour alimenter les moteurs et la télécommande

Créer le circuit pour alimenter les moteurs et la télécommande
Créer le circuit pour alimenter les moteurs et la télécommande
Créer le circuit pour alimenter les moteurs et la télécommande
Créer le circuit pour alimenter les moteurs et la télécommande

Construire le circuit

construisez le circuit ci-dessus et connectez-vous aux mêmes broches pour utiliser exactement le même code

Étape 2: Créer une base pour les deux moteurs

Créer une base pour les deux moteurs
Créer une base pour les deux moteurs

vous devrez utiliser le panneau de mousse pour couper des rectangles de 4, 5 pouces par 2 pouces pour les côtés. puis découpez 2, 5 par 5 pouces carrés à utiliser comme haut et bas. Ensuite, les moteurs auront besoin d'un endroit pour s'asseoir, alors coupez 2 trous de 23 mm de diamètre et de 39 mm l'un de l'autre pour laisser de la place à la balle. puis faites un endroit ou quelques trous sur le carré inférieur pour permettre aux fils des moteurs de se connecter au circuit.

Étape 3: ajoutez le servo au bas des moteurs

Ajouter le servo au bas des moteurs
Ajouter le servo au bas des moteurs

collez soigneusement le servo 180 ou 360 sur le fond (au milieu) du carré. nous faisons cela pour que nous puissions changer la direction manuellement avec la télécommande ou au hasard pour que la balle tire dans différentes directions

Étape 4: Percez des trous dans le grand récipient

Percer des trous dans le grand conteneur
Percer des trous dans le grand conteneur
Percer des trous dans le grand conteneur
Percer des trous dans le grand conteneur
Percer des trous dans le grand conteneur
Percer des trous dans le grand conteneur

prenez le grand récipient et découpez un trou à l'avant et à l'arrière, cela n'a pas besoin d'être exact mais à l'avant, il devrait être assez grand comme on le voit sur la photo pour permettre à la balle d'être tirée dans différentes directions avec le servo en mouvement. et l'arrière du conteneur a découpé un trou plus petit pour permettre aux fils de sortir et de placer les pièces du circuit ou de changer le circuit si nécessaire. à l'avant, collez le servo sur le couvercle de l'un des conteneurs, puis sur la base du conteneur pour le soutenir, voir la deuxième image pour référence

Étape 5: Le tuyau

Le tuyau
Le tuyau

fabriquez ou achetez un tuyau en pvc de 1 pied de long, de préférence avec une courbe pour laisser la balle rouler, puis coupez un morceau de 1,5 pour laisser entrer la balle

Étape 6: La trémie

La trémie
La trémie
La trémie
La trémie
La trémie
La trémie

découpez 4 trapèzes égaux, peut être un choix, mais le mien mesurait 5 de haut et était légèrement incliné lorsqu'il était placé sur le tuyau, puis le morceau de carton mousse en bas a découpé un trou assez grand pour qu'une balle de ping-pong puisse y passer. Ensuite, collez-les ensemble en formant un saut pour que toutes les balles s'assoient. plus tard, nous collerons cela au sommet du tuyau où le trou est coupé

Étape 7: Placement de la trémie, du tuyau et des moteurs

Placement de la trémie, du tuyau et des moteurs
Placement de la trémie, du tuyau et des moteurs

vous voudrez placer le tuyau à l'intérieur du conteneur assis juste sur le bord de la boîte blanche faite pour les moteurs afin que la balle sorte et soit poussée par les roues. vous pouvez maintenant coller la trémie au sommet du tuyau

Étape 8: le servo final

Le servo final
Le servo final
Le servo final
Le servo final

ce servo est collé au fond de la trémie/où le tuyau que j'ai coupé pour qu'il dépasse suffisamment là où les balles de ping ne tomberont pas jusqu'à ce que le bouton soit cliqué et que le servo se déplace

Étape 9: ajouter du code pour tester les pièces de travail

Ajouter du code pour tester les pièces de travail
Ajouter du code pour tester les pièces de travail

//Fixateur de chat

// importer des bibliothèques pour utiliser des commandes dans tout le code, par exemple, déclarer les broches comme servos et configurer la télécommande IR #include #include

//configuration des variables pour définir les vitesses des moteurs à courant continu int onspeed = 255; int basse vitesse = 100; int offspeed = 0;

//configuration de la broche du récepteur infrarouge et des deux broches du moteur int IR_Recv = 2; moteur int1 = 10; moteur int2 = 11;

//déclarer les variables en tant que servos afin que le programme sache qu'il s'agit d'un servo pour utiliser des commandes spécifiques Volet servo; Angle d'asservissement;

//déclarer la broche IR pour recevoir les entrées des télécommandes // obtient les résultats de l'IRrecv distant irrecv(IR_Recv); decode_results résultats;

void setup() {

Serial.begin(9600); // démarre la communication série irrecv.enableIRIn(); // Démarre le récepteur

rabat.attache(7); // attache le volet du servo à la broche 7 afin que nous puissions l'utiliser plus tard dans le programme angle.attach(4); // attache l'angle du servo à la broche 4 afin que nous puissions l'utiliser plus tard dans le programme pinMode(motor1, OUTPUT); //définir motor1 sur une sortie afin que nous puissions envoyer des vitesses à lorsque le bouton est enfoncé pinMode(motor2, OUTPUT); //définir motor2 sur une sortie afin que nous puissions envoyer des vitesses lorsque le bouton est enfoncé

}

boucle vide() {

rabat.write(0); // régler le servo contrôlant le distributeur de balles à 0 degré pour ne laisser passer aucune balle

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

switch(résultats.valeur) {

case 0xFFA25D: //power analogWrite(motor1, onspeed); analogWrite(motor2, onspeed); retard (7000); rabat.écriture(90); retard (500); rabat.write(0); retard (2000); analogWrite(motor1, offspeed); analogWrite(motor2, offspeed); Pause;

cas 0xFFE01F: //EQ

analogWrite(motor1, onspeed); analogWrite (moteur2, basse vitesse); retard (7000); rabat.écriture(90); retard (500); rabat.write(0); retard (2000); analogWrite(motor1, offspeed); analogWrite(motor2, offspeed);

Pause;

cas 0xFF629D: //mode

analogWrite(moteur1, basse vitesse); analogWrite(motor2, onspeed); retard (7000); rabat.écriture(90); retard (500); rabat.write(0); retard (2000); analogWrite(motor1, offspeed); analogWrite(motor2, offspeed);

Pause;

cas 0xFF30CF: //réglage 1, 90 degrés

angle.écriture(30);

Pause;

case 0xFF18E7: //réglage 2, 0 degrés

angle.écriture(90);

Pause;

case 0xFF7A85: //réglage 3, 180 degrés

angle.écriture(150);

Pause;

} } }

Conseillé: