Агуулгын хүснэгт:
- Алхам 1: багаж хэрэгсэл, материал
- Алхам 2: Үүнийг бүтээх
- Алхам 3: Програм хангамжийг бэлтгэ
- Алхам 4: Рубикийн шоог шийдээрэй
- Алхам 5: Эх код
Видео: BricKuber төсөл - Raspberry Pi Rubiks Cube шийдвэрлэх робот: 5 алхам (зурагтай)
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:05
BricKuber нь Рубикийн шоог 2 минут хүрэхгүй хугацаанд шийдэх боломжтой.
BricKuber бол нээлттэй эх сурвалжтай Рубикын шоо шийдвэрлэх робот бөгөөд та өөрөө бүтээж чадна
Бид Raspberry Pi -ийн тусламжтайгаар кубикийг шийддэг робик бүтээхийг хүссэн. Хурдтай явахын оронд бид энгийн байдлаар явсан: хэрэв танд Raspberry Pi, BrickPi хэрэгсэл, стандарт LEGO Mindstorms EV3 эсвэл NXT иж бүрдэл байгаа бол та бидний мөрийг амархан дагах ёстой. Програм хангамж нь Python програмчлалын хэл дээр бичигдсэн болно. Та Github дээрх бүх эх кодыг эндээс харах боломжтой.
Үндсэн мэдээлэл Рубикийн шоо саяхан эргэн ирж эхлэв. 1974 онд зохион бүтээсэн бөгөөд энэ нь дэлхийн хамгийн их борлуулалттай тоглоом юм. Гэхдээ тэдгээрийг шийдвэрлэхийн тулд бодол, хүчин чармайлт, ур чадвар шаардагддаг… Тиймээс яагаад робот үүнийг хийхийг зөвшөөрдөггүй юм бэ? Энэхүү төсөлд бид Raspberry Pi, BrickPi, LEGO Mindstorms -ийн багцыг авч, Рубикийн шоо шийдвэрлэх роботыг бүтээдэг. Зүгээр л шийдэгдээгүй Рубикийн кубыг уусгагч дээр байрлуулж, питон програмыг ажиллуул, тэгвэл таны Рубикийн шоо шийдэгдэх болно! Төсөл нь Pi -г ашиглан Рубикийн шоог шууд шийддэг. BrickPi3 нь шийдэгдээгүй Рубикийн шоог авдаг бөгөөд Raspberry Pi нь Raspberry Pi камертай Рубикийн шоо бүрийн хоёр талын зургийг авдаг. Pi нь өнгөт квадратуудын текстийн газрын зургийг гаргаж, куб дээр хаана байрлаж байгааг харуулдаг. Шоо бүрэн дүрсэлсэн бол Pi нь "kociemba" питоны номын санг ашиглан Рубикийн шоог шийдвэрлэхэд шаардлагатай алхамуудыг гаргаж өгдөг. Энэхүү мэдээллийг Pi ба BrickPi3 LEGO мотор ашиглан Рубикийн шоог шийдвэрлэх зорилгоор авсан болно. Үр дүн: шийдэгдсэн Рубикийн шоо.
Алхам 1: багаж хэрэгсэл, материал
- BrickPi3 - Бид BrickPi -ийг ашиглан Рубикийн шоо уусгагчийг шийддэг LEGO хөдөлгүүрийг удирдах болно.
- Raspberry Pi - Pi нь боловсруулах, зураг авах, BrickPi -г тушаах болно.
- Raspberry Pi Camera - Pi Camera нь шийдэгдээгүй Рубик шооны зургийг авах болно.
- Ethernet кабель - Интернетэд холбогдохын тулд танд машин хэрэгтэй болно. Хэрэв та үүнийг Wi -Fi ашиглан хийхийг хүсч байвал энэ нь зүгээр юм!
- Raspbian for Robots SD Card - Raspberry Pi -ийг ажиллуулдаг програм хангамж. Энэ нь энэ хичээлд шаардлагатай ихэнх програм хангамжтай хамт ирдэг. Та мөн програмыг үнэгүй татаж авах боломжтой.
- LEGO Mindstorms EV3 Kit (31313) - Танд LEGO болон хоёр том мотор, нэг servo мотор, хэт авианы мэдрэгч хэрэгтэй болно.
- Рубикийн шоо - Бид энд чөлөөтэй эргэлддэг нэгийг олсон. Та бараг 9x9x9 хэмжээтэй рубик шоог ашиглаж болно.
Алхам 2: Үүнийг бүтээх
Шийдвэрлэгчийг бий болгох
Энэхүү загварыг LEGO EV3 -ийн MindCub3r загвараас санаа авсан болно. BricKuber -ийг бүтээхийн тулд MindCub3r -ийг эхлүүлээрэй. LEGO бүтээх зааварчилгааг эндээс авах боломжтой.
Рубик шоо уусгагчийн загвар нь гурван үндсэн хөдлөх хэсэгтэй. Эхнийх нь Рубикийн шоог барих өлгий юм. Хоёр дахь нь хутгагч, Рубикийн шоог эргүүлэхэд ашигладаг гар юм.
Эцэст нь бид камерын гарыг нэмж байна. MindCubr -ийн анхны загвараар энэ нь EV3 өнгөний мэдрэгчийг Рубикийн шоо дээр байрлуулсан байв. Бидний өөрчилсөн загварт Rubberry -ийн шоо дээр Raspberry Pi камер байрлуулсан болно. Бид LEGO Mindstorms -ийн хоёр мотор ашиглан кубыг удирддаг: эхнийх нь өлгийн доор сууж кубыг эргүүлнэ, хоёр дахь нь солигч гарыг хөдөлгөж кубыг эсрэг тэнхлэг дээр эргүүлнэ.
BrickPi3 -ийг угсарна уу
BrickPi3 -ийн угсралтын зааврыг эндээс олж болно. Бид хэргийг угсарч, BrickPi3, Raspberry Pi, Raspberry Pi камерыг холбож, SD карт нэмж, батерей нэмэх шаардлагатай болно. Програмыг тохируулахад хялбар болгохын тулд Raspbian for Robots нь танд тохируулах шаардлагатай ихэнх програм хангамжийг дагалддаг. Танд дор хаяж 8 ГБ хэмжээтэй SD карт хэрэгтэй бөгөөд та дискнийхээ хэмжээг SD картныхаа хэмжээгээр багтааж томруулахыг хүсэх болно.
BrickPi3 -ийг хавсаргана уу
Бид BrickPi3 -ийг LEGO угсралтад нэмдэг. Бид Licko EV3 -ийн "далавч" -ыг ашиглан BrickPi3 -ийг дэмжиж, BricKuber -ийн биетэй тэгшлэв. Энэ бол 8XAA батерейг цахилгаан тэжээлд нэмж, BrickPi3 тэжээлийн багцыг LEGO угсралтад холбох сайн алхам юм. Програмчлалын хувьд та BrickPi3 -ийг USB хүчээр Raspberry Pi руу тэжээх боломжтой боловч хөдөлгүүрийг хөдөлгөхийн тулд тэжээлийн багцаар тэжээл өгөх шаардлагатай болно.
Моторуудыг BrickPi3 руу холбоно уу
Shuffler моторыг "MD" мотор порт руу холбоно уу. Өлгий моторыг BrickPi3 дээрх "MA" порт руу холбоно уу. Камерын мэдрэгчийн моторыг "MC" порт руу холбоно уу (энэ нь жижиг servo шиг мотор юм). Хэдийгээр бид камерыг хөдөлгөхгүй ч гэсэн та мотор ашиглан камерын байршлыг тохируулахыг хүсч магадгүй юм.
Raspberry Pi камерыг хавсаргана уу
LEGO Camera -ийн дэмжлэгийг ашиглан камераа холбоно уу. Камерын жижиг хар линз нь LEGO цацрагийн хоёр тулгуурын хооронд багтах ёстой. Камерыг LEGO -ийн тулгуур дээр цахилгаан соронзон хальсны тусламжтайгаар бэхлээрэй. Энэ бол камер нь Рубикийн шоог бүхэлд нь авах боломжтой байрлалд байгаа эсэхийг шалгахад тохиромжтой үе юм. Та raspistill командыг ашиглан туршилтын зураг авах боломжтой
raspistill -o cam.jpg
Зургийн дунд шоо сайн төвтэй эсэхийг шалгаарай.
Алхам 3: Програм хангамжийг бэлтгэ
Та Raspbian эсвэл Raspbian for Robots -ийн аль ч хувилбарыг ашиглаж болно. Хэрэв та Raspbian -ийн стандарт хувилбарыг ашигладаг бол тушаалыг ашиглан BrickPi3 номын санг суулгаж болно
sudo curl -kL dexterindustries.com/update_brickpi3 | bash
Энэ алхам нь таны Raspbian Image дээр BrickPi3 -ийг ажиллуулахад шаардлагатай бүх номын санг суулгах болно. Хэрэв та роботуудад зориулсан Raspbian ашиглаж байгаа бол энэ алхамыг алгасаарай: BrickPi3 аль хэдийн суулгасан байна.
Эцэст нь, төслийн бүх хамаарлыг дараах тушаалыг ашиглан суулгаарай:
sudo curl https://raw.githubusercontent.com/DexterInd/Brick… | bash
Энэ алхамыг хийхийн тулд таны BrickPi3 интернетэд холбогдох шаардлагатай болно. Төслөөс хамаардаг хэд хэдэн номын сан байдаг бөгөөд үүнд Рубикийн шоог шийдвэрлэхэд ашигладаг Github дээрх Daniel Walton (@dwalton76) зарим чухал номын сан байдаг.
Алхам 4: Рубикийн шоог шийдээрэй
Шийдэгдээгүй Рубикийн шоог өлгийд хий. Командыг ажиллуулна уу
sudo python ~/Dexter/BrickPi3/Projects/BricKuber/BricKuber.py
Робот шоог нүүр болгон руу эргүүлэх бөгөөд камер нь кубын хоёр тал тус бүр 6 зураг авах болно. Raspberry Pi нь зургаан зургаас кубын тохиргоог тодорхойлох болно. Үр дүнтэй шийдлийг олохын тулд Cube тохиргоог kociemba Python номын санд дамжуулах болно. Эцэст нь робот Рубикийн шоог шийдэх алхамуудыг хийх болно.
Алхам 5: Эх код
BricKuber -ийн бүх эх кодыг манай github нээлттэй эх сурвалжаас олж болно.
Энэхүү төсөл нь тушаалаар суулгасан дараах програм хангамжийн багцыг ашигладаг
Зөвлөмж болгож буй:
Maze шийдвэрлэх робот (Бое-бот): 5 алхам
Maze Solving Robot (Boe-bot): Энэхүү заавар нь энгийн материал, роботыг ашиглан өөрийн лабиринт шийддэг роботыг хэрхэн яаж хийх, хэрхэн хийхийг танд үзүүлэх болно. Үүнд кодчилол орно, тиймээс компьютер бас хэрэгтэй болно
Эхлэгчдэд зориулсан Arduino -ийн 10 үндсэн төсөл! Нэг самбараар хамгийн багадаа 15 төсөл хий !: 6 алхам
Эхлэгчдэд зориулсан Arduino -ийн 10 үндсэн төсөл! Хамгийн багадаа 15 төслийг нэг самбараар хий !: Arduino Project & Хичээлийн зөвлөл; Arduino -ийн үндсэн 10 төслийг багтаасан болно. Бүх эх код, Gerber файл болон бусад. SMD байхгүй байна! Хүн бүрт хялбар гагнах. Зөөврийн болон сольж болох хялбар бүрэлдэхүүн хэсгүүд. Та хамгийн багадаа 15 төсөл хийх боломжтой
ПХБ -ийн дизайны асуудлыг хэрхэн шийдвэрлэх вэ? 8 алхам (зурагтай)
ПХБ -ийн дизайны асуудлыг хэрхэн шийдвэрлэх вэ ?: Би ПХБ -ийг зохион бүтээх болгондоо өөрийн хязгаарыг бага зэрэг шахаж, урьд өмнө хэзээ ч туршиж үзээгүй зүйлийг туршиж үзэхийг хүсдэг бол энэ удаад энэ самбарыг гадны программистгүйгээр програмчлах боломжийг нэмэхийг хүсч байна. Би CH гэж нэрлэгддэг UART руу хөрвүүлэгч хямд USB оллоо
Ухаалаг лабиринт шийдвэрлэх робот: 3 алхам
Зөн совинтой лабиринт шийддэг робот: Энэхүү зааварчилгаанд та хүний зурсан лабиринтийг шийддэг лабиринт хэрхэн бүтээх талаар сурах болно. Ихэнх роботууд зурсан эхний хэлбэрийн лабиринтуудыг шийддэг бол (та мөрүүдийг дагах ёстой, энэ бол зам) энгийн хүмүүс Хоёрдахь төрлийн лабиринт зурах хандлагатай байдаг
USB -ээр ажилладаг шарагч! Энэхүү төсөл нь хуванцар / мод / цаасаар шатаж болно (хөгжилтэй төсөл нь маш нарийн мод байх ёстой): 3 алхам
USB -ээр ажилладаг шарагч! Энэ төсөл нь хуванцар / мод / цаасаар шатаж болно (хөгжилтэй төсөл нь маш нарийн мод байх ёстой): ЭНЭ USB ашиглан бүү хий !!!! Энэ нь бүх сэтгэгдлээс таны компьютерийг гэмтээж болохыг олж мэдсэн. миний компьютер сайн байна 600ma 5V утасны цэнэглэгч ашиглана уу. Би үүнийг ашигласан бөгөөд энэ нь сайн ажилладаг бөгөөд хэрэв та цахилгаан тэжээлийг зогсоохын тулд хамгаалалтын залгуур ашиглавал юу ч гэмтээхгүй