Kazalo:

ICBob - dvonožni robot, navdihnjen z Bobom: 10 korakov (s slikami)
ICBob - dvonožni robot, navdihnjen z Bobom: 10 korakov (s slikami)

Video: ICBob - dvonožni robot, navdihnjen z Bobom: 10 korakov (s slikami)

Video: ICBob - dvonožni robot, navdihnjen z Bobom: 10 korakov (s slikami)
Video: Я работаю в Страшном музее для Богатых и Знаменитых. Страшные истории. Ужасы. 2024, November
Anonim
Image
Image
ICBob - dvonožni robot, navdihnjen z Bobom
ICBob - dvonožni robot, navdihnjen z Bobom

Smo Teen Imagineering Club iz javne knjižnice Bridgeville Delaware. Ustvarjamo kul projekte, medtem ko se učimo o elektroniki, računalniškem kodiranju, 3D oblikovanju in 3D tiskanju.

Ta projekt je naša prilagoditev BoB -a BiPed robota na osnovi Arduina. Ohišje smo preoblikovali tako, da smo izkoristili naš najljubši vir napajanja Arduino, baterijo napajanja telefona Powerbot. Ta poceni 5 -voltni napajalni vir za polnjenje je odličen za napajanje naših projektov Arduino in se polni s katerim koli stenskim polnilnikom USB. Prav tako smo prilagodili 3 prstna stopala Arduped dvonožnega robota samo zato, ker izgledajo ODLIČNO. Pokazali vam bomo, kje lahko dobite potrebne dele, kako sestaviti robota in vam celo dali nekaj preproste kode Arduino, da ga boste lahko sprehodili. Super smo se imeli pri izdelavi naših enajstih robotov ICBob. Če želite izvedeti, kako si ga sami narediti, nadaljujte z branjem.

Korak: Deli in orodja, ki jih boste potrebovali

Deli in orodja, ki jih boste potrebovali
Deli in orodja, ki jih boste potrebovali
Deli in orodja, ki jih boste potrebovali
Deli in orodja, ki jih boste potrebovali

ICBob je zasnovan za naslednji sklop delov. Čeprav so možne zamenjave, boste morda morali spremeniti telo, da bodo delovali. Naš najljubši dobavitelj je Yourduino.com, za nekatere izdelke pa boste morali obiskati Amazon ali Ebay.

Posodobitev razpoložljivosti izdelkov- Yourduino ne nosi več Micro Magica in pravi, da jih Dagu ukinja. Na spletnem mestu Dagu so še vedno na voljo https://www.dagurobot.com/goods.php?id=137 in če niso na voljo, je krmilnik S4A EDU manjši in deluje pri 5 voltih.

Deli

  • 1x krmilnik MICRO Magician
  • 4x- SG 90 servo
  • 1x- HC-SR04 Ultrazvočni senzor
  • 1x- Powerbot power bank 2600mAh (3000mAh Powerbot ima večji premer in se ne prilega)
  • 1x-ženski MICRO USB v DIP 5-polno ploščo
  • 1x- 20 cm 40-polni ploski kabelski konci
  • 1x-10k upor
  • 4x- 2-56 x 3/8 samorezni vijaki (alternativno vroče lepilo)

3D natisi - Datoteke stl so na voljo na Thingiverse: 1313344

  • 1x telo
  • 1x lupina
  • 2x koleno
  • 1x- levo stopalo
  • 1x- desna noga

Orodja

  • računalnik z Arduino IDE
  • Arduino dodajte v knjižnico VarSpeedServo
  • Gonilnik MICRO Magician (potreben za nekatere operacijske sisteme)
  • 3D tiskalnik (ali izdelajte dele)
  • Orodja za 3D čiščenje delov
  • Komplet za spajkanje (samo za zatiče na adapterju USB)
  • Pištola za vroče lepilo
  • Majhen izvijač Philips
  • usb polnilec

Ta Instructable predpostavlja, da imate osnovno znanje o uporabi Arduina. Če ste novi v Arduinu, lahko več izveste na

Za čarovnika MICRO izberite Board - Arduino Pro ali Pro Mini (3.3V, 8MHz) z ATmega328

Za uporabo naših skic boste potrebovali Kormanovo knjižnico VarSpeedServo. Več o njegovi knjižnici lahko izveste tukaj, vendar uporabite naš prenos spodaj, ki je združljiv z novejšo IDE. Prenesite spodnjo datoteko VarSpeedServo.zip in jo razpakirajte v mapo arduino/libraries.

Če sistem ne prepozna krmilnika, boste morda morali namestiti gonilnik MICRO Magician CP210x. To spletno mesto lahko pomaga pri namestitvi gonilnika

2. korak: Začnimo graditi - sestavite noge

Začnimo graditi - sestavite noge
Začnimo graditi - sestavite noge
Začnimo graditi - sestavite noge
Začnimo graditi - sestavite noge
Začnimo graditi - sestavite noge
Začnimo graditi - sestavite noge

Za ta korak potrebujete 2 - 3D natisnjena kolena in 4 servo pakete.

Začnite s čiščenjem kolen. Dve luknji za servo rog morata ustrezati enostranskim servo rogovom. Očistili smo jih s svedrom velikosti L (.290). Ena vrtljiva luknja mora ustrezati vrtišču na nogi. Očistili smo jih s svedrom velikosti # 2 (.220).

4 servo rogove namestite v kolena. Rog pritrdite z enim od večjih vijakov, ki ste jih dobili s servo paketom. Vijak privijte s strani kolena in ga privijte v eno od majhnih lukenj na servorogu. Za en vijak boste morali z izvijačem zategniti pod kotom, vendar je to izvedljivo. Če želite, lahko pritrdite vijačne točke, ki štrlijo s kleščami za stranske rezalnike.

4 servo vretena je treba centrirati, preden se pritrdijo na kolena. To lahko storite ročno, tako da vreteno nežno premikate skozi njegovo vrtenje, da poiščete polovično točko. Boljši način je, da priključite servo na pin 12. Prenesite datoteko icbob_servo_center.zip spodaj. Razpakirajte v imenik Arduino. Nato zaženite to skico Arduino za vsak servo.

Začnite s sestavljanjem kolčnih (zgornjih) servomotorjev do kolen. Brez premikanja vretena pritrdite kolčni servo vzporedno s kolenom, tako da so žice obrnjene proti drugemu servo trubu (spredaj). Pritrdite z enim majhnim vijakom iz servo paketa. Ponovite za drugo koleno.

Zdaj pa servomotorji za gleženj. Spomnite se, da boste imeli desni in levi gleženj, tako da bodo noge medsebojno zrcalne. Koleno boste morali rahlo razširiti, da sestavite servo za gleženj, zato servo usmerite, kot je na fotografiji, preden ga stisnete noter. Ne zavrtite vretena. Zavarujte z majhnim vijakom. Ponovite z drugim kolenom, tako da končate z desno in levo nogo.

3. korak: Gradnja - noge pritrdite na telo

Gradnja - pritrdite noge na telo
Gradnja - pritrdite noge na telo
Gradnja - pritrdite noge na telo
Gradnja - pritrdite noge na telo
Gradnja - pritrdite noge na telo
Gradnja - pritrdite noge na telo

Za ta korak potrebujete 2 sklopa nog in 3D natisnjeno podlago. Potrebovali boste tudi (4) samorezne vijake 2-56x3/8 ali vroče lepilo.

Nožni sklop se pritrdi na dno s pomočjo servomotorjev. Najprej napeljite dve servo žici navzgor po dnu podstavka. Upoštevajte levice in pravice. Kot prikazuje risba, gleženjska žica konča v polovičnem izrezu, vendar morate imeti žico za gleženj, preden je servo priključen. Servo morate nagniti, tako da bo žica (kjer vstopi v servo) najprej šla skozi pravokotno luknjo (spredaj). Je tesno prilegajoč, vendar mora zadnji del le zdrsniti. Zdaj obrnite podnožje in pritrdite servo z 2 vijakoma ali pa bi moralo delovati vroče lepilo. Postopek ponovite za drugo nogo.

4. korak: Gradnja - pritrdite noge

Gradnja - pritrdite noge
Gradnja - pritrdite noge
Gradnja - pritrdite noge
Gradnja - pritrdite noge

Za ta korak boste potrebovali levo in desno stopalo, ki ga želite dodati svoji sestavi. Vroče so zlepljeni, zato vžgite pištolo za lepilo.

Pazite, da dobro očistite reže na nogah. Po čiščenju nežno preizkusite servo na nogo. Prepričajte se, da se vrtljiva luknja v kolenu prilega vrtljivemu zatiču na stopalu. Najbolje je, da med servo in nogo uporabite tanek izvijač, da odstranite nogo, če je tesna. Ko dobite dobro preskusno prileganje, na stopalo položite globino vročega lepila in nato servo potisnite na nogo. Izogibajte se stiku lepila v bližini vrtljivega območja. Ponovite za drugo stran, da bo lahko vaš bot stal na lastnih nogah.

5. korak: Ožičenje - servomotorji in napajanje

Ožičenje - servomotorji in napajanje
Ožičenje - servomotorji in napajanje
Ožičenje - servomotorji in napajanje
Ožičenje - servomotorji in napajanje
Ožičenje - servomotorji in napajanje
Ožičenje - servomotorji in napajanje

V tem koraku boste potrebovali krmilnik MICRO Magician, adapter za mikro USB z zatiči za glavo, ploski kabel in vaš stalni bot. V tem koraku boste spajkali in vroče lepili, zato imejte orodja pripravljena.

Powerbot power bank je opremljen s kratkim kablom USB do micro USB. Za polnjenje baterije je mikro USB priključen v polnilno režo na bateriji, USB pa gre na stenski polnilnik. Ta kabel boste znova uporabili za napajanje ICBob. Izhod baterije je preko USB -ja, zato se povežemo prek adapterja mikro USB, da dobimo napajanje botu.

Najprej sestavimo adapter. Za naslednje korake glejte fotografijo. Za napajanje bota boste uporabili samo 2 zunanja zatiča (gnd in V+). Previdno potisnite 2 zunanja zatiča v glavi, tako da kratka stran štrli približno 3/16 palca. S kleščami upognite 2 dolga zatiča za približno 60 stopinj. Upognite se pred spajkanjem, ker so plošče krhke. Vstavite glavo, kot je prikazano, in za trdnost spajkajte vse zatiče na hrbtni strani. Vse neuporabljene zatiče čim prej skrajšajte tako spredaj kot zadaj. Preden lepimo adapter na cev, pritrdimo kabel mikro USB, tako da boste imeli dovolj prostora. Na zadnjo stran adapterja položite velik krog vročega lepila in ga postavite na položaj, prikazan na cevi. Držite, dokler se ne strdi.

Nato priključite 4 servo priključke na krmilnik. Všeč nam je MICRO Magician, ker ima vgrajene 3 -polne konektorje za enostavno servo ožičenje. Žica temnejše barve (rjava?) Gre proti robu plošče. Priložene skice Arduino uporabljajo naslednje zatiče.

  • Desni bok (RH) - nožica 9
  • Desni gleženj (RA) - pin 10
  • Levi bok (LH) - pin 11
  • Levi gleženj (LA) - pin 12

Za priključitev napajanja na ploščo izvlecite par žic iz ploskega kabla. Več tega ploskega kabla boste uporabili za ožičenje sonarja. En konec para povežite z adapterjem mikro USB. Pin, ki je bližje sprednji strani bota, je ozemljen, drugi pa V+. Drugi konec je pritrjen na krmilnik blizu stikala. Žica V+ se poveže z zatičem z oznako "Battery IN" v dokumentaciji. Priključite ozemljitveno žico na zatič 'gnd' tik nad zatičem 'Battery IN'.

POMEMBNO! - Tik nad nastavljenim zatičem D1 je mostiček 'V+ select'. Ta mostiček mora biti na notranjem nizu nožic, sicer servomotorji ne bodo delovali.

Na koncu očistite režo krmilnika na podstavku, tako da se krmilnik tesno prilega. Lahko priključite baterijo in "vklopite" krmilnik, da se prepričate, da se vklopi.

6. korak: Programiranje - koda za domačo kalibracijo

Nekaj besed o naši izbiri programiranja

Ko smo izdelali prototip za ta projekt, smo uporabili navodila Kako naučiti svojega BoB Biped, da premaknete vadnico na Let's Make Robots. Programska oprema Bob Poser je bila kul in z njo smo se zabavali. Težava je bila v tem, da je bilo 600+ vrstic kode v skici za krmarjenje precej nad nivojem znanja najstnikov. Da bi jim bil ta projekt bolj učna izkušnja, smo se odločili, da iz kode Poser zberemo nekaj idej in nato začnemo znova s prazno stranjo. Najstniki so že uporabljali knjižnico VarSpeedServo, medtem ko so spoznavali servomotorje v naših laboratorijih Arduino. Odločili smo se, da preverimo, ali VarSpeedServo zmore časovno in hitrostno delovanje servomotorjev, da se lahko osredotočimo le na položaje. Nastala koda deluje odlično in celotna skica walk_avoid_turn ima manj kot 100 vrstic kode. Edini novi koncepti, o katerih so se najstniki morali naučiti, so bili dvodimenzionalni nizi in način dostopa do teh podatkov s kodo. Uživajte!

Domača kalibracija

Ko ste jih sestavili, ste centrirali servo vretena. Zdaj boste videli, kako blizu ste, in natančno prilagodite njihove domače položaje. Prepričajte se, da imate nameščeno knjižnico VarSpeedServo iz 1. koraka. Prenesite datoteko icbob_home_calibration.zip spodaj in jo razpakirajte v imenik Arduino. Odprite skico v Arduino IDE. Vklopite MICRO Magician z baterijo. Računalnik priključite na ploščo in naložite kodo. Verjetno domači položaji servo ne bodo popolni. V kodi poiščite naslednji razdelek. Nadaljujte s prilagajanjem in nalaganjem, dokler vam ne uspe.

//…………………………………………………….

// Začnite s 4 hm zaporedji matrike, nastavljenimi na 90 stopinj. nato // prilagodite te nastavitve, tako da bodo kolena naravnost naprej in stopala ravna int hm [4] = {90, 90, 90, 90}; // niz za zadrževanje domačega položaja za vsak servo RH, RA, LH, LA // …………………………………………………….

Če je katera od vaših številk manjša od 50 ali večja od 130, se morate umakniti in razstaviti noge ter vretena približati sredini.

Ko imate dober domači položaj, zapišite številke. Te številke boste potrebovali za preostale skice.

7. korak: Programiranje - Premakni kodo generatorja

Programiranje - Premakni kodo generatorja
Programiranje - Premakni kodo generatorja

Zdaj pa premaknite bota. Prenesite spodaj datoteko icbob_move_generator.zip in jo razpakirajte v imenik Arduino. Odprite skico v Arduino IDE. Poiščite naslednji del kode. Domače položaje, ki ste jih posneli za svojega bota, vnesite v skico.

// člane matrike hm nastavimo na domače položaje za svojega robota

// jih je mogoče najti z uporabo icbob_home_calibration skice const int hm [4] = {95, 95, 85, 90}; // niz za zadrževanje domačega položaja za vsak servo RH, RA, LH, LA

V naslednjem razdelku kode so vnesena zaporedja premikov. Vsaka vrstica ima položaje za 4 servomotorje (RH, RA, LH, LA) glede na domači položaj.

// mv podatki matrike. Vsaka vrstica je "okvir" ali položaj, nastavljen za 4 servomotorje

// Več vrstic ustvari skupino gibov, ki jih je mogoče zanko // ustvariti hojo, obračanje, ples ali druge gibe const int mvct = 6; // Naj bo to število enako številu vrstic v matriki const int mv [mvct] [4] = {{0, -40, 0, -20}, // Te vnaprej naložene številke naj bi dale korak naprej {30, -40, 30, -20}, {30, 0, 30, 0}, {0, 20, 0, 40}, {-30, 20, -30, 40}, {-30, 0, -30, 0},};

To je koda, ki pretvori podatke mv polja v servo slowmoves

void loop () // zanka se ponavlja večno

{// Premik zaporedja za (int x = 0; x <mvct; x ++) {// kroženje skozi število RH.počasnega premikanja (hm [0]+mv [x] [0], svsp); // vrstice 'okvirji' v matriki RA.slowmove (hm [1] + mv [x] [1], svsp); LH.počasi (hm [2] + mv [x] [2], svsp); LA.počasi (hm [3] + mv [x] [3], svsp); zamuda (framedelay); }}

Naloži v bot. Robot bo za 2 sekundi prešel v začetni položaj, nato pa začel hoditi naprej. Najbolje deluje, če miza ni preveč spolzka.

Ko se ga naveličate gledati, kako hodi, lahko poskusite sami. Za preimenovanje skice uporabite »shrani kot«. Nato se igrajte s številkami in poglejte, kaj lahko storite. Številke hranite med +50 in -50, sicer pa lahko napenjate servomotorje. Ne pozabite, da če dodate ali odštejete vrstice, morate spremeniti vrednost mvct, da bo odražala spremembo. Zabavaj se!

8. korak: Ožičenje - senzor sonarja HC -SR04 (oči)

Ožičenje - sonarni senzor HC -SR04 (oči)
Ožičenje - sonarni senzor HC -SR04 (oči)
Ožičenje - sonarni senzor HC -SR04 (oči)
Ožičenje - sonarni senzor HC -SR04 (oči)

Za ta korak boste potrebovali icbob_shell 3D tisk, ultrazvočni senzor HC-SR04, ženski ploski kabel in en 10k ohmski upor. S tem bi morali zaključiti dele na našem seznamu. Ja!

Najprej očistite luknje senzorja v lupini za srednje tesno prileganje. Med preskušanjem senzorja ne pritiskajte preveč. Za ožičenje odstranite iz lupine.

Nato s ploščatega kabla izvlecite 4 pramene. Priključite 4 žice v nožice senzorja HC-SR04.

Čarovnik MICRO interno deluje na 3,3 volta, nožice pa lahko sprejmejo le signal 3,3 volta. Težava je v tem, da HC-SR04 deluje pri 5 voltih. Kot signal "sprožilca" lahko uporabi 3,3 voltni vhod, ko pa pošlje signal "odmev", je 5 voltov in bo poškodoval vhod krmilnika, če ga priključite neposredno. Za zaščito vhoda moramo na žico "echo" postaviti 10k ohmski omejevalni upor.

Posodobitev: Čeprav nismo imeli nobenih težav samo z vgrajenim uporom 10K, je bilo v komentarjih poudarjeno, da najboljša praksa kaže, da je treba tukaj uporabiti vezje delilnika napetosti. Poleg 10K upora je treba med "echo" in "ground" postaviti še 15K upor.

Odrežite uporne vodi na 0,5 cm. Upor gre v žico "echo" na vašem ploskem kablu. Na povezavo nanesemo kapljico super lepila, da ostane na mestu.

Skica uporablja pin 13 za sprožilec in pin 3 za odmev. Uporabite pin 13 na krmilniku za "gnd", "vcc", "trig" v tem vrstnem redu, ki deluje od roba proti sredini. Tukaj boste morali prečkati nekaj žic, da to popravite. "Odmevna" žica z uporom se vtakne v žensko vtičnico 3.

Če želite senzor preveriti, preden nadaljujete z naslednjim korakom, lahko uporabite prvo skico na tej strani https://arduino-info.wikispaces.com/UltraSonicDistance, da ga preizkusite. Potrebovali boste priključeno baterijo. Odčitke razdalje lahko vidite na serijskem monitorju. Prepričajte se, da ste v skici nastavili 'trigger_pin' na 13 in 'echo_pin' na 3.

Najboljši način za namestitev senzorja v ohišje je, da so zatiči usmerjeni proti vrhu, žice pa prepognjene in napeljane med "očesci" senzorja in lupino.

9. korak: Programiranje - koda Walk_Avoid_Turn

Vse skupaj. Vsi deli so sestavljeni. Pripravljeni smo naložiti celotno kodo, namestiti lupino in opazovati, kako dela svoje.

Saj poznate rutino. Prenesite spodaj datoteko icbob_walk_avoid_turn.zip in jo razpakirajte v imenik Arduino. Odprite skico v Arduino IDE. Poiščite naslednji del kode. Domače položaje, ki ste jih posneli za svojega bota, vnesite v skico.

// člane matrike hm nastavimo na domače položaje za svojega robota

// jih je mogoče najti z uporabo icbob_home_calibration skice const int hm [4] = {95, 95, 85, 90}; // niz za zadrževanje domačega položaja za vsak servo RH, RA, LH, LA

Ta skica doda drugi niz premikov in drugi niz kode za počasno premikanje za premik 'turn'.

// posreduje podatke matrike

const int fwdmvct = 6; // Naj bo to število enako številu vrstic v matriki const int fwdmv [fwdmvct] [4] = {{0, -40, 0, -20}, // okvirji za premikanje naprej {30, -40, 30, -20}, {30, 0, 30, 0}, {0, 20, 0, 40}, {-30, 20, -30, 40}, {-30, 0, -30, 0},}; // obrnemo podatke matrike const int trnmvct = 5; // Naj bo to število enako številu vrstic v matriki const int trnmv [trnmvct] [4] = {{-40, 0, -20, 0}, // obrni okvirje za premikanje {-40, 30, -20, 30}, {0, 30, 0, 30}, {30, 0, 30, 0}, {0, 0, 0, 0},};

Dodali smo kodo za zaznavanje ovir sonarja in izjavo 'if' 'else' ', da se odločimo, ali gremo naravnost ali zavijemo.

Končna montaža in zagon

Pustite baterijo izklopljeno in naložite skico. Odklopite programski kabel. Prepričajte se, da je stikalo za vklop na krmilniku v položaju "vklopljeno". Ohišje previdno potisnite na podstavek z napajalnim kablom USB skozi zgornjo luknjo. Vstavite baterijo. Priključite ga. Vaš ICBob bi se moral začeti premikati in obračati, da bi se izognil oviram bližje kot 7 palcev.

10. korak: Zaključek

Upamo, da se boste pri gradnji svojega ICBob zabavali tako dobro kot mi pri gradnji našega. Sporočite nam, če imate kakršna koli vprašanja ali pripombe. Če ga zgradite, nam to sporočite tukaj ali na Thingiverse.

Priporočena: