Obsah:

Bioinspired Robotic Snake: 16 Steps (with Pictures)
Bioinspired Robotic Snake: 16 Steps (with Pictures)

Video: Bioinspired Robotic Snake: 16 Steps (with Pictures)

Video: Bioinspired Robotic Snake: 16 Steps (with Pictures)
Video: Robot Snake - Computerphile 2024, Červenec
Anonim
Image
Image

Inspiroval jsem se k zahájení tohoto projektu poté, co jsem viděl výzkumná videa robotických hadů a robotických úhořů. Toto je můj první pokus a stavění robotů pomocí serpentinové lokomoce, ale nebude to můj poslední! Přihlaste se k odběru na YouTube, pokud chcete vidět budoucí vývoj.

Níže nastiňuji konstrukci 2 různých hadů spolu se soubory pro 3D tisk a diskusi o kódu a algoritmech pro dosažení pohybu podobného hadovi. Pokud se chcete dále učit více, doporučuji si po přečtení tohoto návodu přečíst odkazy v sekci odkazy v dolní části stránky.

Tento instruktáž je technicky 2 v 1, v tom, že vysvětlím, jak vyrobit 2 různé verze robotického hada. Pokud vás zajímá pouze stavba jednoho z hadů, ignorujte pokyny pro druhého hada. Tito 2 různí hadi budou odsud odkazováni na používání následujících frází zaměnitelně:

  1. Jednoosý had, 1D had nebo žlutý a černý had
  2. Dvouosý had, 2D had nebo bílý had

Samozřejmě můžete hady vytisknout v libovolném barevném vláknu, které chcete. Jediným rozdílem mezi těmito dvěma hady je to, že u 2D hada je každý motor otočen o 90 stupňů vzhledem k předchozímu, zatímco u 1D hada jsou všechny motory vyrovnány v jedné ose.

Poslední předmluva je, že zatímco každý z mých hadů má pouze 10 serva, je možné vyrobit hady s více či méně servy. Jedna věc, kterou je třeba zvážit, je, že s méně servy dosáhnete méně úspěšného pohybu a s více servy budete pravděpodobně úspěšnější s hadovitým pohybem, ale budete muset vzít v úvahu náklady, aktuální čerpání (viz pozdější poznámky) a počet pinů k dispozici na Arduinu. Nebojte se změnit délku hada, mějte však na paměti, že budete muset také změnit kód, který tuto změnu zohlední.

Krok 1: Součásti

Toto je seznam dílů pro jednoho hada, pokud chcete udělat oba hady, budete muset zdvojnásobit objem komponent.

  • 10 serva MG996R*
  • 1,75 mm vlákno pro 3D tisk
  • 10 kuličkových ložisek, číslo dílu 608 (zachránil jsem své z vnějšího okraje vrtulníků Jitterspin)
  • 20 malých kuličkových ložisek, číslo dílu r188, pro kola ** (moje jsem zachránil z vnitřní části vrtulníků Jitterspin)
  • 40 šroubů s hlavou Philips 6-32 x 1/2 "(nebo podobných)
  • 8 delších šroubů (číslo dílu nemám, ale mají stejný průměr jako šrouby výše)
  • Nejméně 20 kusů 4palcových zipů (záleží na vás, kolik jich chcete použít)
  • 5 m každý z červeného a černého drátu 20 nebo silnějšího ***
  • Standardní drát o průměru 22
  • 30 kolíkových zástrček (rozdělených do 10 šarží po 3)
  • Arduino Nano
  • 3D tištěné díly (viz další část)
  • Nějaká forma napájení (pro více informací viz část: „Napájení hada“), osobně jsem použil upravený zdroj ATX
  • Elektrolytický kondenzátor 1000uF 25V
  • Smršťovací bužírka různých velikostí, pájka, lepidlo a další různé nástroje

*můžete použít jiné typy, ale budete muset přepracovat 3D soubory tak, aby odpovídaly vašim servům. Pokud také zkusíte použít menší serva, jako je sg90, možná zjistíte, že nejsou dostatečně silná (toto jsem netestoval a bude na vás, abyste experimentovali).

** na kola nemusíte používat malá kuličková ložiska, jen jsem se hodně povaloval. Alternativně můžete použít kola LEGO nebo jiná kola pro hračky.

*** Tento vodič může procházet až 10 ampéry, příliš tenký a proud jej roztaví. Další informace najdete na této stránce.

Krok 2: Součásti 3D tisku

Shromáždění hadů
Shromáždění hadů

Pokud vyrábíte 1D hada, vytiskněte tyto kousky.

Pokud vyrábíte 2D hada, vytiskněte si tyto kousky.

Důležitá poznámka: Váha může být špatná! Své komponenty navrhuji ve Fusion 360 (v jednotkách mm), návrh jsem exportoval jako soubor.stl do softwaru MakerBot a poté vytiskl na tiskárně Qidi Tech (klonová verze MakerBot Replicator 2X). Někde v tomto pracovním postupu je chyba a všechny mé výtisky jsou příliš malé. Nepodařilo se mi identifikovat umístění chyby, ale mám dočasnou opravu změny velikosti každého tisku na 106% v softwaru MakerBot, což problém vyřeší.

Vzhledem k tomu mějte na paměti, že pokud vytisknete výše uvedené soubory, mohou být nesprávně upraveny. Před tiskem všech doporučuji vytisknout pouze jeden kus a zkontrolovat, zda se hodí k vašemu servu MG996R.

Pokud vytisknete některý ze souborů, dejte mi prosím vědět, jaký je výsledek: pokud je tisk příliš malý, správný, příliš velký a o kolik procent. Společnou spoluprací jako komunity můžeme odstraňovat problémy s umístěním chyby pomocí různých 3D tiskáren a kráječů.stl. Jakmile bude problém vyřešen, aktualizuji tuto sekci a výše uvedené odkazy.

Krok 3: Sestavení hadů

Shromáždění hadů
Shromáždění hadů
Shromáždění hadů
Shromáždění hadů
Shromáždění hadů
Shromáždění hadů

Proces montáže je u obou verzí hada většinou stejný. Jediným rozdílem je, že v 2D hadi je každý motor otočen o 90 stupňů vzhledem k předchozímu, zatímco v 1D hadi jsou všechny motory vyrovnány v jedné ose.

Začněte odšroubováním serva, uložte šrouby a odstraňte horní a spodní části černého plastového rámu a dávejte pozor, abyste neztratili žádné převody! Posuňte servo do 3D tištěného rámečku, orientované jako na obrázcích výše. Vyměňte horní část skříně serva a přišroubujte ji na místo čtyřmi šrouby 6-32 1/2 . Spodní část rámu servomotoru uložte (v případě, že jej budete chtít znovu použít v pozdějších projektech) a nahraďte jej 3D tištěné pouzdro, jediným rozdílem je přídavný knoflík pro sklouznutí kuličkového ložiska. Zašroubujte servo zpět k sobě, opakujte 10krát.

DŮLEŽITÉ: Než budete pokračovat, musíte nahrát kód do Arduina a přesunout každé servo na 90 stupňů. Pokud tak neučiníte, může dojít k porušení jednoho nebo více serv a/nebo 3D tištěných rámečků. Pokud si nejste jisti, jak přesunout servo o 90 stupňů, podívejte se na tuto stránku. V zásadě připojte červený vodič serva k 5V na Arduinu, hnědý vodič k GND a žlutý vodič k digitálnímu pinu 9, poté nahrajte kód do odkazu.

Nyní, když je každé servo v 90 stupních, pokračujte:

Připojte 10 segmentů zasunutím 3D tištěného knoflíku z jednoho pouzdra serva do otvoru druhého segmentového dílu a poté s trochou síly zatlačte osu serva do jeho otvoru (jasnost viz obrázky výše a video). Pokud vyrábíte 1D hada, všechny segmenty by měly být zarovnány, pokud děláte 2D hada, každý segment by měl být otočen o 90 stupňů k předchozímu segmentu. Všimněte si, že rám ocasu a hlavy je pouze poloviční než délka ostatních segmentů, spojte je, ale nekomentujte kousky ve tvaru pyramidy, dokud nedokončíme zapojení.

Připojte servo rameno ve tvaru písmene x a našroubujte ho na místo. Nasuňte kuličkové ložisko přes 3D tištěný knoflík, bude to vyžadovat jemné stlačení 2 půlkruhových sloupků k sobě. V závislosti na tom, jakou značku vlákna použijete a hustotě výplně, mohou být sloupky příliš křehké a prasklé, nemyslím si, že to tak bude, ale přesto nepoužívejte nadměrnou sílu. Osobně jsem použil PLA filament s 10% výplní. Jakmile je kuličkové ložisko zapnuté, mělo by zůstat zajištěno převisy na knoflíku.

Krok 4: Okruh

Obvod
Obvod
Obvod
Obvod
Obvod
Obvod

Obvod je u obou robotických hadů stejný. Během procesu zapojení se ujistěte, že je dostatek prostoru pro zapojení, aby se každý segment mohl zcela otočit, zejména u 2D hada.

Nahoře je schéma zapojení pro zapojení pouze se 2 servy. Pokusil jsem se nakreslit obvod s 10 servy, ale bylo to příliš přeplněné. Jediným rozdílem mezi tímto obrazem a skutečným životem je, že potřebujete paralelně zapojit dalších 8 serva a připojit signální vodiče PWM k pinům na Arduino Nano.

Při zapojování napájecích vedení jsem použil jeden kus 18 měřicího drátu (dostatečně tlustého, aby vydržel 10amp) jako hlavní 5V vedení vedené po délce hada. Pomocí odizolovače jsem v 10 pravidelných intervalech odstranil malou část izolátoru a z každého z těchto intervalů připájel krátký kus drátu skupinu 3 kolíkových konektorů. Opakujte to podruhé pro černý vodič GND 18 gauge a druhý kolíkový konektor. Nakonec připájejte delší vodič na 3. kolíkový konektor, tento pin bude přenášet signál PWM na servo z Arduino Nano v hlavě hada (vodič musí být dostatečně dlouhý, aby dosáhl, i když se segmenty ohýbají). Podle potřeby připojte smršťovací trubičku. Připojte 3 kolíkové zástrčky kolíků ke 3 zástrčkovým vývodům konektoru servo vodičů. Opakujte 10krát pro každé z 10 serv. Nakonec toho dosáhne paralelním zapojením serva a zapojením signálních vodičů PWM do Nano. Důvodem hlavičkových kolíků muž/žena bylo to, že můžete snadno rozdělit segmenty a vyměnit serva, pokud se rozbijí, aniž byste vše rozpojili.

Pájecí kabely GND a 5V připájejte na 3x7 otvorovou desku v zadní části pomocí kondenzátoru a šroubových svorek. Účelem kondenzátoru je odstranit všechny špičky odběru proudu způsobené spuštěním serva, které mohou resetovat Arduino Nano (pokud nemáte kondenzátor, pravděpodobně se bez něj dostanete, ale je lepší být v bezpečí). Pamatujte, že dlouhý hrot elektrolytických kondenzátorů je třeba připojit k vedení 5V a kratší kolík k vedení GND. Pájejte vodič GND na pin GND Nano a vodič 5V na pin 5V. Všimněte si, že pokud používáte jiné napětí, (viz následující část), řekněme Lipo baterie s 7,4 V, pak připojte červený vodič ke kolíku Vin, NE k 5 V pinu, jinak dojde ke zničení pinu.

Připájejte 10 signálních vodičů PWM k pinům na Arduino Nano. Zapojil jsem svůj v následujícím pořadí, můžete se rozhodnout zapojit ten svůj jinak, ale pamatujte si, že pak budete muset změnit řádky servo.attach () v kódu. Pokud si nejste jisti, o čem mluvím, připojte jej stejným způsobem jako já a nebudete mít problémy. Pořadí od serva na ocase hada k hlavě hada jsem zapojil oba své hady v následujícím pořadí. Připojení signálních kolíků k: A0, A1, A2, A3, A4, A5, D4, D3, D8, D7.

K čištění kabeláže použijte zipy. Před pokračováním zkontrolujte, zda se všechny segmenty mohou pohybovat s dostatečným prostorem pro pohyb vodičů, aniž by byly odtrženy od sebe. Nyní, když je kabeláž hotová, můžeme našroubovat víčka ve tvaru hlavy a ocasu ve tvaru pyramidy. Všimněte si, že ocas má otvor, ze kterého může vycházet lanko, a hlava má otvor pro programovací kabel Arduino.

Krok 5: Napájení hada

Napájení hada
Napájení hada
Napájení hada
Napájení hada
Napájení hada
Napájení hada

Protože jsou serva zapojena paralelně, mají všechna stejná napětí, ale proud je třeba sečíst. Při pohledu na datový list serva MG996r mohou při běhu čerpat až 900 mA (za předpokladu, že nedochází k zablokování). Celkový odběr proudu, pokud se všech 10 serva pohybuje současně, je tedy 0,9A*10 = 9A. Jako takový normální 5v, 2A adaptér do zásuvky nebude fungovat. Rozhodl jsem se upravit napájecí zdroj ATX, schopný 5v při 20A. Nebudu vysvětlovat, jak to udělat, protože už to bylo hodně diskutováno na Instructables a YouTube. Rychlé vyhledávání online vám ukáže, jak upravit jeden z těchto napájecích zdrojů.

Za předpokladu, že jste změnili napájecí zdroj, jde jednoduše o připojení dlouhého popruhu mezi napájecím zdrojem a šroubovými svorkami na hadovi.

Další možností je použít integrovanou lipo baterii. Nezkoušel jsem to, takže bude na vás, abyste navrhli držák pro baterie a zapojili je. Pamatujte na provozní napětí, odběr proudu serv a Arduina (nepájejte nic jiného než 5 V na 5v pin na Arduinu, přejděte na pin Vin, pokud máte vyšší napětí).

Krok 6: Otestujte, zda vše funguje

Než budete pokračovat, vyzkoušejte, zda vše funguje. Nahrajte tento kód. Váš had by měl pohybovat každým servem jednotlivě mezi 0-180 a poté dokončit položením v přímce. Pokud tomu tak není, je něco špatně, s největší pravděpodobností je nesprávné zapojení nebo serva nebyla původně vystředěna na 90 stupňů, jak je uvedeno v části „Sestava hadů“.

Krok 7: Kód

Pro hada v současné době neexistuje žádný dálkový ovladač, veškerý pohyb je předprogramován a vy si můžete vybrat, co chcete. Budu vyvíjet dálkové ovládání ve verzi 2, ale pokud ho chcete ovládat na dálku, doporučil bych nahlédnout do dalších návodů na Instructables a přizpůsobit hada tak, aby byl kompatibilní s bluetooth.

Pokud vyrábíte 1D hada, nahrajte tento kód.

Pokud vyrábíte 2D hada, nahrajte tento kód.

Doporučuji vám hrát si s kódem, provádět vlastní změny a vytvářet nové algoritmy. V následujících několika částech najdete podrobné vysvětlení každého typu pohybu a toho, jak kód pro něj funguje.

Krok 8: Vs Vs Wheels

Váhy Vs Kola
Váhy Vs Kola
Váhy Vs Kola
Váhy Vs Kola
Váhy Vs Kola
Váhy Vs Kola
Váhy Vs Kola
Váhy Vs Kola

Jedním z hlavních způsobů, jak se hadi mohou pohybovat vpřed, je tvar jejich vah. Váhy umožňují snadnější pohyb vpřed. Pro další vysvětlení sledujte toto video od 3:04 a uvidíte, jak váhy pomáhají hadovi pohybovat se vpřed. Pohled na 3:14 ve stejném videu ukazuje účinek, když jsou hadi v rukávu a odstraňují tření vah. Jak je vidět na mém videu na YouTube, když se robotický 1D had pokouší plazit po trávě bez šupin, nepohybuje se dopředu ani dozadu, protože síly se sčítají na čistou nulu. Jako takové musíme do podbřišku robota přidat některé umělé váhy.

Na Harvardově univerzitě byl proveden výzkum obnovy lokomoce pomocí vah a ukázán v tomto videu. Nebyl jsem schopen vymyslet podobnou metodu, jak přesouvat váhy nahoru a dolů na svém robotu, a místo toho jsem se spokojil s připevněním pasivních 3D tištěných vah na podbřišek.

Bohužel se to ukázalo jako neúčinné (viz v mém videu na YouTube v 3:38), protože váhy stále prolétávaly po povrchu koberce, místo aby se zachytávaly na vláknech a zvyšovaly tření.

Pokud chcete experimentovat s měřítky, které jsem vytvořil, můžete soubory vytisknout 3D z mého GitHubu. Pokud si úspěšně vytvoříte vlastní, dejte mi vědět v níže uvedených komentářích!

Použil jsem jiný přístup a zkusil jsem použít kola vyrobená z kuličkových ložisek r188 s tepelně smršťovací trubkou na vnější straně jako „pneumatiky“. 3D plastové nápravy kol můžete vytisknout ze souborů.stl na mém GitHubu. Přestože kola nejsou biologicky přesná, jsou analogická k měřítkům v tom, že otáčení vpřed je snadné, ale pohyb ze strany na stranu je výrazně těžší. Úspěšný výsledek kol můžete vidět v mém videu na YouTube.

Krok 9: Klouzavý pohyb (jednoosý had)

První cena v soutěži Make it Move

Doporučuje: