Turinys:

„Arduino“valdoma robotų ranka iš „Lego Mindstorm“: 6 žingsniai
„Arduino“valdoma robotų ranka iš „Lego Mindstorm“: 6 žingsniai

Video: „Arduino“valdoma robotų ranka iš „Lego Mindstorm“: 6 žingsniai

Video: „Arduino“valdoma robotų ranka iš „Lego Mindstorm“: 6 žingsniai
Video: VU Vaikų universiteto paskaita MANO DRAUGUŽIS - ROBOTAS (8-11 metų moksleiviams) 2024, Lapkritis
Anonim
Image
Image

Perkelkite du senus „Lego Mindstorm“variklius į griebtuvo ranką, valdomą „Arduino Uno“.

Tai „Hack Sioux Falls“projektas, kuriame mes metėme vaikams iššūkį sukurti kažką šaunaus su „Arduino“.

1 žingsnis: reikalingos dalys

Reikalingos medžiagos:

  • 2 dideli „Lego ev3 mindstorm“varikliai
  • „Lego“technikos detalių ir krumpliaračių asortimentas
  • „Arduino Uno“
  • Variklio lenta
  • Perfboardo gabalas
  • Ilgi laidai
  • 4 rezistoriai
  • 4 mygtukai
  • Nešiojama USB baterija
  • USB įkroviklis
  • Lituoklis ir lituoklis
  • Atsuktuvų rinkinys
  • Vielos pjaustytuvas

2 žingsnis: nuimkite variklio korpusą

Pradėkite nuimdami varžtus abiejų variklių gale, tada nuimkite baltus dangtelius. Tada galite juos išmesti.

Ištraukite variklius, stengdamiesi nenuimti jokių pavarų viduje. Jei pašalinsite kurią nors krumpliaratį, tiesiog grąžinkite jas į vietą.

Nuėmus variklius, vielos pjaustytuvu nutraukite variklio galo papildinį.

3 žingsnis: lituokite ant ilgesnių laidų

Pridėkite variklius prie variklių plokštės
Pridėkite variklius prie variklių plokštės

Lituokite ant naujos, ilgesnės vielos. Tai daug lengviau, nei atrodo, ir užtrunka tik kelias sekundes, jei žinote, ką darote.

Įdėkite variklį atgal į plastikinį korpusą, tada vėl prisukite. Dabar galite pradėti statyti ranką. Galite sukurti savo dizainą arba atsisakyti paveikslėlio.

4 žingsnis: pridėkite variklius prie variklio plokštės

Naudokite „Phillips“atsuktuvą, kad prijungtumėte variklių laidus į variklio plokštę, kaip parodyta paveikslėlyje. Tada prijunkite plokštę prie „Arduino Uno“.

Perpjaukite USB įkroviklį per pusę, atskleisdami viduje esantį laidą. Pašalinkite izoliaciją, tada nuimkite du teigiamus ir neigiamus laidus. Tada prijunkite jį prie variklio plokštės

5 žingsnis: sukurkite jungiklių plokštę

Sukurkite jungiklių plokštę
Sukurkite jungiklių plokštę
Sukurkite jungiklių plokštę
Sukurkite jungiklių plokštę
Sukurkite jungiklių plokštę
Sukurkite jungiklių plokštę

Lituokite rezistorius, jungiklius ir laidus ant plokštės, kaip parodyta paveikslėlyje.

Pridėkite keletą moterų jungčių kaiščių prie plokštės ir variklio plokštės, kaip parodyta paveikslėlyje, tada prijunkite abi.

6 žingsnis:

Vaizdas
Vaizdas
Vaizdas
Vaizdas

Prijunkite „Arduino“prie kompiuterio ir įkelkite šį kodą į „Arduino“.

Mes naudojome šią „Adafruit“motorinių vairuotojų biblioteką, tačiau taip pat veiktų kita vairuotojų biblioteka.

#įtraukimas

int buttonLeft = A0; int buttonRight = A1; int mygtukasOpen = A2; int mygtukasUždaryti = A3; AF_DCMotor motorRotate (1); AF_DCMotorinis variklisGrabber (2); void setup () {Serial.begin (9600); // nustatyti serijos biblioteką esant 9600 bps Serial.println ("Motor test!"); pinMode (mygtukasLeft, INPUT); pinMode (buttonRight, INPUT); pinMode (buttonOpen, INPUT); pinMode (buttonClose, INPUT); // įjungti variklio 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 („Mygtukas kairėn“); motorRotate.run (BACKWARD); vėlavimas (250); motorRotate.run (RELEASE); } else if (buttonStateRight == HIGH) {Serial.println („Button Right“); motorRotate.run (FORWARD); vėlavimas (250); motorRotate.run (RELEASE); } else if (buttonStateOpen == HIGH) {Serial.println ("Button Open"); motorGrabber.run (BACKWARD); vėlavimas (150); motorGrabber.run (RELEASE); } else if (buttonStateClose == HIGH) {Serial.println ("Button Close"); motorGrabber.run (į priekį); vėlavimas (150); motorGrabber.run (RELEASE); }}

Rekomenduojamas: