Sisukord:
- Samm: tööriistad ja materjalid
- 2. samm: ehitage see üles
- Samm: valmistage tarkvara ette
- Samm: lahendage Rubiku kuup
- Samm: lähtekood
Video: BricKuberi projekt - Raspberry Pi Rubiksi kuubiku lahendamisrobot: 5 sammu (piltidega)
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:50
BricKuber suudab Rubiku kuubi lahendada vähem kui 2 minutiga.
BricKuber on avatud lähtekoodiga Rubiku kuubiku lahendamisrobot, mille saate ise ehitada
Tahtsime koos Raspberry Pi -ga ehitada Rubiksi kuubiku lahendamisroboti. Kiiruse asemel läksime lihtsusega: kui teil on Raspberry Pi, BrickPi komplekt ja tavaline LEGO Mindstorms EV3 või NXT komplekt, peaksite saama hõlpsalt meie jälgedes käia. Tarkvara on kirjutatud Pythoni programmeerimiskeeles. Siin näete kogu Githubi lähtekoodi.
Taust Rubiku kuubik on hiljuti hakanud tagasi tulema. See leiutati 1974. aastal ja on maailma enimmüüdud mänguasi. Kuid nende lahendamine nõuab mõtlemist, pingutust ja oskusi… miks mitte lasta robotil seda teha? Selles projektis võtame Raspberry Pi, BrickPi ja LEGO Mindstorms komplekti ning ehitame Rubiku kuubiku lahendamisroboti. Lihtsalt asetage lahendamisse lahendamata Rubiku kuup, käivitage python -programm ja teie Rubiku kuup on lahendatud! Projekt kasutab Pi -d Rubiku kuubi otseseks lahendamiseks. BrickPi3 võtab lahendamata Rubiku kuubiku ja Raspberry Pi teeb Raspberry Pi kaameraga pildi Rubiku kuubi mõlemast küljest. Pi loob värviväljakutest tekstikaardi, mis näitab, kus need kuubikul asuvad. Kui Pi on kuubi täielikult kaardistanud, kasutab Pi Rubiku kuubi lahendamiseks vajalike käikude kaardistamiseks „kociemba” püütoniteeki. Seda teavet võtavad Pi ja BrickPi3, et lahendada Rubiku kuup LEGO mootorite abil. Tulemus: lahendatud Rubiku kuup.
Samm: tööriistad ja materjalid
- BrickPi3 - me kasutame BrickPi abil LEGO mootoreid, mis lahendavad Rubiku kuubiku lahendajat.
- Raspberry Pi - Pi tegeleb töötlemise, pildistamise ja BrickPi juhtimisega.
- Vaarika Pi kaamera - Pi kaamera teeb pildi lahendamata Rubiksi kuubikust.
- Etherneti kaabel - masin peab olema Internetiga ühendatud. Kui soovite seda teha WiFi kaudu, on see ka hea!
- Raspbian for Robots SD Card - tarkvara, mis töötab Raspberry Pi -ga. Sellega kaasneb enamik selle õpetuse jaoks vajalikust tarkvarast. Samuti saate tarkvara tasuta alla laadida.
- LEGO Mindstorms EV3 komplekt (31313) - vajate hunnikut LEGO ja kahte suurt mootorit, ühte servomootorit ja ultraheliandurit.
- Rubiku kuubik - leidsime ühe, mis keerleb siin päris vabalt. Siiski saate kasutada peaaegu kõiki 9x9x9 Rubiku kuubikuid.
2. samm: ehitage see üles
Lahendaja ehitamine
See disain oli inspireeritud LEGO EV3 MindCub3r disainist. BricKuberi ehitamiseks alustage MindCub3ri ehitamisest. Täielikud LEGO ehitusjuhised leiate siit.
Rubiku kuubiku lahendaja kujunduses on kolm peamist liikuvat osa. Esimene on häll Rubiku kuubi hoidmiseks. Teine on segaja, käsi, mida kasutatakse Rubiku kuubi ümberpööramiseks.
Lõpuks lisame kaamera käe. MindCubri algses disainis hoiti EV3 värvisensorit Rubiku kuubi kohal. Meie muudetud kujunduses hoiab see Rubiku kuubi kohal Raspberry Pi kaamerat. Kuubiga manipuleerimiseks kasutame kahte LEGO Mindstormsi mootorit: esimene asub kuubi pööramiseks hälli all ja teine liigutab käepidet, et kuubi vastassuunalisel teljel keerutada.
Pange kokku BrickPi3
BrickPi3 kokkupaneku juhised leiate siit. Peame korpuse kokku panema, kinnitama BrickPi3, Raspberry Pi, Raspberry Pi kaamera, lisama SD -kaardi ja lisama patareid. Tarkvara hõlpsamaks seadistamiseks on Raspbian for Robots kaasas enamiku tarkvaraga, mida vajate juba seadistamiseks. Teil on vaja vähemalt 8 GB SD -kaarti ja soovite ketta laiendada SD -kaardi täissuuruses.
Kinnitage BrickPi3
Lisame BrickPi3 LEGO koostesse. Kasutasime LEGO EV3 tiibu, et BrickPi3 toestada ja muuta see BricKuberi kehaga võrdseks. See on hea samm, et lisada toiteplokile 8XAA patareid ja kinnitada BrickPi3 toiteplokk LEGO komplekti külge. Programmeerimiseks saate BrickPi3 toita USB -toite kaudu Raspberry Pi -le, kuid mootorite teisaldamiseks peate toiteallikaga varustama.
Ühendage mootorid BrickPi3 -ga
Kinnitage segamismootor mootoripordile “MD”. Kinnitage hällimootor BrickPi3 porti “MA”. Kinnitage kaamera anduri mootor “MC” porti (see on väiksem servo-sarnane mootor). Kuigi me ei liiguta kaamerat, võiksite mootori abil kaamera asukohta reguleerida.
Kinnitage Raspberry Pi kaamera
LEGO kaamera toe abil kinnitage kaamera. Kaamera väike must lääts peaks mahtuma kahe LEGO talatoe vahele. Kinnitage kaamera mõne elektrilindi abil LEGO -tugede külge. See on hea aeg veendumaks, et kaamera on sellises asendis, et jäädvustada kogu Rubiku kuup. Proovipildi saate teha käsuga raspistill
raspistill -o cam.jpg
Kontrollige, kas kuubik on pildi keskel hästi tsentreeritud.
Samm: valmistage tarkvara ette
Võite kasutada mis tahes Raspbiani või Raspbian for Robots versiooni, meie kohandatud pilti, mis on kaasas juba installitud BrickPi3 -ga. Kui kasutate Raspbiani standardversiooni, saate käsu abil installida BrickPi3 teegid
sudo curl -kL dexterindustries.com/update_brickpi3 | lööma
See samm installib kõik teegid, mida on vaja BrickPi3 käitamiseks teie Raspbiani pildil. Kui kasutate Raspbian for Robots, jätke see samm vahele: BrickPi3 on juba installitud.
Lõpuks installige kõik projekti sõltuvused käsu abil:
sudo curl https://raw.githubusercontent.com/DexterInd/Brick… | lööma
Selle sammu jaoks peab teie BrickPi3 olema Internetiga ühendatud. Projekt sõltub mitmest raamatukogust, sealhulgas mõned olulised raamatukogud, mille autor on Daniel Walton (@dwalton76) Githubis ja mida kasutatakse Rubiku kuubi lahendamiseks.
Samm: lahendage Rubiku kuup
Asetage hälli lahendamata Rubiku kuubik. Käivitage käsk
sudo python ~/Dexter/BrickPi3/Projects/BricKuber/BricKuber.py
Robot pöörab kuubi iga näo poole ja kaamera teeb 6 pilti, ühe kuubi mõlemalt poolt. Raspberry Pi määrab kuue pildi põhjal kuubi konfiguratsiooni. Cube'i konfiguratsioon edastatakse tõhusa lahenduse leidmiseks kociemba Pythoni teeki. Lõpuks teostab robot liigutusi Rubiku kuubi lahendamiseks!
Samm: lähtekood
Kogu BricKuberi lähtekoodi leiate meie avatud lähtekoodiga githubi repost siin.
See projekt kasutab järgmisi käsuga installitud tarkvarapakette
Soovitan:
LED -kuubiku valmistamine LED -kuup 4x4x4: 3 sammu
LED -kuubiku valmistamine LED -kuup 4x4x4: LED -kuubikut võib pidada LED -ekraaniks, milles lihtsad 5 mm LED -id mängivad digitaalsete pikslite rolli. LED -kuup võimaldab meil luua pilte ja mustreid, kasutades optilise nähtuse kontseptsiooni, mida nimetatakse nägemise püsivuseks (POV). Niisiis
Lihtne kallutatav värvivahetus traadita Rubiku kuubiku lamp: 10 sammu (koos piltidega)
Lihtne kallutuspõhine värvimuutmise juhtmevaba Rubiku kuubiklamp: Täna ehitame selle vinge Rubiku kuubikujulise lambi, mis muudab värvi sõltuvalt sellest, kumb pool on üleval. Kuubik töötab väikese LiPo akuga, mida laeb tavaline mikro-usb-kaabel, ja minu testimisel on aku kestvus mitu päeva. See
Q -Bot - avatud lähtekoodiga Rubiku kuubiku lahendaja: 7 sammu (piltidega)
Q -Bot - avatud lähtekoodiga Rubiku kuubiku lahendaja: Kujutage ette, et teil on rikutud Rubiku kuubik, teate, et 80ndate mõistatused on kõigil olemas, kuid keegi ei tea, kuidas neid lahendada, ja soovite selle algupärase mustri tuua. Õnneks on tänapäeval lahendamisjuhiseid väga lihtne leida
Arduino Mega sammukilp Rubiksi kuubiku lahendaja jaoks: 4 sammu
Arduino Mega sammukilp Rubiksi kuubiku lahendaja jaoks: Mõni aeg tagasi töötasin masina kallal, mis lahendab automaatselt kõik 3x3 Rubiku kuubiku segipaisatud. Minu juhiseid selle kohta näete siit. Projektis kasutati kuue mootori juhtimiseks polulu astmelisi draivereid. Selleks, et kaks saaksid need ühendada
LED kuubiku ekraan: 9 sammu (piltidega)
LED -kuup -ekraan: selles projektis ehitate ekraaniks 8x8x8 LED -kuubi. Pärast kuubi ehitamist ja koodi põhitõdede õppimist saate kirjutada oma kuvarianimatsioone. See on suurepärane visuaalne teaduslikel eesmärkidel ja see on kena dekoratsioon