Всем привет! Представляю вашему вниманию мой проект — роборука на базе настольной лампы с напечатанными на 3d-принтере суставами.
За основу было решено взять лампу Икеа, которая благодаря использованию пружин всегда сохраняла заданную позицию. Соответственно в роборуке энергия сервоприводов расходуется только на изменение положения рычагов, а пружины удерживают вес руки и груза. Таким образом грузоподъемность манипулятора зависит от количества и конфигурации пружин. Например, в видео с испытанием максимальной грузоподъемности я использую 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
Еще несколько фотографий:
Спасибо за внимание!
Автор: akaragad