Sommario:

Braccio robotico controllato da Arduino di Lego Mindstorm: 6 passaggi
Braccio robotico controllato da Arduino di Lego Mindstorm: 6 passaggi

Video: Braccio robotico controllato da Arduino di Lego Mindstorm: 6 passaggi

Video: Braccio robotico controllato da Arduino di Lego Mindstorm: 6 passaggi
Video: Recensione contenuti Rivista n.231 Elettronica In - Dicembre 2018 / Gennaio 2019 2024, Novembre
Anonim
Image
Image

Riutilizza due vecchi motori Lego Mindstorm in un braccio di presa controllato da un Arduino Uno.

Questo è un progetto Hack Sioux Falls in cui abbiamo sfidato i bambini a costruire qualcosa di interessante con un Arduino.

Passaggio 1: parti necessarie

Forniture necessarie:

  • 2 grandi motori Lego ev3 mindstorm
  • Un assortimento di pezzi tecnici e ingranaggi Lego
  • Un Arduino Uno
  • Scheda motore
  • Un pezzo di perfboard
  • Fili lunghi
  • 4 resistori
  • 4 pulsanti
  • Una batteria USB portatile
  • Un caricabatterie USB
  • Saldatore e saldatore
  • Set di cacciaviti
  • Un tagliafili

Passaggio 2: rimuovere l'alloggiamento del motore

Inizia rimuovendo le viti sul retro di entrambi i motori, quindi rimuovendo i cappucci bianchi. Puoi quindi scartarli.

Estrarre i motori, assicurandosi di non rimuovere nessuno degli ingranaggi all'interno. Se rimuovi uno degli ingranaggi, rimettili a posto.

Una volta rimossi i motori, tagliare il plug all'estremità del motore con un tronchese.

Passaggio 3: saldare su fili più lunghi

Aggiungi motori alla scheda motore
Aggiungi motori alla scheda motore

Saldare su un filo nuovo e più lungo. È molto più semplice di quanto sembri e richiede solo pochi secondi se sai cosa stai facendo.

Rimetti il motore nell'involucro di plastica, quindi riavvitalo. Ora puoi iniziare la costruzione del braccio. Puoi creare il tuo design o uscire da quello nella foto.

Passaggio 4: aggiungere motori alla scheda motore

Utilizzare un cacciavite Phillips per collegare i fili provenienti dai motori alla scheda motore come mostrato nell'immagine. Quindi collega la scheda ad Arduino Uno.

Taglia il caricatore USB a metà, esponendo il filo all'interno. Spelare l'isolamento, quindi spellare i due conduttori positivo e negativo. Quindi collegalo alla scheda del motore

Passaggio 5: costruire la scheda dell'interruttore

Costruisci quadro elettrico
Costruisci quadro elettrico
Costruisci quadro elettrico
Costruisci quadro elettrico
Costruisci quadro elettrico
Costruisci quadro elettrico

Saldare i resistori, gli interruttori e i cavi sulla perfboard come nell'immagine.

Aggiungi alcuni pin del connettore femmina sulla scheda perfboard e sulla scheda motore come mostra l'immagine, quindi collega i due.

Passaggio 6:

Immagine
Immagine
Immagine
Immagine

Collega l'Arduino a un computer e carica questo codice nell'Arduino.

Abbiamo usato questa libreria di driver per motori di Adafruit, ma funzionerebbe anche un'altra libreria di driver.

#inlude

int buttonLeft = A0;int buttonDestra = A1; int buttonOpen = A2; int buttonChiudi = A3; AF_DCMotore motoreRotate(1); AF_DCMotor motorGrabber(2); void setup() { Serial.begin(9600); // imposta la libreria Serial a 9600 bps Serial.println("Test motore!"); pinMode(buttonLeft, INPUT); pinMode(buttonRight, INPUT); pinMode(buttonOpen, INPUT); pinMode(buttonChiudi, INPUT); // accendi il motore 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("Button Left"); motorRotate.run(BACKWARD); ritardo(250); motorRotate.run(RELEASE); } else if (buttonStateRight == HIGH) { Serial.println("Button Right"); motorRotate.run(AVANTI); ritardo(250); motorRotate.run(RELEASE); } else if (buttonStateOpen == HIGH) { Serial.println("Button Open"); motorGrabber.run(BACKWARD); ritardo(150); motorGrabber.run(RELEASE); } else if (buttonStateClose == HIGH) { Serial.println("Button Close"); motorGrabber.run(AVANTI); ritardo(150); motorGrabber.run(RELEASE); } }

Consigliato: