Obsah:

ICBob - dvojnohý robot inšpirovaný Bobom: 10 krokov (s obrázkami)
ICBob - dvojnohý robot inšpirovaný Bobom: 10 krokov (s obrázkami)

Video: ICBob - dvojnohý robot inšpirovaný Bobom: 10 krokov (s obrázkami)

Video: ICBob - dvojnohý robot inšpirovaný Bobom: 10 krokov (s obrázkami)
Video: ТАКОВ МОЙ ПУТЬ В L4D2 2024, November
Anonim
Image
Image
ICBob - dvojnohý robot inšpirovaný Bobom
ICBob - dvojnohý robot inšpirovaný Bobom

Sme klub teenagerov z verejnej knižnice Bridgeville Delaware. Vytvárame skvelé projekty a zároveň sa učíme o elektronike, počítačovom kódovaní, 3D dizajne a 3D tlači.

Tento projekt je našou adaptáciou robota BoB the BiPed a Arduino. Telo sme prepracovali tak, aby využívalo výhody nášho obľúbeného zdroja energie Arduino, powerbanky telefónu Powerbot. Tento lacný nabíjateľný 5 voltový zdroj energie je skvelý na napájanie našich projektov Arduino a nabíja sa pomocou akejkoľvek USB nástennej nabíjačky. Tiež sme upravili 3 prsty na nohách od dvojnohého robota Arduped len preto, že vyzerajú ÚŽASNE. Ukážeme vám, kde získať potrebné súčiastky, ako zostaviť robota a dokonca vám poskytneme jednoduchý kód Arduino, pomocou ktorého sa dostanete pešo. Pri výrobe našich jedenástich robotov ICBob sme si to užili. Pokračujte v čítaní, ak sa chcete dozvedieť, ako si ho vyrobiť sami.

Krok 1: Časti a nástroje, ktoré budete potrebovať

Diely a nástroje, ktoré budete potrebovať
Diely a nástroje, ktoré budete potrebovať
Diely a nástroje, ktoré budete potrebovať
Diely a nástroje, ktoré budete potrebovať

ICBob je navrhnutý pre nasledujúcu sadu dielov. Aj keď sú náhrady možné, možno budete musieť upraviť telo, aby fungovalo. Našim obľúbeným dodávateľom je Yourduino.com, ale pre niektoré položky budete musieť ísť na Amazon alebo Ebay.

Aktualizácia dostupnosti produktu- Yourduino už nenesie Micro Magician a hovorí, že ich spoločnosť Dagu prestáva používať. Web Dagu ich má stále k dispozícii https://www.dagurobot.com/goods.php?id=137 a ak nie sú k dispozícii, radič S4A EDU je náhradou a funguje pri 5 voltoch.

Časti

  • 1x- Ovládač MICRO Magician
  • 4x servo SG 90
  • 1x- HC-SR04 Ultrazvukový senzor
  • 1x- Powerbot powerbanka 2600mAh (3000mAh Powerbot má väčší priemer a nezmestí sa)
  • 1x- zásuvka MICRO USB na DIP 5-pinový pinboard
  • 1x- 20 cm 40-pinové ploché konektory s plochým káblom
  • Rezistor 1 x 10k
  • 4x- 2-56 x 3/8 samorezné skrutky (alternatívne horúce lepidlo)

3D výtlačky - súbory STL sú k dispozícii na veci Thingiverse: 1313344

  • 1x- telo
  • 1x- škrupina
  • 2x- koleno
  • 1x- ľavá noha
  • 1x- pravá noha

Nástroje

  • počítač s Arduino IDE
  • Doplnková knižnica Arduino VarSpeedServo
  • Ovládač MICRO Magician (potrebný pre niektoré operačné systémy)
  • 3D tlačiareň (alebo si nechajte vyrobiť diely)
  • Nástroje na čistenie 3D dielov
  • Spájkovacia súprava (iba pre kolíky na adaptéri USB)
  • Horúca lepiaca pištoľ
  • Malý skrutkovač Philips
  • usb nabíjačka

Tento návod predpokladá, že máte základné znalosti o používaní Arduina. Ak ste v Arduino nováčik, môžete sa dozvedieť viac na

Pre MICRO kúzelníka zvoľte dosku - Arduino Pro alebo Pro Mini (3,3 V, 8 MHz) s ATmega328

Na používanie našich skíc budete potrebovať knižnicu Korman VarSpeedServo. Môžete sa dozvedieť viac o jeho knižnici tu, ale použite naše nižšie uvedené stiahnutie, ktoré je kompatibilné s novším IDE. Stiahnite si nižšie uvedený súbor VarSpeedServo.zip a rozbaľte ho do priečinka arduino/knižníc.

Ak váš systém nepozná radič, bude možno potrebné nainštalovať ovládač MICRO Magician CP210x. Táto stránka môže pomôcť s inštaláciou ovládača

Krok 2: Začnime stavať - zostavte nohy

Začnime stavať - zostavte nohy
Začnime stavať - zostavte nohy
Začnime stavať - zostavte nohy
Začnime stavať - zostavte nohy
Začnime stavať - zostavte nohy
Začnime stavať - zostavte nohy

Na tento krok budete potrebovať 2 - 3D tlačené kolená a 4 servo balíčky.

Začnite čistením kolien. 2 otvory pre servo klaksón je potrebné prispôsobiť jednostranným servo klaksónom. Vyčistili sme ich vŕtačkou veľkosti L (.290). Jeden otočný otvor musí zapadnúť na čap na nohe. Vyčistili sme ich vŕtačkou veľkosti č. 2 (0,220).

Nasaďte 4 servo rohy na kolená. Upevnite klaksón pomocou jednej z väčších skrutiek, ktoré boli dodané so balíkom serva. Prevlečte skrutku z kolena a utiahnite do jedného z malých otvorov na servo rohu. Pri jednej skrutke budete musieť skrutkovať skrutkovačom pod uhlom, ale dá sa to. Hroty skrutiek, ktoré vyčnievajú, môžete zastrihnúť bočnými kliešťami, ak chcete.

4 servo vretená musia byť vycentrované, než sú pripevnené k kolenám. Môžete to urobiť manuálne jemným pohybom vretena jeho otáčaním, aby ste našli polovičný bod. Lepší spôsob je pripojiť servo na pin 12. Stiahnite si súbor icbob_servo_center.zip nižšie. Rozbaľte do adresára Arduino. Potom spustite túto skicu Arduino pre každé servo.

Začnite zostavením bedrových (horných) servov ku kolenám. Bez pohybu vretena pripevnite bedrové servo rovnobežne s kolenom tak, aby drôty smerovali k druhému klaksónu (vpredu). Zaistite jednou malou skrutkou zo serva. Opakujte pre druhé koleno.

Teraz k členkovým servám. Pamätajte si, že budete mať pravý a ľavý členok, takže nohy budú navzájom zrkadlovými obrazmi. Na zostavenie členkového serva budete musieť koleno mierne roztiahnuť, takže pred stlačením ho posuňte tak, ako je na obrázku. Nezabudnite vreteno neotáčať. Zaistite malou skrutkou. Opakujte s druhým kolenom, aby ste skončili s pravou a ľavou nohou.

Krok 3: Budovanie - pripevnite nohy k telu

Budova - Pripojte nohy k telu
Budova - Pripojte nohy k telu
Budova - pripevnite nohy k telu
Budova - pripevnite nohy k telu
Budova - pripevnite nohy k telu
Budova - pripevnite nohy k telu

Na tento krok budete potrebovať 2 zostavy nôh a 3D tlačenú základňu. Budete tiež potrebovať (4) 2-56x3/8 samorezné skrutky alebo horúce lepidlo.

Zostava nohy sa pripevňuje k základni pomocou bedrových serv. Najprv preveďte 2 servopohony hore spodkom základne. Dávajte pozor na práva a ľavice. Ako ukazuje výkres, členkový drôt končí vo výreze na polmesiaci, ale pred pripevnením serva musíte členkový drôt zapojiť. Servo musíte nakloniť tak, aby bedrový drôt (tam, kde vstupuje do serva) prešiel najskôr obdĺžnikovým otvorom (dopredu). Je tesný, ale zadný koniec by mal iba vkĺznuť dovnútra. Teraz otočte základňu a zaistite servo pomocou 2 skrutiek alebo alternatívne by malo fungovať horúce lepidlo. Opakujte postup pre druhú nohu.

Krok 4: Budovanie - Pripojte nohy

Budova - Pripojte nohy
Budova - Pripojte nohy
Budova - Pripojte nohy
Budova - Pripojte nohy

Na tento krok budete potrebovať ľavú a pravú nohu, ktoré pridáte do svojej zostavy. Sú za tepla nalepené, takže zapáľte lepiacu pištoľ.

Dbajte na to, aby ste dobre vyčistili štrbiny v nohách. Po vyčistení servo jemne vyskúšajte, či je namontované na nohe. Uistite sa, že otočný otvor v kolene zapadá do otočného čapu na nohe. Najlepšie je použiť tenký skrutkovač medzi servom a nohou na vypáčenie nohy späť, ak je tesná. Potom, čo získate dobrú testovaciu spôsobilosť, položte na chodidlo horúcu lepidlo v tvare drobnej koruny a potom zatlačte servo na nohu. Zabráňte vniknutiu lepidla do blízkosti oblasti otáčania. Opakujte pre druhú stranu, aby sa váš robot mohol postaviť na vlastné nohy.

Krok 5: Zapojenie - serva a napájania

Elektroinštalácia - servá a napájanie
Elektroinštalácia - servá a napájanie
Elektroinštalácia - servá a napájanie
Elektroinštalácia - servá a napájanie
Elektroinštalácia - servá a napájanie
Elektroinštalácia - servá a napájanie

V tomto kroku budete potrebovať ovládač MICRO Magician, dosku adaptéra micro USB s kolíkovými konektormi, plochý kábel a stojaceho robota. V tomto kroku budete spájkovať a lepiť za tepla, takže majte tieto nástroje pripravené.

Powerbanka Powerbot je dodávaná s krátkym káblom USB na micro USB. Na nabíjanie batérie je micro USB zapojený do nabíjacieho otvoru na batérii a USB ide do nástennej nabíjačky. Tento kábel znova použijete na napájanie ICBob. Výstup batérie je cez USB, takže sa pripájame prostredníctvom dosky adaptéra micro USB, aby sme napájali robota.

Najprv si dajte dohromady adaptér. Ďalšie kroky nájdete na fotografii. Na napájanie robota použijete iba 2 vonkajšie piny (GND a V+). Opatrne zasuňte 2 vonkajšie kolíky do hlavičky, aby krátka strana vyčnievala asi 3/16 palca. Kliešťami ohnite 2 dlhé kolíky o 60 stupňov. Pred spájkovaním sa ohnite, pretože dosky sú krehké. Vložte záhlavie podľa obrázku a všetky kolíky vzadu spájkujte, aby boli pevné. Všetky nepoužité kolíky pripnite spredu aj zozadu čo najkratšie. Pred prilepením adaptéra na hlaveň pripojte kábel micro USB, aby ste mali dostatok voľného priestoru. Na zadnú stranu adaptéra naneste veľký pár horúceho lepidla a umiestnite ho do polohy uvedenej na valci. Vydržte, kým nestuhne.

Potom pripevnite 4 servo konektory k ovládaču. Páči sa nám MICRO Magician, pretože má vstavané 3 kolíkové konektory pre ľahké zapojenie serva. Tmavší drôt (hnedý?) Smeruje k okraju dosky. Priložené skice Arduino používajú nasledujúce piny.

  • Pravý bok (vpravo) - kolík 9
  • Pravé členok (RA) - kolík 10
  • Ľavý bok (LH) - kolík 11
  • Ľavé členok (LA) - kolík 12

Na pripojenie napájania k doske vytiahnite pár káblov z plochého kábla. Viac z tohto plochého kábla využijete na sonarové vedenie. Pripojte jeden koniec páru k adaptéru micro USB. Kolík, ktorý je bližšie k prednej časti robota, je uzemnený a druhý V+. Druhý koniec sa pripája k ovládaču v blízkosti spínača. Vodič V+ sa pripája na kolík označený v dokumentácii „Batéria V“. Pripojte uzemňovací vodič ku kolíku „gnd“tesne nad kolíkom „Battery IN“.

DÔLEŽITÉ! - Tesne nad sadou pinov D1 je prepojka „V+ select“. Tento prepojovací mostík musí byť na VNÚTRI súprave kolíkov, inak serva nebudú fungovať.

Nakoniec vyčistite slot ovládača na základni, aby ovládač dobre priliehal. Môžete pripojiť batériu a zapnúť ovládač, aby ste sa presvedčili, že sa nabíja.

Krok 6: Programovanie - domáci kalibračný kód

Niekoľko slov o našich možnostiach programovania

Keď sme stavali prototyp tohto projektu, použili sme návod Ako naučiť svojho BB Bipeda, aby prešiel ďalej na Let's Make Robots. Softvér Bob Poser bol úžasný a bavili sme sa s ním. Problém bol v tom, že viac ako 600 riadkov kódu v náčrte navigácie bolo výrazne nad úrovňou znalostí tínedžerov. Aby bol tento projekt pre nich viac vzdelávacou skúsenosťou, rozhodli sme sa zozbierať niekoľko myšlienok z kódu Poser a potom začať odznova s prázdnou stránkou. Tínedžeri už používali knižnicu VarSpeedServo, keď sa učili o servách v našich laboratóriách Arduino. Rozhodli sme sa zistiť, či VarSpeedServo zvládne časové a rýchlostné povinnosti pre serva, aby sme sa mohli sústrediť iba na polohy. Výsledný kód funguje skvele a celý náčrt walk_avoid_turn má menej ako 100 riadkov kódu. Jediné nové koncepty, o ktorých sa mladiství potrebovali dozvedieť, boli 2 dimenzionálne polia a spôsob prístupu k týmto údajom pomocou kódu. Užite si to!

Domáca kalibrácia

Keď ste ich zostavili, vycentrovali ste vretená servo. Teraz uvidíte, ako blízko ste sa dostali, a doladíte ich domovské polohy. Uistite sa, že máte nainštalovanú knižnicu VarSpeedServo z kroku 1. Stiahnite si nižšie uvedený súbor icbob_home_calibration.zip a rozbaľte ho do svojho adresára Arduino. Otvorte skicu v Arduino IDE. Zapnite MICRO Magician batériou. Pripojte počítač k doske a nahrajte kód. Je pravdepodobné, že východiskové polohy serva nebudú dokonalé. V kóde nájdete nasledujúcu časť. Pokračujte v úprave a odosielaní, kým to nepochopíte správne.

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

// Začnite so 4 hm. Maticou poľa nastavenou na 90 stupňov. potom upravte // tieto nastavenia tak, aby boli kolená rovno vpredu a chodidlá ploché v hm [4] = {90, 90, 90, 90}; // pole na udržanie východiskovej polohy pre každé servo RH, RA, LH, LA // ………………………………………………………….

Ak je niektoré z vašich čísel menšie ako 50 alebo vyššie ako 130, musíte ustúpiť a rozobrať nohy a dostať vretená bližšie k stredu.

Akonáhle budete mať dobrú domácu pozíciu, zapíšte si čísla. Tieto čísla budete potrebovať pre zvyšok náčrtov.

Krok 7: Programovanie - Presuňte kód generátora

Programovanie - Move Generator Code
Programovanie - Move Generator Code

Teraz dajte svojmu robotovi do pohybu. Stiahnite si nižšie uvedený súbor icbob_move_generator.zip a rozbaľte ho do svojho adresára Arduino. Otvorte skicu v Arduino IDE. Nájdite nasledujúcu časť kódu. Do náčrtu vložte domáce polohy, ktoré ste zaznamenali pre svojho robota.

// nastavte členy pre pole hm na domovské polohy vášho robota

// je ich možné nájsť pomocou icbob_home_calibration sketch const int hm [4] = {95, 95, 85, 90}; // pole na udržanie základnej polohy pre každé servo RH, RA, LH, LA

V nasledujúcej časti kódu sú zadané sekvencie presunov. Každý riadok má polohy pre 4 serva (RH, RA, LH, LA) vzhľadom na domácu polohu.

// údaje poľa mv. Každý rad je „rámom“alebo polohou nastavenou pre 4 servá

// Viaceré riadky vytvoria skupinu pohybov, ktoré možno zacykliť //, aby sa vytvorili pohyby pri chôdzi, otáčaní, tanci alebo iných pohyboch const int mvct = 6; // Nech sa toto číslo rovná počtu riadkov v poli const int mv [mvct] [4] = {{0, -40, 0, -20}, // Tieto vopred načítané čísla by mali poskytnúť prechádzku dopredu {30, -40, 30, -20}, {30, 0, 30, 0}, {0, 20, 0, 40}, {-30, 20, -30, 40}, {-30, 0, -30, 0},};

Toto je kód, ktorý premieňa údaje mv poľa na servo pomalé pohyby

void loop () // slučka sa navždy opakuje

{// Posunúť postupnosť pre (int x = 0; x <mvct; x ++) {// cyklus počtom RH.slowmove (hm [0]+mv [x] [0], svsp); // riadky 'rámcov' v poli RA.slowmove (hm [1] + mv [x] [1], svsp); LH.slowmove (hm [2] + mv [x] [2], svsp); LA.slowmove (hm [3] + mv [x] [3], svsp); oneskorenie (framedelay); }}

Odovzdať do robota. Robot prejde na 2 sekundy do východiskovej polohy a potom začne cyklus dopredu. Funguje to najlepšie, ak stôl nie je príliš klzký.

Akonáhle vás unaví vidieť ho chodiť, môžete vyskúšať svoje vlastné pohyby. Pomocou 'uložiť ako' skicu premenujte. Potom sa pohrajte s číslami a uvidíte, čo môžete urobiť. Nechajte čísla v rozmedzí +50 až -50, inak môžete serva namáhať. Nezabudnite, že ak pridávate alebo odčítate riadky, musíte zmeniť hodnotu mvct, aby odrážala zmenu. Bavte sa!

Krok 8: Elektroinštalácia - Sonarový senzor HC -SR04 (oči)

Elektroinštalácia - Sonarový senzor HC -SR04 (oči)
Elektroinštalácia - Sonarový senzor HC -SR04 (oči)
Elektroinštalácia - Sonarový senzor HC -SR04 (oči)
Elektroinštalácia - Sonarový senzor HC -SR04 (oči)

Na tento krok budete potrebovať 3D tlač icbob_shell, ultrazvukový snímač HC-SR04, plochý kábel a jeden odpor 10 kOhm. Tým by sa mali dokončiť diely v našom zozname. Áno!

Najprv vyčistite otvory senzora v puzdre, aby boli stredne tesné. Pri skúške na snímač nevyvíjajte príliš veľký tlak. Vyberte z plášťa kvôli zapojeniu.

Potom z plochého kábla stiahnite 4 pramene. Pripojte 4 vodiče k kolíkom snímača HC-SR04.

MICRO kúzelník interne pracuje na 3,3 voltoch a kolíky môžu prijímať iba 3,3 voltový signál. Problém je v tom, že HC-SR04 funguje na 5 voltov. Môže použiť 3,3 voltový vstup ako „spúšťací“signál, ale keď vyšle signál „ozveny“, je to 5 voltov a pri priamom zapojení poškodí vstup ovládača. Na drôt „ozveny“musíme vložiť odpor obmedzujúci prúd 10 kOhm, aby bol vstup chránený.

AKTUALIZÁCIA: Aj keď sme nemali žiadne problémy iba s vloženým 10K odporom, v komentároch bolo poukázané na to, že osvedčený postup naznačuje, že by sa tu mal použiť obvod deliča napätia. Okrem odporu 10K by mal byť medzi „echo“a „zem“umiestnený aj 15K odpor.

Odrežte vodiče rezistora na 0,5 palca. Rezistor ide do drôtu „ozveny“na vašom plochom kábli. Na spojenie dáme kvapku super lepidla, aby zostalo na mieste.

Skica používa kolík 13 na spustenie a kolík 3 na ozvenu. Skupinu pinov 13 na ovládači použite pre „gnd“, „vcc“, „trig“v takom poradí, aby pracovali od okraja smerom k stredu. Aby ste to urobili správne, budete tu musieť skrížiť niektoré drôty. Vodič „ozveny“s odporom sa zapojí do zásuvky s kolíkom 3.

Ak si chcete snímač prezrieť skôr, ako prejdete na ďalší krok, môžete ho otestovať pomocou prvého náčrtu na tejto stránke https://arduino-info.wikispaces.com/UltraSonicDistance. Budete potrebovať pripojenú batériu. Odčítanú vzdialenosť môžete vidieť na sériovom monitore. Uistite sa, že ste v skici nastavili 'trigger_pin' na 13 a 'echo_pin' na 3.

Senzor je možné najlepšie nainštalovať do puzdra tak, že kolíky smerujú nahor a drôty sú zložené a vedené medzi „očami“senzora a plášťom.

Krok 9: Programovanie - Walk_Avoid_Turn Code

Dávať to všetko dokopy. Všetky diely sú zmontované. Sme pripravení načítať celý kód, nasadiť shell a sledovať, ako robí svoje.

Poznáte rutinu. Stiahnite si nižšie uvedený súbor icbob_walk_avoid_turn.zip a rozbaľte ho do svojho adresára Arduino. Otvorte skicu v Arduino IDE. Nájdite nasledujúcu časť kódu. Do náčrtu vložte domáce polohy, ktoré ste zaznamenali pre svojho robota.

// nastavte členy pre pole hm na domovské polohy vášho robota

// je ich možné nájsť pomocou icbob_home_calibration sketch const int hm [4] = {95, 95, 85, 90}; // pole na udržanie základnej polohy pre každé servo RH, RA, LH, LA

Tento náčrt pridáva pole druhého ťahu a druhú sadu kódu pomalého pohybu pre ťah „ťah“.

// preposielanie údajov poľa

const int fwdmvct = 6; // Nech sa toto číslo rovná počtu riadkov v poli const int fwdmv [fwdmvct] [4] = {{0, -40, 0, -20}, // pohyb dopredu rámy pohybu {30, -40, 30, -20}, {30, 0, 30, 0}, {0, 20, 0, 40}, {-30, 20, -30, 40}, {-30, 0, -30, 0},}; // otočenie dát poľa const int trnmvct = 5; // Nech sa toto číslo rovná počtu riadkov v poli const int trnmv [trnmvct] [4] = {{-40, 0, -20, 0}, // otočí pohyblivé rámce {-40, 30, -20, 30}, {0, 30, 0, 30}, {30, 0, 30, 0}, {0, 0, 0, 0},};

Pridali sme kód detekcie prekážok sonaru a tiež príkaz „if“„else“, aby sme sa rozhodli, či ideme rovno alebo odbočujeme.

Konečná montáž a spustenie

Nechajte batériu odpojenú a nahrajte náčrt. Odpojte programovací kábel. Uistite sa, že je vypínač na ovládači v spodnej polohe. Plášť opatrne zasuňte na základňu tak, aby cez horný otvor trčal napájací kábel USB. Vložte batériu. Pripojte ho. Váš ICBob by sa mal začať pohybovať a otáčať, aby ste sa vyhli prekážkam bližšie ako 7 palcov.

Krok 10: Zbaliť

Dúfame, že vás budovanie ICBobu bude baviť rovnako ako nás. Dajte nám vedieť, ak máte akékoľvek otázky alebo pripomienky. Ak ho postavíte, dajte nám vedieť tu alebo na Thingiverse.

Odporúča: