Përmbajtje:

Projekti BricKuber - një robot i zgjidhjes së Rubiks Cube Raspberry Pi: 5 hapa (me fotografi)
Projekti BricKuber - një robot i zgjidhjes së Rubiks Cube Raspberry Pi: 5 hapa (me fotografi)

Video: Projekti BricKuber - një robot i zgjidhjes së Rubiks Cube Raspberry Pi: 5 hapa (me fotografi)

Video: Projekti BricKuber - një robot i zgjidhjes së Rubiks Cube Raspberry Pi: 5 hapa (me fotografi)
Video: Вычислительное мышление – информатика для руководителей бизнеса 2016 2024, Nëntor
Anonim
Image
Image

BricKuber mund të zgjidhë kubin e Rubikut në rreth më pak se 2 minuta.

BricKuber është një robot i hapur për zgjidhjen e kubit të Rubikut që mund ta ndërtoni vetë

Ne donim të ndërtonim një robot zgjidhës të kubit të Rubiks me Raspberry Pi. Në vend që të shkojmë për shpejtësi, ne shkuam me thjeshtësi: nëse keni një Raspberry Pi, një komplet BrickPi dhe një standard LEGO Mindstorms EV3 ose NXT Kit, duhet të jeni në gjendje të ndiqni me lehtësi hapat tanë. Softueri është shkruar në gjuhën programuese Python. Ju mund të shihni të gjithë kodin burimor në Github këtu.

Sfondi Kubi i Rubikut kohët e fundit ka filluar të kthehet. E shpikur në 1974, është lodra më e shitur në botë. Por zgjidhja e tyre kërkon mendim, përpjekje dhe aftësi. Me Me kështu që pse të mos e lejoni një robot ta bëjë atë? Në këtë projekt, ne marrim një Raspberry Pi, një BrickPi dhe një grup LEGO Mindstorms dhe ndërtojmë një robot zgjidhës të kubit të Rubikut. Thjesht vendosni një kub Rubik të pazgjidhur në zgjidhësin, drejtoni programin python dhe kubi i Rubikut tuaj zgjidhet! Projekti përdor Pi për të zgjidhur drejtpërdrejt kubin e Rubikut. BrickPi3 merr kubin e Rubikut të pazgjidhur dhe Raspberry Pi bën një fotografi të secilës anë të kubit të Rubikut me Kamera Raspberry Pi. Pi krijon një hartë teksti të shesheve të ngjyrave që tregon se ku ndodhen në kub. Kur e ka hartuar plotësisht kubin, Pi përdor bibliotekën e pythonit "kociemba" për të hartuar lëvizjet e nevojshme për të zgjidhur kubin e Rubikut. Ky informacion merret nga Pi dhe BrickPi3 për të zgjidhur kubin e Rubikut duke përdorur motorët LEGO. Rezultati: një kub i Rubik i zgjidhur.

Hapi 1: Mjetet dhe materialet

Ndërtojeni atë
Ndërtojeni atë
  • BrickPi3 - Ne do të përdorim BrickPi për të kontrolluar motorët LEGO që zgjidhin zgjidhësin e kubit të Rubikut.
  • Raspberry Pi - Pi do të bëjë përpunimin, marrjen e fotografive dhe komandimin e BrickPi.
  • Kamera Raspberry Pi - Kamera Pi do të bëjë një fotografi të kubit të pazgjidhur Rubiks.
  • Kabllo Ethernet - Do t'ju duhet që makina juaj të jetë e lidhur me internetin. Nëse doni ta bëni këtë përmes wifi, është gjithashtu mirë!
  • Kartë SD Raspbian për Robots - Softueri që drejton Raspberry Pi. Kjo vjen me shumicën e softuerit të nevojshëm për këtë tutorial. Ju gjithashtu mund ta shkarkoni programin falas.
  • LEGO Mindstorms EV3 Kit (31313) - Do t'ju duhet një grumbull LEGO dhe dy motorë të mëdhenj, dhe një motor servo, dhe Sensori tejzanor.
  • Një Kub Rubik - Ne gjetëm një që rrotullohet mjaft lirshëm këtu. Sidoqoftë, mund të përdorni pothuajse çdo kub Rubik 9x9x9.

Hapi 2: Ndërtoni atë

Ndërtojeni atë
Ndërtojeni atë
Ndërtojeni atë
Ndërtojeni atë

Ndërtimi i zgjidhësit

Ky dizajn u frymëzua nga dizajni MindCub3r për LEGO EV3. Për të ndërtuar BricKuber, filloni duke ndërtuar MindCub3r. Udhëzimet e plota të ndërtimit të LEGO mund të gjenden këtu.

Dizajni i zgjidhësit të kubit Rubiks ka tre pjesë kryesore lëvizëse. E para është një djep që mban kubin e Rubikut. E dyta është përzierësi, një krah që përdoret për të kthyer kubin e Rubikut.

Së fundi, ne shtojmë një krah të kamerës. Në modelin origjinal nga MindCubr, kjo mbajti sensorin e ngjyrave EV3 mbi kubin e Rubikut. Në modelin tonë të modifikuar, ajo mban një Kamera Raspberry Pi mbi kubin e Rubikut. Ne përdorim dy motorë LEGO Mindstorms për të manipuluar kubin: i pari ulet nën djep për të rrotulluar kubin, dhe i dyti lëviz krahun e përzierësit për të rrotulluar kubin në një bosht të kundërt.

Mblidhni BrickPi3

Këtu mund të gjeni udhëzimet e montimit për BrickPi3. Do të na duhet të montojmë kasën, të bashkojmë BrickPi3, Raspberry Pi, Kamera Raspberry Pi, të shtojmë një Kartë SD dhe të shtojmë bateri. Për ta bërë programin më të lehtë për tu konfiguruar, Raspbian for Robots vjen me shumicën e softuerit që ju nevojitet tashmë i konfiguruar. Do t'ju duhet të paktën një Kartë SD 8 GB dhe do të dëshironi të zgjeroni diskun për t'iu përshtatur madhësisë së plotë të Kartës SD.

Bashkangjit BrickPi3

Ne shtojmë BrickPi3 në asamblenë LEGO. Ne përdorëm "krahët" LEGO EV3 për të mbështetur BrickPi3 dhe për ta bërë atë të barabartë me trupin e BricKuber. Ky është një hap i mirë për të shtuar bateri 8XAA në paketën e energjisë dhe për të bashkuar paketën e energjisë BrickPi3 në asamblenë LEGO. Për programim ju mund të fuqizoni BrickPi3 përmes USB në Raspberry Pi, megjithatë për të lëvizur motorët do t'ju duhet të furnizoni energji me Power Pack.

Lidhni motorët me BrickPi3

Lidhni motorin Shuffler në portën motorike "MD". Bashkangjiteni motorin e djepit në portën "MA" në BrickPi3. Lidhni motorin e sensorit të kamerës në portën "MC" (ky është motori më i vogël i ngjashëm me servo). Edhe pse ne nuk do ta lëvizim kamerën, ju mund të dëshironi të rregulloni vendndodhjen e kamerës duke përdorur motorët.

Bashkangjit Kamera Raspberry Pi

Duke përdorur mbështetjen e kamerës LEGO, bashkëngjitni kamerën. Lente e vogël e zezë e kamerës duhet të përshtatet midis dy mbështetësve të rrezeve LEGO. Sigurojeni kamerën në vend në mbështetëset LEGO me disa kaseta elektrike. Kjo është një kohë e mirë për t'u siguruar që kamera është në gjendje të jetë në gjendje të kapë të gjithë kubin e Rubikut. Ju mund të bëni një fotografi provë me komandën raspistill

raspistill -o cam.jpg

Kontrolloni që kubi të jetë i përqendruar mirë në mes të figurës.

Hapi 3: Përgatitni Softuerin

Ju mund të përdorni çdo version të Raspbian ose Raspbian për Robots, imazhi ynë i personalizuar që vjen me BrickPi3 të instaluar tashmë. Nëse përdorni një version standard të Raspbian, mund të instaloni bibliotekat BrickPi3 duke përdorur komandën

sudo curl -kL dexterindustries.com/update_brickpi3 | bash

Ky hap do të instalojë të gjitha bibliotekat e nevojshme për të ekzekutuar BrickPi3 në Imazhin tuaj Raspbian. Kaloni këtë hap nëse përdorni Raspbian për Robots: BrickPi3 është instaluar tashmë.

Së fundi, instaloni të gjitha varësitë e projektit duke përdorur komandën:

sudo curl https://raw.githubusercontent.com/DexterInd/Brick… | bash

Për këtë hap, BrickPi3 juaj do të duhet të jetë i lidhur me internetin. Ekzistojnë një numër bibliotekash nga të cilat varet projekti, përfshirë disa nga ato thelbësore nga Daniel Walton (@dwalton76) në Github, të cilat përdoren për të zgjidhur kubin e Rubikut.

Hapi 4: Zgjidhni një Kub Rubik

Zgjidhni një Kub Rubik
Zgjidhni një Kub Rubik
Zgjidhni një Kub Rubik
Zgjidhni një Kub Rubik
Zgjidhni një Kub Rubik
Zgjidhni një Kub Rubik

Vendosni një kub Rubik të pazgjidhur në djep. Drejtoni komandën

sudo python ~/Dexter/BrickPi3/Projects/BricKuber/BricKuber.py

Roboti do ta kthejë kubin në çdo fytyrë dhe kamera do të marrë 6 fotografi, një nga secilën anë të Kubit. Raspberry Pi do të përcaktojë konfigurimin e kubit nga gjashtë fotografitë. Konfigurimi Cube do t'i kalohet bibliotekës kociemba Python për të gjetur një zgjidhje efikase. Më në fund, roboti do të ekzekutojë lëvizjet për të zgjidhur Kubin e Rubikut!

Hapi 5: Kodi Burimor

I gjithë kodi burimor për BricKuber mund të gjendet në repon tonë me burim të hapur github këtu.

Ky projekt përdor paketat e mëposhtme softuerike të instaluara nga komanda

Recommended: