Arduino

технологии

Hexapod CR-6: базовый функционал, первые доработки и планы

Первые впечатления

После сборки все заработало без особых проблем, что очень порадовало: занес в память контроллера основные движения и опробовал робота. Кстати, забыл сказать что в мой комплект не входили ни аккумуляторы, ни зарядное устройство, поэтому было куплено 2 аккумулятора 7.4V вольта и крутое зарядное устройство SkyRC IMAX B6AC, позволяющее настраивать кучу параметров зарядки и балансировки. Робот довольно резво передвигается и разворачивается, можно выбирать, на какой высоте будет корпус во время движения, что влияет на его проходимость.

Hexapod CR-6

Несколько негативных моментов тоже было - куда без них? Во-первых, приложение для записи команд в память контроллера работает только под Windows и оно довольно кривое в плане поддержки разных разрешений экрана. На тот момент в наличии у меня был только планшетный компьютер с разрешением менее чем FullHD, из-за чего приходилось изгаляться, подключая его то к телевизору, то как-то еще пытаясь решить проблему.

Во-вторых, в комплекте отсутствует разъем T-Plug для подключения аккумулятора к контроллеру - купил на avito, но времени потерял.

Legs

Ну и самое основное, про что и так знал: корявость реализации алгоритмов движения. Траектории движения конечностей очень сильно упрощены, из-за чего ноги постоянно проскальзывают. Усугубляет это то, что наконечники на них не резиновые или силиконовые, а из скользкой пластмассы. Но робот покупался именно с целью его доработок и программирования.

Первые доработки

Итак, первое, что было сделано - найдены подходящие наконечники для ног - резиновые, не скользящие и с металлическими шайбами внутри. Куплены в музыкальном магазине, так что скорее всего они предназначались для музыкального оборудования - колонок или комбобокса.

Legs

Далее был выбор будущей платформы для "мозга". Решено было установить рядом с контроллером плату Arduino Due - самую мощную из стандартных Arduino плат, так как на ней будет работать основной алгоритм расчета движения всех сервомоторов.

Также нужно было заменить пульт управления - он будет разрабатываться с нуля на базе платы Arduino Mega. Выбрал ее, потому что сложных расчетов на пульте не будет, но при этому Mega содержит больше памяти, чем Uno, и больше пинов, что позволит сделать столько органов управления, сколько понадобится.

На данном этапе разобрался с API контроллера робота. Да, он имеет свое API, что очень удобно, так как каждая "железка" должна заниматься своим делом. Контроллер будет работать с сервоприводами на низком уровне, а Arduino будет отвечать за алгоритмы всех движений. При этом все базовые возможности робота также останутся.

Планы

Первое, что нужно сделать - собрать пульт. Для обмена с роботом будут использоваться bluetooth-модули HC-05. Про то, как их подружить, я уже писал ранее. Второе - реализовать алгоритм движения вперед. Следующие статьи как раз будут посвящены этим довольно большим этапам разработки.

9 июня 2019