Новое видео на YouTube демонстрирует мировой рекорд по скорости сборки роботом кубика Рубика. Новое рекордное время 0,38 секунды значительно превосходит результат прежнего рекордсмена — робота Sub1 Reloaded компании Infineon, который смог справиться с задачей за 0,64 секунды.
На нашем портале мы писали о том, как робо-гонка по скорости сборки кубика Рубика набирала обороты. Интересно, как долго сможет продержаться нынешний результат в 0,38 секунды.
Нового рекордсмена его создатель – студент Массачусетского технологического института Бен Кац — называет просто «штуковиной», программное обеспечение для ней написал Джаред Ди Карло. Кац использовал старые двигатели от других робототехнических конструкций, а также прикупил более совершенные новые и две камеры PlayStation Eye за $7. Они расположены на противоположных углах конструкции, так что можно обозревать все грани кубика.
«Мы использовали самый дешевый кубик, который смогли найти на Amazon Prime, потому что полагали, что придется много их поломать в конечном итоге, но почему-то на сотни сборок потребовалось только четыре кубика, — пишет Ди Карло в блоге. — Мы заметили, что все механические сборщики кубика Рубика используют шаговые двигатели, и подумали, что мы могли бы добиться лучшего результата с более совершенными двигателями. Так мы и сделали».
В частности, были использованы шесть двигателей серии Kollmorgen ServoDisc U9. Им нужно лишь 10 мс, чтобы выполнить четверть поворота кубика, достигая скорости вращения 1000 оборотов в минуту.
Робот использует алгоритм min2phase, чтобы решить головоломку, приняв полученные с помощью камеры данные и преобразовав их в последовательность выполняемых двигателями ходов. Этот алгоритм несколько лет писал разработчик программного обеспечения Шуан Чен. Но гораздо больше усилий потребовалось для создания ПО, обеспечивающего реальную работу и синхронизацию двигателей, чтобы предотвратить столкновения при выполнении движений.
Выяснилось, что сжимание кубика делает его более жестким и на самом деле помогает при сборке. Как правило, алгоритму требуется от 19 до 23 ходов для сборки кубика. Рекордная сборка была выполнена за 21 ход.