Всем привет! Представляю вашему вниманию мой проект — роборука на базе настольной лампы с напечатанными на 3d-принтере суставами.
За основу было решено взять лампу Икеа, которая благодаря использованию пружин всегда сохраняла заданную позицию. Соответственно в роборуке энергия сервоприводов расходуется только на изменение положения рычагов, а пружины удерживают вес руки и груза. Таким образом грузоподъемность манипулятора зависит от количества и конфигурации пружин. Например, в видео с испытанием максимальной грузоподъемности я использую 3 пружины в плечевом суставе и 1 в локтевом:
Технические характеристики:
Все суставы смоделированы в solidworks и напечатаны на 3d принтере. Рука пока имеет 5 степеней свободы и соответственно 5 серв. Я использовал 1- MG958, 2 — MG945 и 2-SG5010.
Контролер: Arduino Uno и SensorShield v5.
Захват: 12в магнит.
В тестовой программе используется библиотека VarSpeedServo. Она позволяет регулировать скорость сервоприводов и выполняет каждое движение только после предыдущего.
> Файлы для 3d-печати и полный список компонентов на Thingiverse
> Инструкция по сборке Instructables
> Страница проекта на Hackaday
Еще несколько фотографий:
Спасибо за внимание!
За основу было решено взять лампу Икеа, которая благодаря использованию пружин всегда сохраняла заданную позицию. Соответственно в роборуке энергия сервоприводов расходуется только на изменение положения рычагов, а пружины удерживают вес руки и груза. Таким образом грузоподъемность манипулятора зависит от количества и конфигурации пружин. Например, в видео с испытанием максимальной грузоподъемности я использую 3 пружины в плечевом суставе и 1 в локтевом:
Технические характеристики:
- 5 степеней свободы
- Полная длина: 690мм
- Грузоподъемность: 0,5кг (расстояние от базы до точки крепления груза 500мм)
Все суставы смоделированы в solidworks и напечатаны на 3d принтере. Рука пока имеет 5 степеней свободы и соответственно 5 серв. Я использовал 1- MG958, 2 — MG945 и 2-SG5010.
Контролер: Arduino Uno и SensorShield v5.
Захват: 12в магнит.
В тестовой программе используется библиотека VarSpeedServo. Она позволяет регулировать скорость сервоприводов и выполняет каждое движение только после предыдущего.
#include <VarSpeedServo.h>
int motorPin = 2;
VarSpeedServo myservo1;
VarSpeedServo myservo2;
VarSpeedServo myservo3;
VarSpeedServo myservo4;
VarSpeedServo myservo5;
void setup() {
pinMode(motorPin, OUTPUT);
myservo1.attach(11);
myservo2.attach(10);
myservo3.attach(6);
myservo4.attach(5);
myservo5.attach(3);
}
void loop() {
myservo1.write(150, 30, true);
myservo2.write(140, 30, true);
myservo4.write(160, 30, true);
myservo3.write(160, 30, true);
digitalWrite(motorPin, HIGH);
delay(500);
myservo3.write(90, 30, true);
myservo2.write(90, 30, true);
myservo1.write(70, 30, true);
myservo3.write(140, 30, true);
myservo5.write(180, 30, true);
delay(500);
digitalWrite(motorPin, LOW);
delay(500);
myservo3.write(90, 30, true);
}
> Файлы для 3d-печати и полный список компонентов на Thingiverse
> Инструкция по сборке Instructables
> Страница проекта на Hackaday
Еще несколько фотографий:
Спасибо за внимание!
Поделиться с друзьями
igruh
xtala
Работа и статья интересная. Только жаль, что не раскрыта тема выгоды. Где можно применить данную поделку, чтобы получить какую никакую выгоду или ускорение какого либо тех процесса? Естественно в домашних условиях.
A-Stahl
>в домашних условиях.
Ну разумеется никак. Если только не прикрутить её к стулу чтобы спину чесала.
dilukhin
А какую выгоду можно ожидать от новорожденного? (с)
akaragad
Спасибо! Проект задумывался исключительно в образовательных и развлекательных целях. Отсутствие бытовых применений один из главных сдерживающих факторов развития домашней робототехники. Создание необходимого софта и инфраструктуры для использования подобных манипуляторов для выполнения простейших действий под силу только крупным компаниям или исследовательским институтам.
DrPass
Ну это смотря какую прошивку в контроллер руки загрузить.
TR1K
Добрый день! Здорово… а насколько точно можно удерживать кончик манипулятора? Очень интересует точность… хотел бы такую штуку приспособить под шлифовалку, протянуть гибкий вал по верху или подвесить и заставить проезжать под заданными углами по траектории. Аааа… хочу.
ClearAirTurbulence
Тут не только точность, но и устойчивость нужна. Сабж гуляет во всех измерениях даже при работе практически без нагрузки, что уж говорить, когда ему на конец приделают рабочий инструмент и воткнут его в деталь… Тут нужно солидное основание и солидные компоненты, а не лампа на пружинках.
akaragad
Спасибо! Увы, но жесткости и количества степеней свободы недостаточно для подобных задач.
Foreglance
Два-три таких манипулятора, соединенных в конечной точке, под углом друг к другу (в плане)? Типа перевернутого дельта-манипулятора.
Andy_Big
Для видео можно было бы и более тщательно проработать траекторию, ускорения. А то остается впечатление как от в доску пьяного грузчика, переставляющего ящики :)
inferrna
Как-то так можно решить проблему с точностью позиционирования.
1. Руке на голову приделать пару видеокамер с длиннофокусными объективами и датчик уровня
2. На стены спереди и сбоку повесить листы с распечатанными матрицами, указывающими координаты x и y+z в см + имеющими миллиметровую сетку.
модуль с камерами выравниваем датчиком уровня так, чтобы плоскость, заданная пересечением осей камер, была параллельно полу, камерами ищем нужные координаты при помощи opencv и внутри сантиметра выравниваем по сетке до миллиметра.
Таким образом, всё, что потребуется дополнительно — две плоские стенки.
Можно наоборот — взять пару широкоуголных камер и искать ими некую метку на конце манипулятора. Только придётся очень точно ректифицировать камеры.
gsaw
Можно было бы лампу оставить, прикрутить камеру, что бы следила за специальным перстнем на руке (можно смоделированным по руке в solidworks и распечатанным на 3D принтере) и направляла свет на руки.
Constin
Многовато деталей, ненапечатанных на 3д принтере, для руки, полностью напечатанной на нем. Я не придираюсь к автору или его проекту. Я хочу сказать, что для полноценной печати на 3д принтерах нам нужно больше различных масс в разными свойствами после застывания. А то так, можно сказать, что напечатал автомобиль на 3д принтере, хотя на самом деле сделал только пепельницу к нему.
abstracto
я вот согласен, не очень похоже на «роборука, напечатанная на 3d принтере». это «роборука из лампы IKEA».
и ладно винты, но пружины и алюминий — их фиг найдешь, а IKEA не везде есть :)
ну, получилось аккуратно, только если-бы всё кроме винтов было заменено на пластик — вот это было-бы очень круто.
Markscheider
Сугубое ИМХО.
Лично меня бы больше привлек заголовок «роборука из лампы IKEA», чем «роборука, напечатанная на 3d принтере». Потому что на 3D-принтере сейчас печатают все и всё подряд. А сурового лампового (во всех смыслах этого слова) DIY стало маловато.
По сабжу — мне почему-то сразу захотелось цифровую камеру на этот манипулятор присобачить…
Moog_Prodigy
Механика ладно. Что планируется делать с полярной системой координат? Ведь для этого и RPI может не хватить. Ну хватит, ок. Какими-то усилиями туды поставите EMC…
Дальше тоже интересно. Ладно, уменьшаются требования к сервомашинкам. Но точность +-1 градус, с великим трудом достигаемая на сервах, с ОС с резистором на валу, дает точность позиционирования около двух сантиметров. При грузоподьемности грамм 100. И куда такое нужно? Лампу пиксар анимировать? И то вряд ли выйдет. А сервы на шаговиках с волновым редуктором стоят просто нереальные деньги.
Кстати, «робот на сервоприводах» и «робот на сервомашинках» звучат для обывателя как бы одинаково, но между ними пропасть — гранд каньон. По всем параметрам.
akaragad
Сейчас как раз пытаюсь приспособить руку к прямоугольную системы коориднат. С нуля у меня вряд ли получится решить подобную задачу, так что пока пытаюсь адаптировать код от MeArm
noonv
Отличная работа!
Markscheider
Еще вопрос. Как я понял, управляющие «мозги» вы повесили на локоть конструкции (а не на основание, как можно было ожидать). Это не изменило баланс и настройку пружин?
Make_Pic
Господа, подскажите пожалуйста, а где можно посмотреть open source конструкции роборук, выражаясь терминами автора статьи? Интересует устройство крепления приводов и пластиковой оболочки, желательно малогабаритные.
akaragad
На thingiverse и hackaday множество подобных проектов. Для начала можно посмотреть эту коллекцию.
Make_Pic
Cпасибо. Хотелось взглянуть на конструкцию гуманоидных роборук: конструкцию механики, кинематики, силовую (несущую часть), крепление обшивки.
akaragad
Гуманоидный робот InMoov