Table des matières:

Bras robotique contrôlé par Arduino de Lego Mindstorm : 6 étapes
Bras robotique contrôlé par Arduino de Lego Mindstorm : 6 étapes

Vidéo: Bras robotique contrôlé par Arduino de Lego Mindstorm : 6 étapes

Vidéo: Bras robotique contrôlé par Arduino de Lego Mindstorm : 6 étapes
Vidéo: Capturing a robotic arm with arduino! 2024, Novembre
Anonim
Image
Image

Transformez deux anciens moteurs Lego Mindstorm en un bras de saisie contrôlé par un Arduino Uno.

Il s'agit d'un projet Hack Sioux Falls où nous avons mis les enfants au défi de construire quelque chose de cool avec un Arduino.

Étape 1: Pièces nécessaires

Fournitures nécessaires:

  • 2 gros moteurs Lego ev3 mindstorm
  • Un assortiment de pièces techniques et d'engrenages Lego
  • Un Arduino Uno
  • Carte moteur
  • Un morceau de perfboard
  • Fils longs
  • 4 résistances
  • 4 boutons
  • Une batterie USB portable
  • Un chargeur usb
  • Soudure et fer à souder
  • Jeu de tournevis
  • Un coupe-fil

Étape 2: Retirez le boîtier du moteur

Commencez par retirer les vis à l'arrière des deux moteurs, puis retirez les capuchons blancs. Vous pouvez ensuite les jeter.

Sortez les moteurs en veillant à ne retirer aucun des engrenages à l'intérieur. Si vous retirez l'un des engrenages, remettez-les simplement en place.

Une fois les moteurs retirés, coupez le plug-in à l'extrémité du moteur avec un coupe-fil.

Étape 3: Souder sur des fils plus longs

Ajouter des moteurs à la carte moteur
Ajouter des moteurs à la carte moteur

Souder sur un nouveau fil plus long. C'est beaucoup plus facile qu'il n'y paraît et ne prend que quelques secondes si vous savez ce que vous faites.

Remettez le moteur dans le boîtier en plastique, puis revissez-le. Vous pouvez maintenant commencer la construction du bras. Vous pouvez créer votre propre design ou partir de celui de l'image.

Étape 4: ajouter des moteurs à la carte moteur

Utilisez un tournevis cruciforme pour brancher les fils provenant des moteurs dans la carte du moteur comme indiqué sur l'image. Ensuite, branchez la carte dans l'Arduino Uno.

Coupez le chargeur USB en deux, en exposant le fil à l'intérieur. Dénudez l'isolant, puis dénudez les deux fils positif et négatif. Puis branchez-le sur la carte moteur

Étape 5: Construire la carte de commutation

Construire une carte de commutation
Construire une carte de commutation
Construire une carte de commutation
Construire une carte de commutation
Construire une carte de commutation
Construire une carte de commutation

Soudez les résistances, les commutateurs et les fils sur le panneau perforé comme sur la photo.

Ajoutez quelques broches de connecteur femelles sur la carte perforée et la carte moteur comme le montre l'image, puis connectez les deux.

Étape 6:

Image
Image
Image
Image

Branchez l'Arduino sur un ordinateur et téléchargez ce code dans l'Arduino.

Nous avons utilisé cette bibliothèque de pilotes de moteur d'Adafruit, mais une autre bibliothèque de pilotes fonctionnerait également.

#inlude

int boutonGauche = A0;int boutonDroite = A1; int boutonOuvert = A2; int boutonFermer = A3; AF_DCMotor motorRotate(1); AF_DCMotor motorGrabber(2); void setup() { Serial.begin(9600); // configure la bibliothèque série à 9600 bps Serial.println("Motor test!"); pinMode(boutonGauche, INPUT); pinMode(boutonDroit, INPUT); pinMode(boutonOpen, INPUT); pinMode(boutonFermer, INPUT); // allume le moteur motorRotate.setSpeed(200); motorGrabber.setSpeed(200); motorRotate.run(RELEASE); motorGrabber.run(RELEASE); } void loop() { int buttonStateLeft = digitalRead(buttonLeft); int buttonStateRight = digitalRead(buttonRight); int buttonStateOpen = digitalRead(buttonOpen); int buttonStateClose = digitalRead(buttonClose); if (buttonStateLeft == HIGH) { Serial.println("Bouton Gauche"); motorRotate.run(BACKWARD); retard (250); motorRotate.run(RELEASE); } else if (buttonStateRight == HIGH) { Serial.println("Button Right"); motorRotate.run(FORWARD); retard (250); motorRotate.run(RELEASE); } else if (buttonStateOpen == HIGH) { Serial.println("Button Open"); motorGrabber.run(BACKWARD); retard (150); motorGrabber.run(RELEASE); } else if (buttonStateClose == HIGH) { Serial.println("Button Close"); motorGrabber.run(AVANT); retard (150); motorGrabber.run(RELEASE); } }

Conseillé: