Tartalomjegyzék:

Q -Bot - a nyílt forráskódú Rubik -kocka megoldó: 7 lépés (képekkel)
Q -Bot - a nyílt forráskódú Rubik -kocka megoldó: 7 lépés (képekkel)

Videó: Q -Bot - a nyílt forráskódú Rubik -kocka megoldó: 7 lépés (képekkel)

Videó: Q -Bot - a nyílt forráskódú Rubik -kocka megoldó: 7 lépés (képekkel)
Videó: Марко Темпест: Дополненная реальность, техно-магия 2024, Július
Anonim
Image
Image
Kép
Kép

Képzeld el, hogy van egy kódolt Rubik -kockád, tudod, hogy a rejtvény a 80 -as évekből származik, ami mindenkinek megvan, de senki sem tudja, hogyan kell megoldani, és vissza akarod hozni az eredeti mintájába. Szerencsére manapság nagyon könnyű megtalálni a megoldási utasításokat. Tehát nézzen online egy videót, és tanulja meg, hogyan kell oldalra fordítani, hogy örömet szerezzen. Miután néhányszor megtette, rájön, hogy valami hiányzik. Belül egy lyuk, amit nem lehet kitölteni. A benned lévő mérnökök/készítő/hacker egyszerűen nem lehet megelégedve azzal, hogy valami ilyen csodálatos megoldást ilyen egyszerű módon old meg. Nem lenne sokkal költőibb, ha lenne egy gépe, amely mindent megold Ön helyett? Ha építene valamit, minden barátja meglepődne? Garantálhatom, hogy nem lesz sokkal jobb, mint nézni, ahogy az alkotás csodákat tesz és megold egy Rubik -kockát. Szóval, gyere és csatlakozz hozzám a Q-Bot, a nyílt forráskódú Rubik-kocka-megoldó építésének csodálatos útján, amely minden bizonnyal nem fog megdönteni egyetlen világrekordot sem, de órákon át örömet szerez neked (természetesen az összes csalódás után) az építési folyamat során).

1. lépés: A hardver tervezése

A teljes megoldást CAD -ban tervezték Catia -ban. Így a tervezési hibák nagy része megtalálható és kijavítható a fizikai alkatrészek gyártása előtt. A legtöbb megoldó 3D nyomtatással készült PLA -ban prusa MK3 nyomtatóval. Ezenkívül a következő hardvereket használták:

  • 8 db 8 mm -es alumínium rúd (10 cm hosszú)
  • 8 lineáris golyóscsapágy (LM8UU)
  • kicsit kevesebb, mint 2 m GT2 6 mm -es vezérműszíj + néhány szíjtárcsa
  • 6 NEMA 17 bipoláris léptetőmotor
  • 6 Polulu 4988 léptető
  • egy Arudino Mega, mint a projekt irányítója
  • 12 V 3A tápegység
  • egy lépcsős átalakító az arduino biztonságos táplálásához
  • néhány csavar és csatlakozó
  • néhány rétegelt lemez az alaphoz

Hardver leírása

Ez a rész röviden bemutatja, hogyan működik a Q-Bot, és hol használják a fent említett összetevőket. Az alábbiakban a teljesen összeszerelt CAD modell renderelését láthatja.

A Q-bot úgy működik, hogy négy motort közvetlenül a Rubik-kockához csatlakoztatnak 3D nyomtatott fogókkal. Ez azt jelenti, hogy balra, jobbra, elöl és hátul közvetlenül el lehet fordítani. Ha a felső vagy az alsó oldalt el kell forgatni, akkor az egész kockát el kell forgatni, és így két motort el kell távolítani. Ez úgy történik, hogy a megfogó motorokat egy másik léptetőmotor és egy vezérműszíj által meghajtott szánokhoz rögzítik egy lineáris sínrendszer mentén. A sínrendszer két 8 golyóscsapágyból áll, amelyek a szán üregeibe vannak szerelve, és az egész szán két 8 mm -es alumínium tengelyen halad. Az alábbiakban látható a megoldó egyik tengelyének részegysége.

Az x- és az y-tengely alapvetően azonos, csak az öv rögzítési pontjának magasságában különböznek egymástól, ez azért van, hogy teljesen összeszerelve ne legyen ütközés a két öv között.

Kép
Kép

2. lépés: A megfelelő motorok kiválasztása

Természetesen itt nagyon fontos a megfelelő motorok kiválasztása. A fő rész az, hogy elég erősnek kell lenniük ahhoz, hogy meg tudják fordítani a Rubik -kockát. Az egyetlen probléma itt az, hogy a Rubik -kockák egyik gyártója sem ad nyomatékértéket. Így rögtönöznöm kellett, és saját méréseket kellett végeznem.

A nyomatékot általában a forgási pont helyzetére merőleges erő határozza meg az r távolságon:

Kép
Kép
Kép
Kép

Tehát, ha valahogy meg tudnám mérni a kockára kifejtett erőt, kiszámíthatnám a nyomatékot. Pontosan ezt tettem. Rögzítettem a kockámat egy polcra úgy, hogy csak az egyik oldala mozogjon. Hogy egy zsinórt kötöttek a kocka körül, és egy zacskót rögzítettek az aljára. Most már csak lassan kellett növelni a zsák súlyát, amíg a kocka meg nem fordult. Pontos súly hiányában burgonyát használtam, és utána megmértem. Nem a legtudományosabb módszer, de mivel nem próbálom megtalálni a minimális nyomatékot, ez elégséges.

Kép
Kép

Háromszor végeztem el a méréseket, és csak a biztonság kedvéért vettem a legmagasabb értéket. A kapott tömeg 0,52 kg volt. Most Sir Isaac Newton miatt tudjuk, hogy az Erő egyenlő a tömeges gyorsulással.

Kép
Kép

A gyorsulás ebben az esetben a gravitációs gyorsulás. Tehát a szükséges nyomatékot a

Kép
Kép

Ha az összes értéket bedugja, beleértve a Rubik -kocka átlójának felét is, végre kiderül a szükséges nyomaték.

Kép
Kép

Léptetőmotorokkal mentem, amelyek képesek akár 0,4 Nm -es erő kifejtésére, ami valószínűleg túlzás, de biztonságban akartam lenni.

3. lépés: Az alap építése

Az alap egy nagyon egyszerű fadobozból áll, és minden szükséges elektronikát tartalmaz. Tartalmaz egy dugót a készülék be- és kikapcsolásához, egy LED -et, amely jelzi, ha be van kapcsolva, egy USB B portot és egy aljzatot a tápegység csatlakoztatásához. 15 mm -es rétegelt lemezből, néhány csavarból és egy kis ragasztóból készült.

Kép
Kép
Kép
Kép
Kép
Kép
Kép
Kép

4. lépés: A hardver összeszerelése

A Q-bot készen állt az összes szükséges alkatrésszel, beleértve az alapot is. Az egyedi alkatrészeket 3D -ben kinyomtatták és szükség szerint módosították. Az ible végén letöltheti az összes CAD fájlt. Az összeszerelés során az összes 3D nyomtatott alkatrészt illesztették a megvásárolt alkatrészekhez, meghosszabbították a motorkábeleket, és az összes alkatrészt az alaphoz csavarják. Ezenkívül hüvelyeket tettem a motorkábelek köré, csak hogy némileg jobban nézzek ki, és JST csatlakozókat tettem a végeikhez.

Az általam épített bázis fontosságának hangsúlyozására itt van egy előtte és utána felvétel arról, hogy hogyan nézett ki a szerelvény. Ha mindent kicsit elrendez, óriási változást hozhat.

Kép
Kép
Kép
Kép

5. lépés: Elektronika

Ami az elektronikát illeti, a projekt meglehetősen egyszerű. Van egy fő 12 V -os tápegység, amely akár 3A áramot is képes leadni, ami a motorokat táplálja. Az Arduino biztonságos áramellátásához egy lefelé irányuló modult használnak, és az Arduino egyedi pajzsát tervezték, amely tartalmazza az összes léptetőmotor-meghajtót. A meghajtók jelentősen megkönnyítik a motorok vezérlését. A léptetőmotor meghajtásához speciális vezérlési sorrend szükséges, de a motorvezérlők használatával csak magas impulzust kell generálnunk a motor minden egyes lépésére. Ezenkívül néhány jst csatlakozót is hozzáadtak az árnyékoláshoz, hogy megkönnyítsék a motorok csatlakoztatását. Az Arduino pajzsát először egy parfümdarabra építették, és miután meggyőződtek arról, hogy minden úgy működik, ahogy kellett volna, a jlc pcb gyártotta.

Itt van a prototípus és a gyártott PCB előtte és utána.

Kép
Kép
Kép
Kép

6. lépés: Szoftver és soros interfész

A Q-Bot két részre oszlik. Egyrészt ott van az Arduino által irányított hardver, másrészt van egy szoftver, amely az aktuális kódolás alapján kiszámítja a kocka megoldási útvonalát. Az Arduino -n futó firmware -t saját magam írtam, de annak érdekében, hogy rövid legyen ez az útmutató, nem részletezem itt. Ha szeretné megnézni és játszani vele, a dokumentum végén található link a git tárhelyemhez. A megoldást kiszámító szoftver Windows gépen fut, és egy kollégám írta, ismét a forráskódjára mutató linkek találhatók az ible végén. A két rész egyszerű soros interfészen keresztül kommunikál. Kociemba kétfázisú algoritmusa alapján számítja ki a megoldást. A megoldó szoftver két bájtból álló parancsot küld a megoldónak, és várja, hogy visszatérjen az „ACK”. Így a megoldó tesztelhető és hibakereshető egy egyszerű soros monitor segítségével. A teljes utasításkészlet az alábbiakban található.

Kép
Kép

Az egyes motorok egy lépésre történő elforgatására vonatkozó parancsok megoldást jelentenek egy olyan problémára, amikor néhány lépegető véletlenszerűen kis ugrásokat hajt végre a bekapcsoláskor. Ennek kompenzálására a motorokat a megoldási folyamat előtt a kezdeti helyzetükbe lehet állítani.

7. lépés: Következtetés

Nyolc hónapos fejlesztés, káromkodás, billentyűzetütés és táncolás után a Q-bot végre elérkezett ahhoz a ponthoz, ahol sikeresen megoldották első Rubik-kockáját. A kocka kódolását kézzel kellett beilleszteni a vezérlőszoftverbe, de minden jól működött.

Pár héttel később hozzáadtam egy webkamera tartóját, és az egyetem úgy állította be a szoftvert, hogy a leolvasott képekből automatikusan le tudja olvasni a kockát. Ezt azonban még nem tesztelték jól, és még javítani kell.

Kép
Kép

Ha ez az oktatható felkeltette az érdeklődését, ne habozzon, és kezdje el építeni a Q-bot saját verzióját. Elsőre ijesztőnek tűnhet, de nagyon megéri az erőfeszítést, és ha én meg tudnám tenni, akkor te is.

Erőforrások:

A firmware forráskódja:

github.com/Axodarap/QBot_firmware

A vezérlőszoftver forráskódja

github.com/waldhube16/Qbot_SW

Ajánlott: