Obsah:
- Krok 1: Navrhování hardwaru
- Krok 2: Výběr správných motorů
- Krok 3: Stavba základny
- Krok 4: Sestavení hardwaru
- Krok 5: Elektronika
- Krok 6: Software a sériové rozhraní
- Krok 7: Závěr
Video: Q -Bot - Řešitel Rubikovy kostky s otevřeným zdrojovým kódem: 7 kroků (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:19
Představte si, že máte míchanou Rubikovu kostku, víte, že hádanka z 80. let, kterou má každý, ale nikdo neví, jak ji vyřešit, a chcete ji vrátit zpět do původního vzoru. Naštěstí v dnešní době je velmi snadné najít pokyny k řešení. Přejděte tedy online a podívejte se na video, kde se dozvíte, jak obrátit strany, aby vám přinášely radost. Když to uděláte několikrát, uvědomíte si, že něco chybí. Uvnitř díra, kterou nelze zaplnit. Inženýři/tvůrce/hackeři ve vás jednoduše nemohou být spokojeni s řešením něčeho tak úžasného tak jednoduchým způsobem. Nebylo by to mnohem poetičtější, kdybyste měli stroj, který za vás udělal veškeré řešení? Pokud byste postavili něco, čím by se všichni vaši přátelé divili? Mohu vám zaručit, že to nebude o moc lepší, než sledovat, jak váš výtvor dělá zázraky a řeší Rubikovu kostku. Pojďte se tedy se mnou vydat na úžasnou cestu budování Q-Bot, open source řešení Rubik's Cube Solver, které rozhodně nepřekoná žádné světové rekordy, ale bude vám přinášet hodiny radosti (poté, co si samozřejmě projdete všemi frustracemi) během procesu stavby).
Krok 1: Navrhování hardwaru
Kompletní řešič byl navržen s CAD v Catii. Tímto způsobem bylo možné najít a opravit většinu konstrukčních chyb před výrobou jakýchkoli fyzických komponent. Většina řešiče byla 3D vytištěna v PLA pomocí tiskárny prusa MK3. Kromě toho byl použit následující hardware:
- 8 kusů hliníkové tyče 8 mm (délka 10 cm)
- 8 lineárních kuličkových ložisek (LM8UU)
- něco pod 2 m rozvodového řemene GT2 6 mm + nějaké kladky
- 6 bipolárních krokových motorů NEMA 17
- 6 krokových ovladačů Polulu 4988
- Arudino Mega jako ovladač projektu
- napájení 12 V 3A
- převodník, který bezpečně napájí arduino
- nějaké šrouby a konektory
- nějaká překližka na základnu
Popis hardwaru
Tato část stručně popisuje, jak Q-Bot dokonce funguje a kde jsou použity výše uvedené komponenty. Níže vidíte vykreslení plně sestaveného CAD modelu.
Q-bot funguje tak, že má čtyři motory připojené přímo k Rubikově kostce pomocí 3D vytištěných chapadel. To znamená, že vlevo, vpravo, vpředu a vzadu lze přímo otáčet. Pokud je třeba otočit horní nebo spodní stranu, musí být otočena celá krychle, a proto se dva motory musí vzdalovat. To se provádí připevněním každého z uchopovacích motorů na saně poháněné dalším krokovým motorem a rozvodovým řemenem podél systému lineárních kolejnic. Systém kolejnic se skládá ze dvou 8 kuličkových ložisek, která jsou namontována do dutin v saních a celá sáně jezdí na dvou 8mm hliníkových hřídelích. Níže vidíte podsestavu jedné osy řešiče.
Osa x a osa y jsou v zásadě totožné, liší se pouze výškou upevňovacího bodu pásu, a to proto, aby při úplném sestavení nedocházelo ke kolizi mezi oběma pásy.
Krok 2: Výběr správných motorů
Výběr správných motorů je zde samozřejmě velmi důležitý. Hlavní část spočívá v tom, že musí být dostatečně silní, aby dokázali otočit Rubikovu kostku. Jediným problémem je, že žádný výrobce Rubikových kostek neposkytuje hodnocení točivého momentu. Takže jsem musel improvizovat a udělat si vlastní měření.
Obecně je točivý moment definován silou směřující kolmo na polohu bodu otáčení ve vzdálenosti r:
Pokud bych tedy mohl nějak změřit sílu působící na kostku, mohl bych vypočítat točivý moment. Což jsem přesně udělal. Upnul jsem svoji kostku na poličku způsobem, který umožňoval pohyb pouze jedné strany. Kolem kostky byl uvázán provázek a dole připevněn pytel. Teď už jen zbývalo pomalu zvyšovat váhu v pytli, dokud se kostka neotočila. Pro nedostatek přesných hmotností jsem použil brambory a poté je změřil. Není to nejvědečtější metoda, ale protože se nesnažím najít minimální točivý moment, je to dostačující.
Pro jistotu jsem provedl měření třikrát a vzal nejvyšší hodnotu. Výsledná hmotnost byla 0,52 kg. Nyní díky siru Isaacovi Newtonovi víme, že Síla se rovná hmotnostně krát zrychlení.
Zrychlení je v tomto případě gravitační zrychlení. Požadovaný točivý moment je tedy dán vztahem
Zapojení všech hodnot, včetně poloviny úhlopříčky Rubikovy kostky, nakonec odhalí požadovaný točivý moment.
Šel jsem s krokovými motory, které jsou schopné aplikovat až 0,4 Nm, což je pravděpodobně přehnané, ale chtěl jsem být v bezpečí.
Krok 3: Stavba základny
Základna se skládá z velmi jednoduché dřevěné krabice a je v ní umístěna veškerá potřebná elektronika. Je vybaven zástrčkou pro zapnutí a vypnutí stroje, LED diodou indikující, zda je zapnutá, portem USB B a zásuvkou pro připojení napájecího zdroje. Byl zkonstruován s použitím 15 mm překližky, několika šroubů a trochy lepidla.
Krok 4: Sestavení hardwaru
Nyní se všemi požadovanými částmi, včetně základny, byl Q-bot připraven k sestavení. Vlastní díly byly vytištěny 3D a upraveny podle potřeby. Na konci tohoto článku si můžete stáhnout všechny soubory CAD. Sestava obsahovala montáž všech 3D tištěných dílů na zakoupené díly, prodloužení kabelů motoru a přišroubování všech dílů k základně. Kromě toho jsem kolem motorových kabelů nasadil objímky, abych vypadal trochu úhledněji, a na jejich konce jsem přidal konektory JST.
Abych zdůraznil důležitost základny, kterou jsem postavil, zde je záběr před a po, jak sestava vypadala. Trochu uklidnění všeho může znamenat obrovský rozdíl.
Krok 5: Elektronika
Pokud jde o elektroniku, projekt je poměrně jednoduchý. K dispozici je hlavní napájecí zdroj 12V, který může dodávat až 3A proudu, který napájí motory. K bezpečnému napájení Arduina se používá sestupný modul a byl navržen vlastní štít pro Arduino, který obsahuje všechny ovladače krokových motorů. Ovladače výrazně usnadňují ovládání motorů. Řízení krokového motoru vyžaduje specifickou řídicí sekvenci, ale pomocí ovladačů motoru potřebujeme pouze generovat vysoký puls pro každý krok, kterým se motor otočí. Kromě toho byly do štítu přidány některé jst konektory, které usnadňují připojení motorů. Štít pro Arduino byl pevně postaven na kusu perfboardu a poté, co se ujistil, že vše funguje tak, jak mělo, byl vyroben společností jlc pcb.
Zde je před a po prototypu a vyrobené desce plošných spojů.
Krok 6: Software a sériové rozhraní
Q-Bot je rozdělen na dvě části. Na jedné straně je hardware, který je ovládán Arduinem, na straně druhé je software, který vypočítává cestu řešení pro krychli na základě aktuálního shonu. Firmware běžící na Arduinu jsem napsal sám, ale abych tuto příručku zkrátil, nebudu se zde o ní rozepisovat. Pokud se na to chcete podívat a pohrát si s tím, odkaz na mé úložiště git bude uveden na konci tohoto dokumentu. Software, který vypočítá řešení, běží na počítači se systémem Windows a byl napsán mým kolegou, opět odkazy na jeho zdrojový kód najdete na konci tohoto textu. Tyto dvě části komunikují pomocí jednoduchého sériového rozhraní. Vypočítává řešení na základě dvoufázového algoritmu Kociemba. Řešicí software odešle řešiteli příkaz sestávající ze dvou bytů a čeká, až vrátí „ACK“. Tímto způsobem lze řešič testovat a ladit pomocí jednoduchého sériového monitoru. Kompletní sadu instrukcí najdete níže.
Příkazy k otočení každého motoru o jeden krok jsou řešením problému, kdy některé steppery po zapnutí náhodně provedou malé skoky. Aby se to kompenzovalo, lze motory před procesem řešení nastavit do jejich počáteční polohy.
Krok 7: Závěr
Po osmi měsících vývoje, nadávání, bít na klávesnici a tancování byl Q-bot konečně v bodě, kde byla úspěšně vyřešena jeho první Rubikova kostka. Míchání kostky bylo nutné ručně vložit do řídicího softwaru, ale vše fungovalo dobře.
O několik týdnů později jsem přidal držák pro webovou kameru a moje vysoká škola upravila software tak, aby kostku automaticky přečetl z pořízených snímků. To však ještě není dobře otestováno a stále potřebuje nějaká vylepšení.
Pokud tento pokyn vyvolal váš zájem, neváhejte a začněte stavět svou vlastní verzi Q-botu. Zpočátku se to může zdát skličující, ale stojí to za tu námahu, a když to dokážu já, můžete i vy.
Zdroje:
Zdrojový kód firmwaru:
github.com/Axodarap/QBot_firmware
Zdrojový kód řídicího softwaru
github.com/waldhube16/Qbot_SW
Doporučuje:
Joy Robot (Robô Da Alegria) - 3D tisk s otevřeným zdrojovým kódem, robot s pohonem Arduino !: 18 kroků (s obrázky)
Joy Robot (Robô Da Alegria) - 3D tisk s otevřeným zdrojovým kódem, robot s pohonem Arduino !: První cena v soutěži Wheels s instruktážními jízdami, Druhá cena v soutěži Arduino Instructables a Runner up v soutěži Design for Kids Challenge. Děkujeme všem, kteří o nás hlasovali !!! Roboti se dostanou všude. Od průmyslových aplikací po
Profesionální bezpečnostní kamera s otevřeným zdrojovým kódem pro noční vidění: 10 kroků (s obrázky)
Profesionální bezpečnostní kamera s otevřeným zdrojovým kódem pro noční vidění: V tomto novém tutoriálu společně vyrobíme naši otevřenou kamerovou kameru s otevřeným zdrojovým kódem Raspberry Pi. Ano, mluvíme zde o skutečné venkovní kamerové kameře s otevřeným zdrojovým kódem, schopné nočního vidění a detekce pohybu, vše spojené s naším Jeedem
Výroba spektrometru s otevřeným zdrojovým kódem EOS 1: 10 kroků (s obrázky)
Výroba spektrometru s otevřeným zdrojovým kódem EOS 1: EOS 1 (Erie Open Spec v1.0) je jednoduchý spektrometr s otevřeným zdrojovým kódem založený na chytrém telefonu, který byl navržen tak, aby jej k měření koncentrací živin ve vodě používala jakákoli osoba, která myslí na životní prostředí. Pokud máte oficiální sadu EOS 1, přejděte ke kroku 5. De
Řízení verzí hardwaru s otevřeným zdrojovým kódem: 10 kroků
Správa verzí pro hardware s otevřeným zdrojovým kódem: Tým ve společnosti Brainbow má pod našimi pásy řadu projektů v oblasti elektroniky a my jsme se chtěli podělit o náš proces používání správy verzí ke správě pracovního postupu při návrhu elektroniky. Tento pracovní postup byl použit pro velké i malé projekty, od jednoduchých
Sklo Arduino - náhlavní souprava pro rozšířenou realitu s otevřeným zdrojovým kódem: 9 kroků (s obrázky)
Sklo Arduino - náhlavní souprava pro rozšířenou realitu s otevřeným zdrojovým kódem: Uvažovali jste někdy o tom, že byste si pořídili sluchátka s rozšířenou realitou? Také jste byli ohromeni možností rozšířené reality a podívali jste se na cenovku se zlomeným srdcem? Ano, já také! Ale to mě nezastavilo. Získal jsem odvahu a místo toho