Съдържание:

Arduino контролирана роботизирана ръка от Lego Mindstorm: 6 стъпки
Arduino контролирана роботизирана ръка от Lego Mindstorm: 6 стъпки

Видео: Arduino контролирана роботизирана ръка от Lego Mindstorm: 6 стъпки

Видео: Arduino контролирана роботизирана ръка от Lego Mindstorm: 6 стъпки
Видео: Часть 2 Как к Сделать ан AI Приложение в Массачусетский технологический институт Приложение 2024, Ноември
Anonim
Image
Image

Преустройте два стари двигателя на Lego Mindstorm в грайферно рамо, управлявано от Arduino Uno.

Това е проект Hack Sioux Falls, където предизвикахме децата да създадат нещо готино с Arduino.

Стъпка 1: Необходими части

Необходими консумативи:

  • 2 големи двигателя на Lego ev3 mindstorm
  • Асортимент от технически части и съоръжения на Lego
  • Arduino Uno
  • Моторна дъска
  • Парче перфорирана дъска
  • Дълги проводници
  • 4 резистора
  • 4 бутона
  • Преносима USB батерия
  • USB зарядно устройство
  • Припой и поялник
  • Комплект отвертки
  • Резачка за тел

Стъпка 2: Свалете корпуса на двигателя

Започнете, като премахнете винтовете от задната страна на двата двигателя, след това премахнете белите капачки. След това можете да ги изхвърлите.

Издърпайте двигателите, като внимавате да не свалите нито една от зъбните колела от вътрешната страна. Ако все пак премахнете някое от зъбните колела, просто ги поставете на мястото си.

След като двигателите са отстранени, отрежете приставката в края на двигателя с нож за тел.

Стъпка 3: Запояване на по -дълги проводници

Добавете двигатели към моторната платка
Добавете двигатели към моторната платка

Запояйте върху нов, по -дълъг проводник. Това е много по -лесно, отколкото изглежда и отнема само няколко секунди, ако знаете какво правите.

Поставете двигателя обратно в пластмасовия корпус, след това го завийте отново. Сега можете да започнете конструкцията на рамото. Можете да създадете свой собствен дизайн или да излезете от този на снимката.

Стъпка 4: Добавете двигатели към моторната платка

Използвайте отвертка Phillips, за да включите проводниците, идващи от двигателите, към платката на двигателя, както е показано на снимката. След това включете дъската в Arduino Uno.

Нарежете USB зарядното устройство наполовина, като изложите проводника вътре. Отстранете изолацията, след това отстранете двата положителни и отрицателни проводника. След това го включете в платката на двигателя

Стъпка 5: Изградете платка за превключване

Изградете платка за превключване
Изградете платка за превключване
Изградете платка за превключване
Изградете платка за превключване
Изградете платка за превключване
Изградете платка за превключване

Запоявайте резисторите, превключвателите и проводниците върху перфорираната дъска, както е на снимката.

Добавете няколко щифта за женски конектори към перфборда и моторната платка, както е показано на снимката, след което свържете двата.

Стъпка 6:

Образ
Образ
Образ
Образ

Включете Arduino в компютър и качете този код в Arduino.

Използвахме тази библиотека за драйвери на двигатели от Adafruit, но друга библиотека с драйвери също щеше да работи.

#включете

int buttonLeft = A0; int buttonRight = A1; int buttonOpen = A2; int buttonClose = A3; AF_DCMotor motorRotate (1); AF_DCMotor motorGrabber (2); void setup () {Serial.begin (9600); // настройка на серийна библиотека със скорост 9600 bps Serial.println ("Motor test!"); pinMode (buttonLeft, INPUT); pinMode (buttonRight, INPUT); pinMode (buttonOpen, INPUT); pinMode (buttonClose, INPUT); // включване на двигателя motorRotate.setSpeed (200); motorGrabber.setSpeed (200); motorRotate.run (РЕЛИЗАЦИЯ); motorGrabber.run (ИЗПУСКАНЕ); } 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 (НАЗАД); забавяне (250); motorRotate.run (РЕЛИЗАЦИЯ); } else if (buttonStateRight == HIGH) {Serial.println ("Button Right"); motorRotate.run (НАПРЕД); забавяне (250); motorRotate.run (РЕЛИЗАЦИЯ); } else if (buttonStateOpen == HIGH) {Serial.println ("Button Open"); motorGrabber.run (НАЗАД); забавяне (150); motorGrabber.run (ИЗПУСКАНЕ); } else if (buttonStateClose == HIGH) {Serial.println ("Button Close"); motorGrabber.run (НАПРЕД); забавяне (150); motorGrabber.run (ИЗПУСКАНЕ); }}

Препоръчано: