Sadržaj:
- Korak 1: Alati i materijali
- Korak 2: Izgradite ga
- Korak 3: Pripremite softver
- Korak 4: Riješite Rubikovu kocku
- Korak 5: Izvorni kod
Video: BricKuber projekt - robot za rješavanje kockica Raspberry Pi Rubiks: 5 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:37
BricKuber može riješiti Rubikovu kocku za manje od 2 minute.
BricKuber je Rubikov robot za rješavanje kockica otvorenog koda koji možete sami izgraditi
Željeli smo izgraditi robota za rješavanje Rubiks kocke s Raspberry Pi. Umjesto da idemo na brzinu, krenuli smo s jednostavnošću: ako imate Raspberry Pi, BrickPi komplet i standardni LEGO Mindstorms EV3 ili NXT Kit, trebali biste lako krenuti našim stopama. Softver je napisan u programskom jeziku Python. Ovdje možete vidjeti sav izvorni kod na Githubu.
Pozadina Rubikova kocka nedavno se počela vraćati. Izumljena 1974. godine, najprodavanija je igračka na svijetu. Ali njihovo rješavanje zahtijeva razmišljanje, trud i vještinu… pa zašto ne biste to dopustili robotu? U ovom projektu uzimamo Raspberry Pi, BrickPi i set LEGO Mindstorms i izrađujemo robota za rješavanje Rubikove kocke. Jednostavno stavite neriješenu Rubikovu kocku u rješavač, pokrenite program python i vaša Rubikova kocka je riješena! Projekt koristi Pi za izravno rješavanje Rubikove kocke. BrickPi3 uzima neriješenu Rubikovu kocku, a Raspberry Pi snima svaku stranu Rubikove kocke pomoću Raspberry Pi kamere. Pi stvara tekstualnu kartu kvadrata u boji koja pokazuje gdje se nalaze na kocki. Kad potpuno preslika kocku, Pi koristi biblioteku pythona "kociemba" za mapiranje poteza potrebnih za rješavanje Rubikove kocke. Ove podatke uzimaju Pi i BrickPi3 za rješavanje Rubikove kocke pomoću LEGO motora. Rezultat: riješena Rubikova kocka.
Korak 1: Alati i materijali
- BrickPi3 - Koristit ćemo BrickPi za upravljanje LEGO motorima koji rješavaju Rubikovo kockalo.
- Raspberry Pi - Pi će obavljati obradu, fotografirati i zapovijedati BrickPi -jem.
- Raspberry Pi kamera - Pi kamera će snimiti neriješenu Rubiksovu kocku.
- Ethernet kabel - morat ćete povezati uređaj s internetom. Ako to želite učiniti putem WiFi -ja, i to je u redu!
- SD kartica Raspbian for Robots - softver koji pokreće Raspberry Pi. Ovo dolazi s većinom softvera potrebnog za ovaj vodič. Također možete besplatno preuzeti softver.
- LEGO Mindstorms EV3 komplet (31313) - trebat će vam hrpa LEGO -a i dva velika motora, jedan servo motor i ultrazvučni senzor.
- Rubikova kocka - pronašli smo onu koja se ovdje prilično slobodno vrti. Ipak, možete koristiti gotovo svaku Rubikovu kocku 9x9x9.
Korak 2: Izgradite ga
Izgradnja Solvera
Ovaj dizajn inspiriran je dizajnom MindCub3r za LEGO EV3. Da biste izgradili BricKuber, počnite s izgradnjom MindCub3r. Cjelovite LEGO upute za izgradnju možete pronaći ovdje.
Dizajn kockara Rubiks ima tri glavna pokretna dijela. Prva je kolijevka za držanje Rubikove kocke. Drugi je miješalica, ruka koja se koristi za okretanje Rubikove kocke.
Na kraju dodajemo krak kamere. U originalnom dizajnu tvrtke MindCubr, ovo je držalo senzor boje EV3 iznad Rubikove kocke. U našem izmijenjenom dizajnu drži Raspberry Pi kameru iznad Rubikove kocke. Za manipuliranje kockom koristimo dva LEGO Mindstorms motora: prvi se nalazi ispod postolja kako bi rotirao kocku, a drugi pomiče ruku za miješanje kako bi okrenuo kocku na suprotnoj osi.
Sastavite BrickPi3
Upute za montažu BrickPi3 možete pronaći ovdje. Morat ćemo sastaviti kućište, pričvrstiti BrickPi3, Raspberry Pi, Raspberry Pi kameru, dodati SD karticu i dodati baterije. Kako biste olakšali postavljanje softvera, Raspbian for Robots dolazi s većinom softvera koji će vam već biti potreban. Trebat će vam barem 8 GB SD kartica, a htjet ćete proširiti disk tako da odgovara punoj veličini SD kartice.
Pričvrstite BrickPi3
BrickPi3 dodajemo u LEGO sklop. Koristili smo LEGO EV3 "krila" za podršku BrickPi3 i izravnali ga s tijelom BricKubera. Ovo je dobar korak za dodavanje 8XAA baterija u napajanje i priključivanje BrickPi3 napajanja na LEGO sklop. Za programiranje možete napajati BrickPi3 putem USB -a na Raspberry Pi, međutim za pomicanje motora morat ćete napajati Power Pack.
Spojite motore na BrickPi3
Priključite motor za miješanje na priključak motora "MD". Priključite motor postolja na priključak “MA” na BrickPi3. Priključite motor senzora kamere na priključak "MC" (ovo je manji motor nalik servo-u). Iako nećemo pomicati kameru, možda ćete htjeti prilagoditi položaj kamere pomoću motora.
Priključite kameru Raspberry Pi
Pomoću podrške za LEGO kameru pričvrstite kameru. Mali crni objektiv fotoaparata trebao bi stati između dva nosača LEGO snopa. Pričvrstite kameru na mjesto na LEGO nosače nekom električnom trakom. Ovo je dobro vrijeme da se uvjerite da je kamera u položaju da može snimiti cijelu Rubikovu kocku. Možete napraviti testnu sliku naredbom raspistill
raspistill -o cam.jpg
Provjerite je li kocka dobro centrirana u sredini slike.
Korak 3: Pripremite softver
Možete koristiti bilo koju verziju Raspbiana ili Raspbiana za robote, našu prilagođenu sliku koja dolazi s već instaliranim BrickPi3. Ako koristite standardnu verziju Raspbiana, možete instalirati knjižnice BrickPi3 pomoću naredbe
sudo curl -kL dexterindustries.com/update_brickpi3 | bash
Ovaj korak će instalirati sve knjižnice potrebne za pokretanje BrickPi3 na vašoj Raspbian slici. Preskočite ovaj korak ako koristite Raspbian za robote: BrickPi3 je već instaliran.
Na kraju, instalirajte sve ovisnosti o projektu pomoću naredbe:
sudo curl https://raw.githubusercontent.com/DexterInd/Brick… | bash
Za ovaj korak vaš BrickPi3 morat će biti spojen na internet. Postoji niz knjižnica o kojima projekt ovisi, uključujući neke ključne od Daniel Waltona (@dwalton76) na Githubu, koje se koriste za rješavanje Rubikove kocke.
Korak 4: Riješite Rubikovu kocku
Stavite neriješenu Rubikovu kocku u kolijevku. Pokrenite naredbu
sudo python ~/Dexter/BrickPi3/Projekti/BricKuber/BricKuber.py
Robot će okrenuti kocku na svako lice, a kamera će snimiti 6 slika, po jednu sa svake strane kocke. Raspberry Pi će odrediti konfiguraciju kocke iz šest slika. Konfiguracija Cube bit će proslijeđena kociemba Python knjižnici kako bi se pronašlo učinkovito rješenje. Konačno, robot će izvesti poteze za rješavanje Rubikove kocke!
Korak 5: Izvorni kod
Sav izvorni kod za BricKuber možete pronaći u našem otvorenom izvornom kodu github repo ovdje.
Ovaj projekt koristi sljedeće softverske pakete instalirane naredbom
Preporučeni:
Potpuno IC prilagodljiv elektronički set od osam kockica: 14 koraka (sa slikama)
Potpuno IC prilagodljiv elektronički set od osam kockica: U suradnji s J. Arturom Espejelom Báezom. Sada možete imati do 8 kockica od 2 do 999 lica u kutiji promjera 42 mm i visine 16 mm! Igrajte svoje omiljene društvene igre s ovim džepnim elektroničkim kompletom kockica džepne veličine! Ovaj se projekt sastoji od
Projekt kockica maline PI: 6 koraka
Raspberry PI Dice Project: Lijep mali projekt lemljenja, a jednom je završio vježbu programiranja Raspberry PI. Zatvoreni smo zbog koronavirusa pa je ovo pokušaj da se školujem kod kuće i zaposlim svog desetogodišnjeg sina. Ovo je lijep mali projekt
Arduino plava LED kockica: 8 koraka
Arduino plave LED kockice: Zahvaljujući nick_riveri za vjerodostojnost https://www.instructables.com/id/Arduino-Dice/Ovo je Arduino kocka koja se može koristiti u vrstama društvenih igara, a brojevi se prikazuju nasumično
DIY komplet osciloskopa - Vodič za sastavljanje i rješavanje problema: 10 koraka (sa slikama)
DIY komplet osciloskopa - Vodič za sastavljanje i rješavanje problema: Vrlo često mi je potrebno, prilikom projektiranja nekog elektroničkog uređaja, osciloskop za promatranje prisutnosti i oblika električnih signala. Do sada sam koristio stari sovjetski (1988.) jednokanalni analogni CRT osciloskop. I dalje je funkcionalan
Generator kockica: 12 koraka (sa slikama)
Generator kockica: Ovaj Instructables je za moj glavni projekt koji sam završio u sklopu svog tečaja IGCSE Sustavi i kontrole. Dobio je ocjenu A* i vodit ću vas kako to učiniti u ovom uputstvu. Pristojno iskustvo u elektronici, kao i očekivanje