Obsah:

Walking Strandbeest, Java/Python a aplikace ovládané: 4 kroky (s obrázky)
Walking Strandbeest, Java/Python a aplikace ovládané: 4 kroky (s obrázky)

Video: Walking Strandbeest, Java/Python a aplikace ovládané: 4 kroky (s obrázky)

Video: Walking Strandbeest, Java/Python a aplikace ovládané: 4 kroky (s obrázky)
Video: TrotBot, Klann, Strandbeest, & Strider Linkages in Motion 2024, Červenec
Anonim

Podle arrowlikeSledovat více od autora:

Experimentální studie jednoduchého harmonického pohybu
Experimentální studie jednoduchého harmonického pohybu
Experimentální studie jednoduchého harmonického pohybu
Experimentální studie jednoduchého harmonického pohybu

Tato stavebnice Strandbeest je dílem pro kutily, které vychází z knihy Strandbeest, kterou vynalezl Theo Jansen. Ohromen geniálním mechanickým designem, chci jej vybavit plnou manévrovatelností a dále počítačovou inteligencí. V tomto pokynu pracujeme na první části, manévrovatelnosti. Pokrýváme také mechanickou strukturu počítače velikosti kreditní karty, abychom si mohli hrát s počítačovým viděním a zpracováním AI. Aby se zjednodušily stavební práce a úspora, nepoužil jsem arduino ani podobný programovatelný počítač, místo toho jsem postavil hardwarový ovladač bluetooth. Tento ovladač, pracující jako terminál interagující s robotickým hardwarem, je řízen výkonnějším systémem, jako je aplikace pro telefon s Androidem nebo RaspberryPi atd. Ovládání může být buď ovládání uživatelského rozhraní mobilního telefonu, nebo programovatelné ovládání v jazyce python nebo Java. Jedna SDK pro každý programovací jazyk je open-source poskytována v

Vzhledem k tomu, že uživatelská příručka mini-Strandbeest je při vysvětlování stavebních kroků poměrně jasná, v tomto návodu se zaměříme na informace, které nejsou v uživatelské příručce obvykle obsaženy, a na elektrické/elektronické části.

Pokud potřebujeme intuitivnější představu o mechanické montáži této sady, je k dispozici několik dobrých videí na téma montáže, například

Zásoby

Pokud není započítána doba čekání na 3D tisk, měla by stavba mechanické části a veškeré elektrické připojení tohoto Strandbeest trvat méně než 1 hodinu. Vyžaduje následující části:

(1) 1x standardní sada Strandbeest (https://webshop.strandbeest.com/ordis-parvus)

(2) 2x stejnosměrný motor s převodovkou (https://www.amazon.com/Greartisan-50RPM-Torque-Re…)

(3) 1x ovladač Bluetooth (https://ebay.us/Ex61kC?cmpnId=5338273189)

(4) 1x baterie LiPo (3,7 V, kapacita dle vašeho výběru v mAh)

(5) 12x šrouby do dřeva M2x5,6 mm

(6) Uhlíková nebo bambusová tyč o průměru 2 mm

3D tisk následujících částí:

(1) 1x hlavní tělo robotiky

(Soubor návrhu 3D tisku s ovladačem bluetooth pouze ke stažení)

(Soubor návrhu pro 3D tisk s dalším stažením OrangePi Nano)

(2) 2x příruba hnacího hřídele (stažení souboru návrhu pro 3D tisk)

(3) 2x svítidlo napájecího systému (stažení souboru návrhu pro 3D tisk)

Ostatní:

Mobilní telefon Android. Přejděte do obchodu Google Play, vyhledejte M2ROBOTS a nainstalujte si ovládací aplikaci.

V případě, že je přístup do obchodu Google Playstore obtížný, navštivte moji osobní domovskou stránku, kde najdete alternativní způsob stahování aplikace

Krok 1: Organizace dílů

Organizace dílů
Organizace dílů
Organizace dílů
Organizace dílů
Organizace dílů
Organizace dílů
Organizace dílů
Organizace dílů

V tomto kroku uspořádáme všechny díly, které mají být sestaveny. Obr. 1. ukazuje všechny rozbalené plastové díly, které používáme ke stavbě modelu Strandbeest. Jsou vyráběny vstřikováním, které je velmi účinné ve srovnání s jinými způsoby výroby obrábění, jako je 3D tisk nebo frézování. Proto chceme využít co největší výhody sériově vyráběného produktu a přizpůsobit pouze nejmenší množství dílů.

Jak je znázorněno na obr. 2, každý kus plastové desky má označenou abecedu, jednotlivé části nemají označení. Jakmile jsou rozebrány, již není označování. Abychom tento problém vyřešili, můžeme části stejného typu umístit do různých polí nebo jednoduše označit více oblastí na kus papíru a do jedné oblasti vložit jeden druh dílů, viz obr.3.

Chcete -li odříznout plastovou část z větší montážní plastové desky, nůžky a nůž nemusí být tak účinné a bezpečné jako kleště zobrazené na obr.4 a 5.

Všechno je zde vyrobeno z plastu, kromě materiálu prstů na noze je guma, viz obr.6. Můžeme krájet podle předem připravených řezů. Měkká povaha gumového materiálu poskytuje lepší úchopové vlastnosti strandbeest. To platí zejména při stoupání na svah. V dalších tématech můžeme vyzkoušet jeho schopnost stoupat pod různým úhlem sklonu, s gumovými prsty i bez nich. Když nedojde k prokluzu, říká se tomu statické tření. Jakmile ztratí přilnavost, stane se kinetickým třením. Koeficient tření závisí na použitých materiálech, proto máme gumové špičky. Jak navrhnout experiment, zvednout ruku a promluvit.

Poslední obrázek obsahuje „ECU“, „Power train“a podvozek tohoto modelu Strandbeest.

Krok 2: Body, které stojí za pozornost během mechanické montáže

Body, které stojí za pozornost během mechanické montáže
Body, které stojí za pozornost během mechanické montáže
Body, které stojí za pozornost během mechanické montáže
Body, které stojí za pozornost během mechanické montáže
Body, které stojí za pozornost během mechanické montáže
Body, které stojí za pozornost během mechanické montáže

Mini-Strandbeest má poměrně dobrou uživatelskou příručku. Postupovat podle příručky a dokončit montáž by měla být snadná práce. Přeskočím tento obsah a upozorním na několik zajímavých bodů hodných naší pozornosti.

Na obr. 1 je jedna strana štěrbiny držící gumové špičky 90 ° roh, zatímco druhá strana má sklon 45 °, který se oficiálně nazývá zkosení. Takový sklon vede gumovou špičku, aby se vešla do plastové patky. Zkuste nainstalovat prsty na noze zkosením, viz obr.2, poté zkuste druhou stranu. Rozdíl je velmi znatelný. Pravá strana obr. 3 je klikou v našem Stranbeestu. Je to velmi podobné klice v motoru, automobilovém motoru, motocyklovém motoru, všechny mají stejnou strukturu. V Strandbeest, když se klika otáčí, pohání nohy k pohybu. U motoru je to pohyb pístu pohánějícího kliku, aby se otočil. Takové 120stupňové oddělení v kruhu vede také k třífázovému motoru nebo generátoru, přičemž elektrická energie je od sebe vzdálena 120 stupňů, jak je znázorněno na obr.4. Jakmile máme všechny mechanické části pro levou a pravou boční část sestavené, začneme pracovat na částech, které přidáme do Strandbeest, viz obr. 5. Obr.6 je krok, kterým pomocí 3D tištěné svorky motoru připevníme motor k 3D tištěnému šasi. V tomto kroku jde o to, že před nastavením polohy motoru by neměl být utažen žádný šroub, takže boční povrch šasi je stejný jako povrch motoru. Jakmile jsme s vyrovnání spokojeni, můžeme utáhnout všechny šrouby. Přejděte na obr.7, pracujeme na instalaci přírubové spojky, která spojuje výstup motoru s klikou. Instalace strany motoru je obtížnější než připojení kliky, viz obr.8. Proto nejprve připojíme boční přírubu motoru. Jakmile je přírubová spojka pro oba motory nainstalována, jak je znázorněno na obr.9, použijeme dva kusy uhlíkových tyčí o průměru 2 mm k propojení podvozku a levé/pravé pochozí konstrukce. To se děje v OBR.10. Celkem k propojení těchto entit používáme 3 kusy uhlíkových tyčí. Ale v tomto kroku spojíme pouze dva z nich, protože potřebujeme otočit klikou a přizpůsobit spojení mezi přírubou a klikou. Pokud byly na místě 3 kusy uhlíkových tyčí, bude těžší upravit vzájemnou polohu a spojit je. Nakonec máme finální sestavený mechanický systém na obr. 11. Další krok, pojďme pracovat na elektronice.

Krok 3: Elektrické připojení

Elektrické připojení
Elektrické připojení
Elektrické připojení
Elektrické připojení
Elektrické připojení
Elektrické připojení

Všechny elektronické systémy potřebují napájení. Můžeme umístit 1článkovou baterii na nějaké vhodné místo, například pod desku s obvody na obrázku 1. Polarita napájecího zdroje je tak kritická, že si zaslouží vyhrazený obrázek k diskusi. Obr.2 ukazuje připojení baterie. Na desce řadiče je polarita označena „+“a „GND“, viz obr.3. Když se baterie vybije, použije se k nabíjení baterie kabel USB, viz obr.4. LED dioda indikující „probíhá dobíjení“se automaticky vypne, jakmile se baterie znovu nabije. Posledním krokem je připojení vývodů motoru ke konektorům motoru na desce řadiče. Existují 3 konektory motoru, označené na obr. 3 číslem 16. Na obr. 5 je levý motor připojen k levému konektoru označenému PWM12 a pravý motor je připojen ke střednímu konektoru. V současné době je otáčení tanku (diferenciálně poháněného vozidla) doleva pevně zakódováno jako snížení vstupního výkonu motoru připojeného k portu motoru PWM12. Motor připojený k portu PWM12 by proto měl pohánět levé nohy. Později převedu všechny funkce míchání tak, aby byly konfigurovatelné uživatelem. jako výměnou volby konektoru motoru nebo obrácením směru konektoru motoru můžeme vyřešit problém, jako je Strandbeest pohybující se dozadu, když dostal příkaz k pohybu vpřed, otáčení špatným směrem, pamatujte, že stejnosměrný motor mění směr otáčení, pokud je vstupní vodič připojen k řídicímu výkonu v obráceném pořadí.

Krok 4: Nastavení a provoz aplikace

Nastavení a provoz aplikace
Nastavení a provoz aplikace
Nastavení a provoz aplikace
Nastavení a provoz aplikace
Nastavení a provoz aplikace
Nastavení a provoz aplikace
Nastavení a provoz aplikace
Nastavení a provoz aplikace

Nejprve si stáhneme aplikaci pro Android z Obchodu Google Play, viz obr.1. Tato aplikace má spoustu dalších funkcí, které v tomto návodu nemůžeme pokrýt, zaměříme se pouze na přímo související témata pro Strandbeest.

Zapněte hardwarový ovladač bluetooth, zobrazí se v seznamu zařízení pro zjišťování. Dlouhým kliknutím se dostaneme k funkci bezdrátového stahování, abychom byli později „instruovaní“. Než klikneme a spustíme ovládání, provedeme nejprve některé konfigurace kliknutím na pravý horní roh „Nastavení“. Na obr.2 je skrytý pod ikonou …. Obr.3 ukazuje více kategorií nastavení. Tato nastavení, nakonfigurovaná v aplikaci, se uvádějí do činnosti třemi způsoby: 1) některá nastavení ovlivňují pouze provoz aplikace, například aritmetika, která umožňuje získat příkazy pro řízení výkonu každého motoru z vašeho příkazu řízení a plynu. Žijí v aplikaci. V některých pozdějších pokynech si ukážeme, jak je nahradíme našimi programy Python/Java. 2) určité nastavení je odesláno do hardwaru jako součást řídicího protokolu ve vzduchu, například přepínač mezi přímým ovládáním (servo otočí přesně podle přikázaného úhlu) a řízením po drátě (vestavěný funkční modul autonomního ovladače ovládá servo kanál podle uživatelského příkazu a aktuálního postoje) 3) některé nastavení bude odesláno do energeticky nezávislé paměti v hardwarovém řadiči. Hardware tedy bude tato nastavení dodržovat při každém zapnutí, aniž by byl konfigurován. Příkladem bude název vysílání bluetooth zařízení. Tento druh nastavení vyžaduje cyklus napájení, aby se projevil. První kategorií, do které se ponoříme, je „Obecná nastavení“na obr.4. „Funkce ovládání aplikace“na obr. 5 definuje, jakou roli tato aplikace hraje, ovladač hardwarového zařízení přes přímé bluetooth připojení; most přes intranet/internet pro ovládání telepresence; atd. Dále stránka „Typ HW“na Obr.6 informuje aplikaci, ve které pracujete s diferenciálním hnacím vozidlem, takže je třeba zvolit režim „nádrže“. K dispozici máme celkem 6 výstupů PWM. Pro Strandbeest musíme nakonfigurovat kanál 1 až 4 podle obr.7. Každý kanál PWM je provozován v jednom z následujících režimů: 1) normální servo: RC servo ovládané 1 až 2 ms signálem PWM 2) reverzace serva: ovladač obrátí uživatelské ovládání pro svůj výstup 3) pracovní cyklus stejnosměrného motoru: a DC motor nebo nějaké výkonové elektrické zařízení, lze provozovat v režimu pracovního cyklu, 0% je vypnuto, 100% je vždy zapnuto. 4) Obrácení pracovního cyklu stejnosměrného motoru: ovladač opět obrátí uživatelské ovládání svého výstupu Protože používáme stejnosměrný motor a staráme se o směr otáčení motoru podle hardwarového zapojení, zvolíme „pracovní cyklus stejnosměrného motoru“pro kanál 1 až 4, viz obr.8. Potřebujeme také sloučit 2 kanály PWM do 1 H-můstku, aby bylo možné obousměrné řízení. Tento krok je znázorněn na obr.9. V režimu „2 kanály PWM na 1 H-můstek“se kanály 1, 3 a 5 používají k ovládání obou přidružených kanálů. Zavádí potřebu přemapovat ovládání plynu, ovládání joysticku nahoru a dolů z výchozího kanálu 2 na kanál 3. Toho je dosaženo v nastavení na obr. 10. Jak je znázorněno na obr. 11, každý kanál je konfigurován tak, aby přijímal jeden libovolný vstupní zdroj.

Bingo, nyní jsme dokončili minimální požadovanou konfiguraci a můžeme se vrátit na stránku zobrazující viditelné zařízení bluetooth a připojit ho. Na obr.12 zkuste hrát na joysticku a můžeme se bavit s tímto Strandbeest. Zkuste vylézt na nějaký svah, zapamatujte si analýzu tření mezi typy materiálů a přečtěte si odhadovanou polohu letového ovladače, která je zobrazena v řádku označeném „RPY (deg)“, čtyři položky v této řadě jsou naklápění, stoupání, úhel stáčení odhadovaný gyroskopem a akcelerometrem na palubě; poslední položka je výstup kompasu s kompenzací náklonu.

Budoucí práce: v následujících instrukcích postupně pokryjeme jeho programovací rozhraní, vybereme si váš oblíbený jazyk Java nebo Python pro interakci se Strandbeest a již nebudeme číst status strandbeest z obrazovky mobilního telefonu. Začneme také programovat v linuxovém počítači typu RaspberryPi pro pokročilejší témata programování, viz poslední obrázek. Pokladna https://xiapeiqing.github.io/doc/kits/strandbeest/roboticKits_strandbeest/ pro mechanické díly pro 3D tisk a https://github.com/xiapeiqing/m2robots.git pro SDK a ukázkový kód, pokud chcete začít okamžitě. Dejte mi vědět, jaký je váš požadovaný programovací jazyk, pokud ne Java nebo Python, mohu přidat novou verzi SDK.

Bavte se hackováním a sledujte následující pokyny.

Doporučuje: