Tartalomjegyzék:
- 1. lépés: Eszközök és anyagok
- 2. lépés: Építsd fel
- 3. lépés: Készítse elő a szoftvert
- Lépés: Oldja meg a Rubik -kockát
- 5. lépés: A forráskód
Videó: BricKuber projekt - Raspberry Pi Rubiks kocka megoldó robot: 5 lépés (képekkel)
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:43
A BricKuber körülbelül 2 perc alatt meg tudja oldani a Rubik -kockát.
A BricKuber egy nyílt forráskódú Rubik -kocka -megoldó robot, amelyet saját maga készíthet
Szerettünk volna Rubik -kocka -megoldó robotot építeni a Raspberry Pi -vel. Ahelyett, hogy gyorsaságra törekednénk, egyszerűséggel mentünk: ha van Raspberry Pi, BrickPi készlete és szabványos LEGO Mindstorms EV3 vagy NXT készlete, akkor könnyen léphet a nyomunkba. A szoftver Python programozási nyelven íródott. Itt láthatja a Github összes forráskódját.
Háttér A Rubik -kocka a közelmúltban kezdett visszatérni. 1974-ben találták fel, ez a világ legkelendőbb játéka. De ezek megoldása gondolkodást, erőfeszítést és ügyességet igényel… akkor miért nem hagyja, hogy egy robot megtegye? Ebben a projektben veszünk egy Raspberry Pi -t, egy BrickPi -t és egy LEGO Mindstorms készletet, és felépítünk egy Rubik -kockát megoldó robotot. Egyszerűen helyezzen egy megoldatlan Rubik -kockát a megoldóba, futtassa a python programot, és Rubik -kockája megoldódott! A projekt a Pi -t használja a Rubik -kocka közvetlen megoldására. A BrickPi3 a megoldatlan Rubik -kockát, a Raspberry Pi pedig a Raspberry Pi kamerával készít képet a Rubik -kocka mindkét oldaláról. A Pi szöveges térképet készít a színes négyzetekről, amely megmutatja, hol találhatók a kockán. Amikor a Pi teljesen feltérképezte a kockát, a Pi a „kociemba” python könyvtárat használja fel a Rubik -kocka megoldásához szükséges lépések feltérképezésére. Ezt az információt a Pi és a BrickPi3 veszi fel, hogy megoldja a Rubik -kockát a LEGO motorok segítségével. Az eredmény: megoldott Rubik -kocka.
1. lépés: Eszközök és anyagok
- BrickPi3 - A BrickPi segítségével irányítjuk a Rubik -kockát megoldó LEGO -motorokat.
- Raspberry Pi - A Pi elvégzi a feldolgozást, képeket készít és parancsot ad a BrickPi -nek.
- Raspberry Pi Camera - A Pi Camera képet készít a megoldatlan Rubiks -kockáról.
- Ethernet kábel - Szüksége lesz arra, hogy a gép csatlakozzon az internethez. Ha ezt wifi -n keresztül szeretné megtenni, az sem baj!
- Raspbian for Robots SD Card - A Raspberry Pi -t futtató szoftver. Ez az oktatóanyaghoz szükséges szoftverek nagy részével együtt jár. A szoftvert ingyenesen is letöltheti.
- LEGO Mindstorms EV3 készlet (31313) - Szükséged lesz egy halom LEGO -ra és két nagy motorra, egy szervomotorra és egy ultrahangos érzékelőre.
- Egy Rubik -kocka - Találtunk itt olyat, amely elég szabadon forog. Bármilyen 9x9x9 -es Rubik -kockát használhat.
2. lépés: Építsd fel
A Megoldó építése
Ezt a dizájnt a LEGO EV3 MindCub3r tervezése ihlette. A BricKuber felépítéséhez kezdje a MindCub3r építésével. A teljes LEGO építési útmutató itt található.
A Rubiks kocka megoldó három fő mozgó részből áll. Az első egy bölcső a Rubik -kocka tartására. A második a keverő, egy kar, amely a Rubik -kocka megfordítására szolgál.
Végül hozzáadunk egy kamerakart. A MindCubr eredeti tervezésében ez tartotta az EV3 színérzékelőt a Rubik -kocka felett. Módosított kialakításunk szerint Raspberry Pi kamerát tart a Rubik -kocka felett. Két LEGO Mindstorms motort használunk a kocka manipulálásához: az első a bölcső alatt ül a kocka elforgatásához, a második pedig a keverőkart mozgatja, hogy a kocka ellenkező tengelyen forogjon.
Szerelje össze a BrickPi3 -at
A BrickPi3 összeszerelési utasításait itt találja. Össze kell szerelnünk a tokot, rögzítenünk kell a BrickPi3 -at, a Raspberry Pi -t, a Raspberry Pi kamerát, hozzá kell adnunk egy SD -kártyát, és hozzá kell tennünk az elemeket. A szoftver telepítésének megkönnyítése érdekében a Raspbian for Robots a legtöbb szoftvert tartalmazza, amelyekre már szüksége van. Szüksége lesz legalább 8 GB -os SD -kártyára, és ki kell bővítenie a lemezt az SD -kártya teljes méretének megfelelően.
Csatlakoztassa a BrickPi3 -at
Hozzáadjuk a BrickPi3 -at a LEGO szerelvényhez. A LEGO EV3 „szárnyait” használtuk a BrickPi3 alátámasztására és a BricKuber testtel való egy szintre állítására. Ez jó lépés ahhoz, hogy 8XAA elemeket tegyen a tápegységhez, és csatlakoztassa a BrickPi3 tápegységet a LEGO szerelvényhez. A programozáshoz a BrickPi3 -at USB -ről a Raspberry Pi -re táplálhatja, azonban a motorok mozgatásához áramellátásra van szüksége a Power Pack -al.
Csatlakoztassa a motorokat a BrickPi3 -hoz
Csatlakoztassa a keverőmotort az „MD” motorporthoz. Csatlakoztassa a bölcsőmotort a BrickPi3 „MA” portjához. Csatlakoztassa a kamera érzékelő motorját az „MC” porthoz (ez a kisebb szervószerű motor). Annak ellenére, hogy nem mozgatjuk a kamerát, érdemes lehet beállítani a kamera helyét a motorok segítségével.
Csatlakoztassa a Raspberry Pi kamerát
A LEGO Camera támogatás használatával csatlakoztassa a kamerát. A fényképezőgép kis fekete lencséjének el kell férnie a két LEGO sugártartó között. Bizonyos elektromos szalaggal rögzítse a fényképezőgépet a helyén a LEGO tartókhoz. Itt az ideje, hogy megbizonyosodjon arról, hogy a kamera olyan helyzetben van, hogy képes legyen rögzíteni a teljes Rubik -kockát. Tesztképet készíthet a raspistill paranccsal
raspistill -o cam.jpg
Ellenőrizze, hogy a kocka jól középen van-e a kép közepén.
3. lépés: Készítse elő a szoftvert
Használhatja a Raspbian vagy a Raspbian for Robots bármely verzióját, a már telepített BrickPi3 -hoz tartozó egyedi képünket. Ha a Raspbian szabványos verzióját használja, akkor a paranccsal telepítheti a BrickPi3 könyvtárakat
sudo curl -kL dexterindustries.com/update_brickpi3 | bash
Ez a lépés telepíti az összes könyvtárat, amely szükséges a BrickPi3 futtatásához a Raspbian képen. Ha Raspbian for Robots -t használ, hagyja ki ezt a lépést: a BrickPi3 már telepítve van.
Végül telepítse az összes projektfüggőséget a következő paranccsal:
sudo curl https://raw.githubusercontent.com/DexterInd/Brick… | bash
Ehhez a lépéshez a BrickPi3 készüléknek csatlakoznia kell az internethez. Számos könyvtár függ a projekttől, köztük Daniel Walton (@dwalton76) néhány fontos könyvtára a Githubon, amelyeket a Rubik -kocka megoldására használnak.
Lépés: Oldja meg a Rubik -kockát
Helyezzen egy megoldatlan Rubik -kockát a bölcsőbe. Futtassa a parancsot
sudo python ~/Dexter/BrickPi3/Projects/BricKuber/BricKuber.py
A robot minden oldalra fordítja a kockát, és a kamera 6 képet készít, a kocka mindkét oldaláról egyet. A Raspberry Pi a hat kép alapján határozza meg a kocka konfigurációját. A Cube konfigurációt a kociemba Python könyvtárba továbbítjuk, hogy hatékony megoldást találjunk. Végül a robot végrehajtja a lépéseket a Rubik -kocka megoldására!
5. lépés: A forráskód
A BricKuber összes forráskódja megtalálható a nyílt forráskódú github repóban.
Ez a projekt a következő szoftvercsomagokat használja, amelyeket a parancs telepített
Ajánlott:
Arduino - Labirintus megoldó robot (MicroMouse) Falkövető robot: 6 lépés (képekkel)
Arduino | Maze Solving Robot (MicroMouse) Falkövető robot: Üdvözlöm, Isaac vagyok, és ez az első robotom, a "Striker v1.0". Ezt a robotot egy egyszerű labirintus megoldására tervezték. A versenyen két labirintus és a robot volt képes volt azonosítani őket. A labirintusban bekövetkező egyéb változások miatt szükség lehet a
Funkcionális USB flash meghajtó Rubiks kocka: 7 lépés (képekkel)
Funkcionális USB flash meghajtó Rubiks kocka: Ebben az oktatóanyagban megmutatom, hogyan készíthet saját Rubik USB flash meghajtót. A kész terméket az alábbi videóban láthatja:
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ó: Képzeld el, hogy van egy kódolt Rubik -kocka, tudod, hogy a 80 -as évekből származó rejtvény mindenki számára megvan, de senki sem tudja, hogyan kell megoldani, és vissza akarod hozni az eredeti mintájába. Szerencsére manapság nagyon könnyű megoldási utasításokat találni
E -kocka - Arduino kocka/1–6 kocka + D4, D5, D8, D10, D12, D20, D24 és D30: 6 lépés (képekkel)
E -kocka - Arduino kocka/kocka 1-6 kocka + D4, D5, D8, D10, D12, D20, D24 és D30: Ez egy egyszerű arduino projekt egy elektronikus kocka készítésére. Lehetőség van 1–6 kockára vagy 8 különleges kockára való választásra. A választás egyszerűen egy forgó kódoló elforgatásával történik. Ezek a jellemzők: 1 kocka: nagy pontok megjelenítése 2-6 kocka: pontok megjelenítése
ARS - Arduino Rubik Megoldó: 13 lépés (képekkel)
ARS - Arduino Rubik Megoldó: Az ARS egy komplett rendszer a Rubik -kocka megoldásához: igen, egy másik robot a kocka megoldásához! Az ARS egy hároméves iskolai projekt, amely 3D nyomtatott alkatrészekkel és lézervágott szerkezetekkel készült: az Arduino megkapja a megfelelő sorozatot házi készítésű kanapén