Obsah:

Hexapod: 14 kroků (s obrázky)
Hexapod: 14 kroků (s obrázky)

Video: Hexapod: 14 kroků (s obrázky)

Video: Hexapod: 14 kroků (s obrázky)
Video: Leap Motion SDK 2024, Červenec
Anonim
Hexapod
Hexapod
Hexapod
Hexapod
Hexapod
Hexapod

Mám zájem už několik let hrát si a vytvářet roboty a velmi mě inspirovala Zenta, zde najdete jeho Youtube kanál https://www.youtube.com/channel/UCmCZ-oLEnCgmBs_T a jeho webové stránky

Na internetu najdete spoustu sad od mnoha různých prodejců, ale jsou velmi nákladné, až 1 500 $+ za hexapod 4 DoF a soupravy z Číny nemají dobrou kvalitu. Takže jsem se rozhodl vytvořit v hexapodu svým způsobem. Inspirován Zentovým hexapodem Phoenix, najdete jej na jeho kanálu Youtube (a kit, který najdete na adrese https://www.lynxmotion.com/c-117-phoenix.aspx, jsem začal vytvářet vlastní od nuly.

Pro vytváření, pokud nastavíte následující cíle/požadavky pro mé vlastní:

1.) Užijte si spoustu zábavy a učte se nové věci.

2.) Nákladově řízený design (sakra, moje společnost mě úplně rozmazlila)

3.) Díly z překližkového dřeva (protože řezání dřeva je pro většinu lidí a také pro mě jednodušší)

4.) Pomocí bezplatných dostupných nástrojů (software)

Takže, co jsem zatím použil?

a) SketchUp, pro mechanické provedení.

b) Bukové překližkové dřevo 4 mm a 6 mm (1/4 ).

c) Arduino Uno, Mega, IDE.

d) Digitální standardní serva (na Amazonu za dobrou cenu).

e) Dosuki a pásová pila, vrtačka, brusný papír a pilník.

Krok 1: Konstrukce nohou a servopohonů

Konstrukce nohou a servo držáků
Konstrukce nohou a servo držáků
Konstrukce nohou a servo držáků
Konstrukce nohou a servo držáků
Konstrukce nohou a servo držáků
Konstrukce nohou a servo držáků

Nejprve jsem dělal nějaký průzkum na internetu, abych zjistil, jak dělat robota, ale nebyl jsem úspěšný, když jsem našel dobré informace o tom, jak udělat mechanický design. Takže jsem hodně bojoval a nakonec jsem se rozhodl použít SketchUp.

Po několika hodinách učení pomocí SketchUp jsem dokončil svůj první návrh nohou. Stehenní kost je optimalizována na velikost servorohů, které používám. Jak jsem zjistil, zdá se, že originál má průměr kolem 1 palce, ale moje servo rohy mají 21 mm.

Vytvoření výtisku se správným měřítkem nefungovalo správně se SketchUp na mém počítači, takže jsem jej uložil jako PDF, vytvořil výtisk se 100%, provedl nějaké měření a nakonec znovu vytiskl se správným faktorem měřítka.

Pro první pokus jsem vytvářel pouze umění pro dvě nohy. Za tímto účelem jsem naskládal dvě desky, nalepil (na papír na zeď) výtisk a vystřihl díly pomocí modelové pásové pily.

Použitý materiál: buková překližka 6 mm (1/2 )

Poté jsem provedl několik experimentů, které jsem nedokumentoval, a provedl několik optimalizací. Jak vidíte, holenní kost je trochu nadměrná, stejně jako stehenní kost.

Pro upevnění servorohů přes stehenní kost je třeba odříznout 2 mm materiálu. To lze provést různými způsoby. S routerem nebo s vrtačkou Forstner. Forstner měl průměr jen 200 mm, takže jsem musel udělat nějakou poválečnou ruku sekáčem.

Krok 2: Optimalizace stehenní kosti a tibie

Optimalizace stehenní kosti a tibie
Optimalizace stehenní kosti a tibie
Optimalizace stehenní kosti a tibie
Optimalizace stehenní kosti a tibie
Optimalizace stehenní kosti a tibie
Optimalizace stehenní kosti a tibie
Optimalizace stehenní kosti a tibie
Optimalizace stehenní kosti a tibie

Trochu jsem změnil design.

1.) Tibia nyní mnohem lépe nasazuje servo, které používám.

2.) Stehenní kost je nyní o něco menší (asi 3 palce od osy k ose) a zapadá do rohů serva (průměr 21 mm).

Použil jsem 6 desek ze 6 mm překližkového dřeva a slepil je oboustrannou páskou. Pokud to není dostatečně silné, můžete vyvrtat otvor přes všechny desky a pomocí šroubu je upevnit dohromady. poté se pásovou pilou najednou vyříznou díly. Pokud jste dost odolní, můžete také použít skládačku:-)

Krok 3: Navrhování servopohonu

Navrhování servopohonu
Navrhování servopohonu
Navrhování servopohonu
Navrhování servopohonu
Navrhování servopohonu
Navrhování servopohonu
Navrhování servopohonu
Navrhování servopohonu

Nyní je čas navrhnout servopohon. Toto je silně navrženo v souvislosti s použitým servem, které jsem použil. Všechny díly jsou vyrobeny z bukové překližky 6 mm, viz další krok.

Krok 4: Řezání a montáž servopohonů

Řezání a montáž servopohonů
Řezání a montáž servopohonů
Řezání a montáž servopohonů
Řezání a montáž servopohonů

Opět jsem na pásové pile nařezal šest dílů současně. Metoda je stejná jako dříve.

1.) Pomocí oboustranné pásky lepte desky k sobě.

2.) Šrouby pro větší stabilitu při řezání (zde není znázorněno).

Pak jsem použil nějaké modelové řemeslné lepidlo, abych je slepil, a dva šrouby SPAX (na fotce zatím nepoužité).

Ve srovnání s původním hexapodem ještě nepoužívám kuličková ložiska, místo toho používám pouze 3 mm šrouby, podložky a samojistící matice, abych později sestavil nohy s tělem/podvozkem.

Krok 5: Sestavení nohou a vyzkoušení

Image
Image
Sestavení nohou a vyzkoušení
Sestavení nohou a vyzkoušení
Sestavení nohou a zkouška
Sestavení nohou a zkouška

Na prvních dvou obrázcích vidíte první verzi nohy. Dále uvidíte srovnání starých a nových dílů a srovnání nových dílů (verze dvě) s původními (fotografie na pozadí).

Nakonec budete mít první pohybový test.

Krok 6: Konstrukce a montáž těla

Konstrukce a montáž těla
Konstrukce a montáž těla
Konstrukce a montáž těla
Konstrukce a montáž těla
Konstrukce a montáž těla
Konstrukce a montáž těla

Tělo, které jsem se pokusil zrekonstruovat z fotografií. Jako referenci jsem použil servo houkačku, kterou jsem předpokládal s průměrem 1 ". Přední strana má tedy šířku 4,5" a střední 6,5 ". Pro délku jsem předpokládal 7". Později jsem koupil originální bodykit a porovnal ho. Dostával jsem se velmi blízko originálu. Nakonec jsem vytvořil třetí verzi, což je kopie originálu 1: 1.

První bodykit, který jsem vyrobil ze 6 mm překližkového dřeva, zde vidíte druhou verzi ze 4 mm překližkového dřeva, u které jsem zjistil, že je dostatečně pevná a tuhá. Na rozdíl od původní sady jsem montoval servo roh nahoru, resp. skrz materiál (můžete to vidět i na stehenní kosti). Důvodem je, že nemám náladu kupovat drahé hliníkové rohy, místo toho chci použít již dodané plastové rohy. Dalším důvodem je, že se dostávám blíže k servu, takže čiré síly jsou menší. Díky tomu je připojení stabilnější.

Mimochodem, někdy je dobré mít na palubě Ganeshe. Díky mému příteli Tejasovi:-)

Krok 7: První testy elektroniky

Image
Image
Tibia a Coxa EV3
Tibia a Coxa EV3

Všechna umění jsou nyní spojena dohromady. Dobře, vím, že to nevypadá moc krásně, ale ve skutečnosti hodně experimentuji. Ve videu můžete vidět hraní několika jednoduchých předdefinovaných sekvencí, ve skutečnosti není implementována žádná inverzní kinematika. Předdefinovaná chůze nefunguje správně, protože je navržena pro 2 DoF.

V tomto příkladu používám servo řadič SSC-32U od Lynxmotion, najdete ho zde:

Před několika dny jsem také používal jiný PWM řadič (Adafruit 16kanálový PWM řadič, https://www.adafruit.com/product/815), ale SCC má ve skutečnosti několik pěkných funkcí, jako je zpomalení serva.

Takže, to je teď vše. Dále musím zjistit, jak funguje inverzní kinematika (IK), možná naprogramuji jednoduchou chůzi, jako je předdefinovaná v řadiči SSC. Už jsem našel příklad připraveného k použití zde https://github.com/KurtE/Arduino_Phoenix_Parts, ale ještě to nemám spuštěné. Nevím proč, ale pracuji na tom.

Zde je tedy krátký seznam úkolů.

1.) Naprogramujte jednoduchou chůzi, jako je vestavba v SSC.

2.) Naprogramujte třídu/obal ovladače PS3 pro Arduino Phoenix.

3.) Získejte kód z KurtE spuštěný nebo napište svůj vlastní kód.

Serva, která používám, jsem našel na Amazonu https://www.amazon.de/dp/B01N68G6UH/ref=pe_3044161_189395811_TE_dp_1. Cena je docela dobrá, ale kvalita by mohla být mnohem lepší.

Krok 8: První jednoduchý test chůze

Jak jsem zmínil v posledním kroku, pokusil jsem se naprogramovat vlastní sekvenci chůze. Je to velmi jednoduchá mechanická hračka a není optimalizována pro tělo, které zde používám. Jednoduché rovné tělo by bylo mnohem lepší.

Přejeme vám tedy hodně zábavy. Teď se musím naučit IK;-)

Poznámky: Když budete pečlivě sledovat nohy, uvidíte, že některá serva se chovají divně. Mám na mysli to, že se nepohybují vždy hladce, možná je budu muset nahradit jinými servy.

Krok 9: Portování ovladače PS3

Dnes ráno jsem pracoval na psaní obálky pro kód Phoenix. Trvalo mi to asi 2 hodiny, než jsem to udělal. kód není nakonec odladěn a do konzoly jsem přidal nějaké další ladění. Zatím to funguje:-)

Ale mimochodem, když jsem běžel kód Phoenix, vypadá to, že všechna serva běží obráceně (v opačném směru).

Pokud si to chcete vyzkoušet sami, potřebujete jako základ kód od KurtE https://github.com/KurtE/Arduino_Phoenix_Parts. Při instalaci kódu postupujte podle pokynů. Zkopírujte složku Phoenix_Input_PS do složky knihovny Arduino (obvykle podsložka složky skic) a složku Phoenix_PS3_SSC32 do složky skici.

Informace: Pokud nemáte zkušenosti s Arduino a nástroji a máte nějaké potíže, kontaktujte komunitu Arduino (www.arduino.cc). Pokud máte potíže s kódem Phoenix od KurtE, kontaktujte ho. Dík.

Varování: Porozumění kódu není podle mého názoru nic pro začátečníky, takže musíte být velmi dobře obeznámeni s C/C ++, programováním a algoritmem. Kód má také mnoho podmíněně kompilovaných kódů, řízených #defines, což ztěžuje jeho čtení a porozumění.

Hardwarelist:

  • Arduino Mega 2560
  • USB hostitelský štít (pro Arduino)
  • Ovladač PS3
  • Servo řadič LynxMotion SSC-32U
  • Baterie 6 V (přečtěte si prosím požadavky na všech svých HW, jinak ji můžete poškodit)
  • Arduino IDE
  • Některé kabely USB, přepínače a další malé části podle potřeby.

Pokud máte rádi ovladač PS2, najdete na internetu spoustu informací o tom, jak se připojit k Arduinu.

Buďte tedy prosím trpěliví. Tento krok aktualizuji, až software bude správně fungovat.

Krok 10: První test IK

Image
Image

Našel jsem jiný port kódu Phoenix, který běží mnohem lépe (https://github.com/davidhend/Hexapod), možná mám problém s konfigurací jiného kódu. Zdá se, že kód je trochu buggy a chody nevypadají příliš hladce, ale pro mě je to velký krok vpřed.

Vezměte prosím na vědomí, že kód je ve skutečnosti experimentální. Musím hodně vyčistit a opravit a další dny zveřejním aktualizaci. Port PS3 je založen na již publikovaném portu PS3 a soubory PS2 a XBee jsem zahodil.

Krok 11: Druhý test IK

Řešení bylo tak snadné. Musel jsem opravit některé konfigurační hodnoty a převrátit všechny úhly serva. Teď to funguje:-)

Krok 12: Tibia a Coxa EV3

Tibia a Coxa EV3
Tibia a Coxa EV3
Tibia a Coxa EV3
Tibia a Coxa EV3

Nemohl jsem odolat, a tak jsem vytvořil nové tibie a coxa (servo držáky). Toto je nyní třetí verze, kterou jsem vytvořil. Nové mají více kulatý tvar a mají více organický/bionický vzhled.

Skutečný stav tedy je. Hexapod funguje, ale stále má nějaké problémy s několika věcmi.

1.) Nezjistili jsme, proč má BT zpoždění 2..3 sekundy.

2.) Kvalita serva je špatná.

Věci ke splnění:

* Je třeba zlepšit zapojení serv.

* Potřebujete dobrý držák baterie.

* Musíte najít způsob, jak namontovat elektroniku.

* Překalibrujte serva.

* Přidání senzorů a monitoru napětí pro baterii.

Krok 13: Femur s hladkým tvarem

Femur s hladkým tvarem
Femur s hladkým tvarem
Femur s hladkým tvarem
Femur s hladkým tvarem
Femur s hladkým tvarem
Femur s hladkým tvarem
Femur s hladkým tvarem
Femur s hladkým tvarem

Před několika dny jsem již vytvořil novou stehenní kost, protože jsem nebyl plně spokojen s předchozím. Na prvním obrázku uvidíte rozdíly. Staré měly na koncích průměr 21 mm, nové měly průměr 1 palec. Jak bylo vidět na následujících třech obrázcích, pomocí své frézky jsem jednoduchým frézovacím nástrojem vytvořil dřezy do stehenní kosti.

Před vniknutím dřezu do stehenní kosti má smysl vyvrtat všechny otvory, jinak to může být obtížné. Servo roh velmi dobře sedí, další krok, který zde není zobrazen, dává hranám kulatý tvar. K tomu jsem použil frézu s poloměrem 3 mm.

Na posledním obrázku uvidíte srovnání starého a nového. Nevím, co si myslíte, ale ten nový se mi líbí mnohem víc.

Krok 14: Poslední kroky

Image
Image
Závěrečné kroky
Závěrečné kroky
Závěrečné kroky
Závěrečné kroky
Závěrečné kroky
Závěrečné kroky

Tento tutoriál nyní dokončím, jinak se z něj stane nekonečný příběh:-).

Ve videu uvidíte Phoenixův kód KurtE spuštěný s některými z mých úprav. Robot se nepohybuje dokonale, omlouváme se, ale levné servo má špatnou kvalitu. Objednal jsem si nějaká další serva, právě jsem otestoval dvě z nich s dobrými výsledky a stále čekám na dodání. Omlouvám se, ale nemohu vám ukázat, jak robot pracuje s novými servy.

Pohled zezadu: proudový senzor 20 A, vlevo od 10 k potu. Když robot kráčí, snadno spotřebuje 5 ampérů. Vpravo od 10 k potu uvidíte OLED 128 x 64 pixel zobrazující některé informace o stavu.

Pohled zepředu: Jednoduchý ultrazvukový senzor HC-SR04, který ještě není integrován v SW.

Pohled z pravé strany: akcelerátor a žirafa MPU6050 (6-osý).

Pohled z levé strany: Piezo reproduktor.

Mechanická konstrukce je nyní víceméně hotová, kromě serv. Další úkoly tedy budou integrovat některé senzory do SW. Za tímto účelem jsem vytvořil účet GitHub pomocí SW, který používám a který je založen na snímku Phoenix SW společnosti KurtE.

OLED:

Můj GitHub:

Doporučuje: