Привет, Хабр! 22 марта я выступал с презентацией на ROS Meetup в МФТИ, и по горячим следам решил оформить материал в статью. Хочу рассказать про опыт нашей команды Robonine в разработке манипулятора на 6 степеней свободы. Проект пока находится на этапе тестирования прототипа, но за это время накопилось достаточно материала, чтобы поделиться с сообществом - от мотивации и выбора кинематической схемы до борьбы с люфтами бюджетных сервоприводов и топологической оптимизации конструкции.

Прототип манипулятора без чехла
Прототип манипулятора без чехла

Как всё началось

В начале 2025 года меня сильно зацепило видео проекта Aloha Mobile от исследователей из Стэнфорда и Google. На нём их мобильная платформа самостоятельно поливала цветы и мыла посуду. Ещё год назад это выглядело как существенный прогресс в робототехнике - обучение с подражанием (imitation learning) на реальных задачах в домашней среде.

Проект открытый, я пошёл смотреть комплектующие - и цена сильно удивила.

Стоимость существующих решений:

  • Aloha 2 (настольная сборка из 4 манипуляторов, Trossen Robotics): ~$19 000

  • Aloha Mobile (мобильная платформа): ~$26 000

  • Agilex Cobot Magic: ~$30 000

Aloha Mobile — мобильная платформа от Stanford/Google с 4 манипуляторами
Aloha Mobile - мобильная платформа от Trossen Robotics с 4 манипуляторами

Есть и другие аналогичные разработки, но ценовой порядок примерно одинаковый. Для исследовательской лаборатории это, может, и приемлемо, но для более широкого применения - барьер слишком высокий. Мы решили попробовать сделать значительно дешевле.

Выбор приводов: почему серводвигатели

Ключевой и самый дорогой компонент манипулятора - приводы. Это примерно 60% стоимости комплектующих (BOM). Соответственно, если цель - сделать дешёвый манипулятор, начинать нужно именно с них.

Из вариантов в бюджетном сегменте:

  • Шаговые двигатели - хороший момент, но нет обратной связи по положению без дополнительного энкодера, склонность к пропуску шагов под нагрузкой.

  • Серводвигатели (smart servo) - встроенный энкодер, обратная связь, возможность последовательного подключения (daisy chain).

Ценовой диапазон примерно одинаковый, в разных бюджетных проектах используют и те, и другие. Мы остановились на серводвигателях.

Feetech STS3215

Feetech STS3215 - один из наиболее популярных бюджетных smart серво двигателей. За $15–30 за штуку мы получаем:

  • Магнитный энкодер на 12 бит (4096 позиций)

  • Рабочий момент в районе 15 кг·см

  • Вес 55 грамм

  • Последовательное подключение по шине (TTL/RS485)

Среди DIY-сообщества особенно популярна модель Feetech STS3215, которая используется в таких открытых проектах, как 5-осевой SO-ARM100. Мы тоже выбрали эту линейку как основу.

Выбор кинематической схемы: полу-SCARA

Следующее важное решение - выбор кинематики. Классический антропоморфный манипулятор с длинным плечом (скажем, 650 мм) для нагрузки в 1кг создаёт момент:

M = F × L = 1 кг × 9.81 м/с² × 0.65 м ≈ 6.38 Н·м ≈ 65 кг·см

на сервоприводы в основании. При бюджетных серво с моментом 15 кг·см это просто нерабочая схема. Чтобы решить эту проблему, мы выбрали конструкцию полу-SCARA:

  • Вертикальное перемещение - линейный узел с шарико-винтовой передачей (по аналогии с 3D-принтерами).

  • SCARA-часть - звенья работают в горизонтальной плоскости, что снимает нагрузку от веса конструкции с приводов этих осей.

Лего-прототип для проверки кинематической концепции
Лего-прототип для проверки кинематической концепции

Начинали с Lego Technic - быстрый способ проверить идею кинематики.

CAD-модель первого прототипа — вид полу-SCARA конструкции
CAD-модель первого прототипа — вид полу-SCARA конструкции

CAD-модель первого прототипа: видна башня с шарико винтовой передачей обеспечивающая двидение по оси z, далее идет две консоли, которые перемащаются только в горизонтальной плоскости (SCARA-часть) и предплечье манипулятора с гриппером.

Проблема люфта (backlash) в бюджетных сервоприводах

Вот этот момент мы поначалу недооценили. Когда начали тестировать первый прототип, стало ясно, что люфт в бюджетных сервоприводах - это серьёзная проблема.

Иллюстрация backlash в зубчатой передаче
Backlash - зазор между зубьями шестерён при изменении направления вращения

Наши измерения показали, что для серводвигателей бюджетной категории люфт может существенно отличаться от паспортных значений: 0.8° вместо заявленных <0.5°. Казалось бы, мелочь - но на рычаге 650 мм угловая ошибка в 0.8° на одном суставе даёт линейное отклонение порядка 9 мм. А если сложить люфты всех суставов, добавить податливость конструкции, люфты в узлах сопряжения и ограниченную точность энкодера - ошибка абсолютного позиционирования становится уже больше 1 см. Такую ошибку очень сложно компенсировать программно.

Компенсация люфта парными сервоприводами

Для решения этой проблемы мы используем комбинацию из двух серводвигателей на каждую ось. Двигатели работают с небольшим преднатягом (preload) относительно друг друга - один «толкает» по часовой стрелке, другой - против. Это практически полностью устраняет мёртвую зону (backlash).

CAD-модель узла с двумя серводвигателями для компенсации люфта
CAD-модель узла с двумя серводвигателями для компенсации люфта

На схеме выше показана конструкция узла с парными серводвигателями, компенсация backlash осуществляется за счёт преднатяга создаваемого вторым двигателем. Важно отметить, что такой подход хорошо работает при небольшой нагрузке, поскольку повышенное трение шестерён заметно ускоряет износ редуктора. Тем не менее, для нашей задачи (манипулятор не промышленный, нагрузки умеренные) - это хороший компромисс.

Стенд для измерения люфта

Измерить люфт корректно - отдельная задача. Проблема в том, что люфт очень легко «выбрать» при прикосновении к шестерне измерительным инструментом. Поэтому мы собрали специальную установку, в которой используется резинка, обеспечивающая минимальный преднатяг без искажения результатов.

Самодельная установка для измерения backlash
Стенд для измерения backlash: резинка обеспечивает минимальный преднатяг, не искажающий результат

Подробное описание методики измерения и результатов описано в статье, которая сейчас проходит финальную стадию рецензирования в журнале HardwareX.

Вторая версия: плотная компоновка

На изображении ниже - один из самых сложных узлов второй версии манипулятора. Здесь серводвигатели расположены попарно для работы с двумя перпендикулярными осями.

Модель узла собранная из оргстекла
Модель узла собранная из оргстекла

Плотная компоновка узла второй версии: пары серво работают на две перпендикулярные оси.

Расположение всех узлов

Полная конструкция насчитывает 11 серводвигателей и 1 шаговый двигатель (для вертикального подъёма с шарико винтовой передачей).

Расположение всех 12 сервоприводов и шагового двигателя
Расположение всех 11 сервоприводов и шагового двигателя

На фото выше показана нумерация приводов манипулятора: 11 серводвигателей + 1 шаговый для линейной оси.

Тестовая сборка

Узел из листового металла. Видео с движением
Узел из листового металла. Видео в движении

Далее наш инженер перешел к тестированию работы узла с нагрузкой на ипровизированном стенде.

Оптимизация стоимости: от 46 деталей к 6

Сборка была передана на оценку производством. Только заказных металлических деталей было 46 наименований (лазерная резка, ЧПУ-обработка алюминия, токарные работы). Общая себестоимость для единичного производства составляла порядка 150 000 рублей (~$1500). Отпускная цена выходила близкой к тому, что предлагает Agilex со своим PIper 6 DOF - то есть ценовое преимущество терялось.

Такая стоимость нас не устроила. На следующем этапе мы радикально упростили конструкцию. Рассматривали несколько вариантов:

Конструкция манипулятора из алюминиевых профилей
Конструкция манипулятора из алюминиевых профилей

Радикальное упрощение по типу Aharobot (минимум деталей, максимум компромиссов по жёсткости)

Более жеситкий вариант 6DOF манипулятора
Более жеситкий вариант 6DOF манипулятора

Выше показан более жёсткий вариант с сохранением ключевых конструктивных решений, на которым мы решили остановиться.

Стоимость вместе с доставкой из Китая составила $452
Стоимость вместе с доставкой из Китая составила $452

В итоге число заказных деталей сократилось в 7 раз — с 46 до примерно 6 наименований. Стоимость вместе с доставкой из Китая составила $452. Обащая стоимоть BOM до примерно $900.

Топологическая оптимизация

Топологическая оптимизация жесткости конструкции. Полная статья
Топологическая оптимизация жесткости конструкции. Полная статья

После упрощения конструкции мы провели топологическую оптимизацию ключевых несущих элементов. Результаты:

Параметр

Исходная конструкция

После оптимизации

Масса

1.937 кг

2.376 кг (+22%)

Макс. напряжение

93 МПа

25 МПа (↓ в 3.7 раза)

Отклонение по оси Y

1.05 мм

0.41 мм (↓ в 2.5 раза)

Отклонение по оси X

1.03 мм

0.31 мм (↓ в 3.3 раза)

Отклонение по оси Z

0.62 мм

0.21 мм (↓ в 3.0 раза)

При умеренном увеличении массы на 22% мы получили уменьшение максимального напряжения почти в 4 раза и уменьшение отклонений по осям в 2.5–3.3 раза. Подробный материал по оптимизации опубликован на нашем сайте.

Собранный прототип после топологической оптимизации. Видео работы манипулятора
Собранный прототип после топологической оптимизации. Видео работы манипулятора

Финальная конструкция после топологической оптимизации - характерные «органические» формы рёбер жёсткости.

Финальная конструкция и концепт

Итоговая конструкция объединяет все наработки: полу-SCARA кинематику, парные серво для компенсации люфта, оптимизированный BOM и топологически оптимизированные элементы.

Настольная установка из 4х манипуляторов
Настольная установка из 4х манипуляторов
Манипулятор без чехла
Манипулятор без чехла
Использование на мобильной платформе
Использование на мобильной платформе

Итого: что получилось

Ключевые решения, которые позволили снизить стоимость:

  1. Бюджетные серводвигатели (Feetech STS3215 или Feetech STS3250, $15 - 40 за штуку) вместо дорогих Dynamixel.

  2. Полу-SCARA кинематика - снижение нагрузки на приводы за счёт горизонтальной работы части звеньев.

  3. Парные серво с преднатягом - компенсация люфта без дорогих безлюфтовых редукторов.

  4. Радикальное упрощение BOM - с 46 до 6 заказных деталей.

  5. Топологическая оптимизация - снижение напряжений в 3.7 раза при росте массы всего на 22%

Стоимость комплектующих для одного манипулятора: ~ $900 .