Съдържание:
- Стъпка 1: Инструменти и материали
- Стъпка 2: Изградете го
- Стъпка 3: Подгответе софтуера
- Стъпка 4: Решете куб на Рубик
- Стъпка 5: Изходният код
Видео: BricKuber Project - робот за решаване на кубчета Raspberry Pi Rubiks: 5 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:54
BricKuber може да разреши куба на Рубик за около 2 минути.
BricKuber е робот за решаване на кубчета на Рубик с отворен код, който можете да създадете сами
Искахме да създадем робот за решаване на куб Рубикс с Raspberry Pi. Вместо да се стремим към бързина, ние отидохме с простота: ако имате Raspberry Pi, комплект BrickPi и стандартен комплект LEGO Mindstorms EV3 или NXT, би трябвало лесно да следвате нашите стъпки. Софтуерът е написан на езика за програмиране на Python. Можете да видите целия изходен код на Github тук.
Предистория Кубикът на Рубик наскоро започна да се завръща. Изобретена през 1974 г., тя е най-продаваната играчка в света. Но тяхното решаване изисква мисъл, усилия и умения… така че защо да не позволите на робота да го направи? В този проект ние вземаме Raspberry Pi, BrickPi и набор от LEGO Mindstorms и изграждаме робот за решаване на кубчета на Рубик. Просто поставете нерешен куб на Рубик в решателя, стартирайте програмата python и кубът на вашия Рубик е решен! Проектът използва Pi за директно решаване на куба на Рубик. BrickPi3 прави нерешения куб на Рубик, а Raspberry Pi прави снимка на всяка страна на куба на Рубик с камерата Raspberry Pi. Pi създава текстова карта на цветните квадратчета, която показва къде се намират на куба. Когато изцяло картографира куба, Pi използва библиотеката на python „kociemba“, за да очертае движенията, необходими за решаване на куба на Рубик. Тази информация е взета от Pi и BrickPi3 за решаване на куба на Рубик с помощта на LEGO моторите. Резултатът: решен куб на Рубик.
Стъпка 1: Инструменти и материали
- BrickPi3 - Ще използваме BrickPi, за да контролираме LEGO двигателите, които решават решаването на кубчета на Рубик.
- Raspberry Pi - Pi ще извършва обработката, ще прави снимки и ще командва BrickPi.
- Камера Raspberry Pi - Камерата Pi ще направи снимка на неразрешения куб Рубикс.
- Ethernet кабел - Ще ви е необходимо вашето устройство да бъде свързано към интернет. Ако искате да направите това през wifi, това също е добре!
- Raspbian for Robots SD Card - Софтуерът, който изпълнява Raspberry Pi. Това идва с повечето софтуер, необходим за този урок. Можете също да изтеглите софтуера безплатно.
- Комплект LEGO Mindstorms EV3 (31313) - Ще ви трябват купчина LEGO и два големи двигателя, един серво мотор и ултразвуков сензор.
- Кубик на Рубик - Намерихме такъв, който се върти доста свободно тук. Можете обаче да използвате почти всеки куб Рубик 9x9x9.
Стъпка 2: Изградете го
Изграждане на Solver
Този дизайн е вдъхновен от дизайна MindCub3r за LEGO EV3. За да изградите BricKuber, започнете с изграждането на MindCub3r. Пълни инструкции за изграждане на LEGO можете да намерите тук.
Дизайнът на кубика за решаване на Rubiks има три основни движещи се части. Първият е люлка, която държи куба на Рубик. Вторият е разбъркващият, ръка, която се използва за обръщане на куба на Рубик.
Накрая добавяме рамо за камера. В оригиналния дизайн на MindCubr, това държи цветния сензор EV3 над куба на Рубик. В нашия модифициран дизайн той държи Raspberry Pi камера над куба на Рубик. Използваме два двигателя LEGO Mindstorms, за да манипулираме куба: първият седи под люлката, за да завърти куба, а вторият премества рамото за разбъркване, за да завърти куба на противоположна ос.
Сглобете BrickPi3
Тук можете да намерите инструкции за сглобяване на BrickPi3. Ще трябва да съберем кутията, да прикачим BrickPi3, Raspberry Pi, Raspberry Pi камерата, да добавим SD карта и да добавим батерии. За да улесните настройката на софтуера, Raspbian for Robots се доставя с по -голямата част от софтуера, който вече ще ви е необходим. Ще ви трябва поне 8 GB SD карта и ще искате да разширите диска, за да пасне на пълния размер на SD картата.
Прикрепете BrickPi3
Добавяме BrickPi3 към монтажа на LEGO. Използвахме „крилата“на LEGO EV3, за да поддържаме BrickPi3 и да го изравним с тялото на BricKuber. Това е добра стъпка за добавяне на 8XAA батерии към захранващия блок и закрепване на захранващия блок BrickPi3 към монтажа на LEGO. За програмиране можете да захранвате BrickPi3 чрез USB захранване към Raspberry Pi, но за да преместите двигателите, ще трябва да захранвате с Power Pack.
Свържете двигателите към BrickPi3
Прикрепете двигателя за разбъркване към моторния порт „MD“. Прикрепете двигателя на люлката към порта „MA“на BrickPi3. Прикрепете двигателя на сензора на камерата към порта „MC“(това е по-малкият сервоподобен двигател). Въпреки че няма да преместваме камерата, може да искате да коригирате местоположението на камерата с помощта на двигателите.
Прикрепете камерата Raspberry Pi
Използвайте поддръжката на LEGO Camera, прикрепете камерата. Малкият черен обектив на фотоапарата трябва да се побере между двете опори на лъч LEGO. Закрепете камерата на място към опорите на LEGO с малко електрическа лента. Това е подходящ момент да се уверите, че камерата е в позиция, за да може да заснеме целия куб на Рубик. Можете да направите тестова снимка с командата raspistill
raspistill -o cam.jpg
Проверете дали кубът е добре центриран в средата на картината.
Стъпка 3: Подгответе софтуера
Можете да използвате всяка версия на Raspbian или Raspbian за Robots, нашето персонализирано изображение, което идва с вече инсталиран BrickPi3. Ако използвате стандартна версия на Raspbian, можете да инсталирате библиотеките BrickPi3 с помощта на командата
sudo curl -kL dexterindustries.com/update_brickpi3 | баш
Тази стъпка ще инсталира всички библиотеки, необходими за стартиране на BrickPi3 на вашето Raspbian изображение. Пропуснете тази стъпка, ако използвате Raspbian за роботи: BrickPi3 вече е инсталиран.
И накрая, инсталирайте всички зависимости на проекта, като използвате командата:
sudo curl https://raw.githubusercontent.com/DexterInd/Brick… | баш
За тази стъпка вашият BrickPi3 ще трябва да бъде свързан към интернет. Има редица библиотеки, от които проектът зависи, включително някои важни от Даниел Уолтън (@dwalton76) на Github, които се използват за решаване на куба на Рубик.
Стъпка 4: Решете куб на Рубик
Поставете неразрешен куб Рубик в люлката. Изпълнете командата
sudo python ~/Dexter/BrickPi3/Проекти/BricKuber/BricKuber.py
Роботът ще обърне куба към всяко лице и камерата ще направи 6 снимки, по една от всяка страна на куба. Raspberry Pi ще определи конфигурацията на куба от шестте снимки. Конфигурацията на Cube ще бъде предадена на библиотеката на kociemba Python, за да се намери ефективно решение. И накрая, роботът ще изпълни ходовете, за да реши куба на Рубик!
Стъпка 5: Изходният код
Целият изходен код за BricKuber може да бъде намерен в нашето github репо с отворен код тук.
Този проект използва следните софтуерни пакети, инсталирани от командата
Препоръчано:
Решаване на таблици на истината: 10 стъпки
Решаване на таблици на истината: Таблицата на истината е начин да визуализирате всички резултати от даден проблем. Този набор от инструкции е предназначен за хора, които започват да се занимават с дискретна математика. Днес ще практикуваме с примерен проблем, който е специфичен за тези инструкции. Вие ще
Решаване на лабиринт Boe-Bot: 3 стъпки
Лабиринт, решаващ Boe-Bot: Здравейте! Казвам се Маахум Имран. Част съм от клас по технология 11 клас. Бяхме предизвикани със задача да вземем нашия Boe-Bot и да го програмираме, за да преминем умело през лабиринт. В началото това беше трудно предизвикателство и ще призная, без помощ
Картонени кубчета и форми 1: 4 стъпки (със снимки)
Картонени кубчета и форми 1: Докато експериментирах с някои дървени шишчета и картон, открих няколко начина да направя кубчета и други форми от прости материали. Като се представя като инструктируем, се надявам да насърча конструктивната игра и учене. Вариации на тази инструкция
Възможност за подреждане на LED кубчета (RGB): 11 стъпки
Stack-Able LED Cubes (RGB): Направих този проект за конкурса make it glow 2018. Идеята е, че това ще бъде основа, където можете да поставите малки LED кубчета отгоре и те ще светнат. Те биха се придържали заедно с използването на магнити
Вземете RBG LED веригата от светещи кубчета лед: 4 стъпки
Вземете RBG LED веригата от светещи кубчета лед: Може би сте виждали тези светещи кубчета лед преди. Те светят с различен цвят и имат много режими, но са доста скъпи ($ 4- $ 6 всеки) и продължават само няколко часа. Ще ви покажа как да извлечете веригата и да я захранвате с друг източник