Настольная робо-рука манипулятор из оргстекла на сервоприводах своими руками. DIY: Рука-манипулятор для сборки деталей с конвейера. Пошаговая инструкция по созданию Механическая рука манипулятор своими руками

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

Помощник №1 – робот-манипулятор

Промышленность – фундамент большинства экономик мира. От качества предлагаемых товаров, объемов и ценообразования зависит доход не только отдельно взятого производства, но и государственного бюджета.

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

Как устроен промышленный робот

Робот-манипулятор выглядит как огромная автоматизированная «рука» под контролем системы электроуправления. В конструкции устройств отсутствует пневматика или гидравлика, все построено на электромеханике. Это позволило сократить стоимость роботов и повысить их долговечность.

Промышленные роботы могут быть 4-х осевыми (используются для укладки и фасовки) и 6-ти осевыми (для остальных видов работ). Кроме того, роботы отличаются и в зависимости от степени свободы: от 2 до 6. Чем он выше, тем точнее манипулятор воссоздает движение человеческой руки: вращение, перемещение, сжатие/разжатие, наклоны и прочее.
Принцип действия устройства зависит от его программного обеспечения и оснащения, и если в начале своего развития основная цель была освобождение работников от тяжелого и опасного вида работ, то сегодня спектр выполняемых задач значительно возрос.

Использование роботизированных помощников позволяет справляться одновременно с несколькими задачами:

  • сокращение рабочих площадей и высвобождение специалистов (их опыт и знания могут быть использованы на другом участке);
  • увеличение объемов производства;
  • повышение качества продукции;
  • благодаря непрерывности процесса сокращается цикл изготовления.

В Японии, Китае, США, Германии на предприятиях работает минимум сотрудников, обязанностью которых является лишь контроль работы манипуляторов и качество изготавливаемой продукции. Стоит отметить, что промышленный робот-манипулятор – это не только функциональный помощник в машиностроении или сварочном деле. Автоматизированные устройства представлены в широком ассортименте и используются в металлургии, легкой и пищевой промышленности. В зависимости от потребностей предприятия можно подобрать манипулятор, соответствующий функциональным обязанностям и бюджету.

Виды промышленных роботов-манипуляторов

На сегодняшний день существует около 30 видов роботизированных рук: от универсальных моделей до узкоспециализированных помощников. В зависимости от выполняемых функций, механизмы манипуляторов могут отличаться: так например, это могут быть сварочные работы, резка, сверление, гибка, сортировка, укладка и упаковка товаров.

В отличие от существующего стереотипа о дороговизне роботизированной техники, каждое, даже небольшое предприятие, сможет приобрести подобный механизм. Небольшие универсальные роботы-манипуляторы с небольшой грузоподъемностью (до 5кг) ABB, и FANUC будут стоить от 2 до 4 тысяч долларов.
Несмотря на компактность устройств, они способны увеличить скорость работы и качество обработки изделий. Под каждого робота будет написано уникальное ПО, которое в точности координирует работу агрегата.

Узкоспециализированные модели

Роботы сварщики нашли свое наибольшее применение в машиностроении. Благодаря тому, что устройства способны сваривать не только ровные детали, но и эффективно проводить сварочные работы под углом, в труднодоступных местах устанавливают целые автоматизированные линии.

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

Сварщики
Самыми распространенными вариантами являются сварочные роботы. Их производительность и точность в 8 раз выше, чем у человека. Такие модели могут выполнять несколько видов сварки: дуговая или точечная (в зависимости от ПО).

Лидерами в данной области считаются промышленные роботы-манипуляторы Kuka. Стоимость от 5 до 300 тысяч долларов (в зависимости от грузоподъемности и функций).

Сборщики, грузчики и упаковщики
Тяжелый и вредный для человеческого организма труд стал причиной появления в этой отрасли автоматизированных помощников. Роботы упаковщики за считанные минуты подготавливают товар к отгрузке. Стоимость таких роботов до 4 тысяч долларов.

Производители ABB, KUKA, и Epson предлагают воспользоваться устройствами для подъема тяжелых грузов весом больше 1 тонны и транспортировку от склада к месту погрузки.

Производители промышленных роботов манипуляторов

Бесспорными лидерами в данной отрасли считаются Япония и Германия. На их долю приходится более 50% всей роботизированной техники. Конкурировать с гигантами, непросто, однако, и в странах СНГ постепенно появляются собственные производители и стартапы.

KNN Systems. Украинская компания является партнером немецкой Kuka и занимается разработкой проектов по роботизации процессов сварки, фрезеровки, плазменной резки и паллетизации. Благодаря их ПО промышленный робот может быть перенастроен под новый вид задач всего за один день.

Rozum Robotics (Беларусь). Специалисты компании разработали промышленный робот-манипулятор PULSE, отличающийся своей легкостью и простотой в использовании. Устройство подходит для сборки, упаковки, склеиванию и перестановки деталей. Цена робота в районе 500 долларов.

«АРКОДИМ-Про» (Россия). Занимается выпуском линейных роботов-манипуляторов (двигаются по линейным осям), используемых для литья пластика под давлением. Кроме того, роботы ARKODIM могут работать, как часть конвейерной системы, и выполнять функции сварщика или упаковщика.

Доброго времени суток! Перед вами, дорогие , арт-робот, который может разрисовывать различные сферические или яйцевидные предметы размером от 4 до 9 см.

Для его изготовления понадобится 3D-принтер, набор стандартных инструментов + Arduino.

Примечание: Не стоит ставить крест на проектах, в которых используются 3D-принтер. При желании всегда можно найти место или способ, где можно заказать печать необходимых для проекта деталей.

Шаг 1: Немного о роботе

Арт-робот — двухосевая самоделка , которая может наносить рисунок на большинстве сферических поверхностей. Робот настраивается под определённый тип предмета (шары для пинг-понга, рождественские украшения, лампочки и яйца (утиные, гусиные, куриные …).

Для вращения сферического предмета и перемещения манипулятора используются высокоточные шаговые двигатели с высоким крутящим моментом, а для подъёма механизма ручки — тихий и надежный сервопривод SG90.

Шаг 2: Необходимые детали

Для того, чтобы сделать поделку своими руками нам понадобится:

  • 2x подшипника 623;
  • Шпилька диаметром 3 мм и длиной 80-90 мм;
  • 1x пружина (длиной 10 мм и диаметром 4,5 мм);
  • 2x шаговых двигателя NEMA 17 (крутящий момент 4,4 кг / см);
  • Кабели для двигателей (длиной 14 + 70 см);
  • USB-кабель;
  • 1x сервопривод SG90;
  • Arduino Leonardo;
  • shield JJRobots;

  • 2xA4988 драйвера для шаговых двигателей;
  • Блок питания 12В / 2A;
  • 11x винтов M3 6 мм;
  • 4x винта M3 16 мм;
  • 4x гайки M3;
  • 2x 20-мм присоски;
  • 1x гайка-барашек M3;
  • 1x маркер;

Шаг 3: Общая схема

В качестве «шпаргалки» можете воспользоваться данной схемой.

Шаг 4: Давайте начинать!

Робот двигает манипулятором, с закрепленным на нём маркером, что приводится в действие шаговым двигателем. Другой шаговый двигатель отвечает за поворот объекта, на который наносится рисунок (яйцо, шарик …). Для удерживания предмета на месте используются две присоски: одна, прикрепленная к шаговому двигателю, а другая на противоположной стороне предмета. Маленькая пружина будет давить на присоску, помогая ей удерживать предмет. Для поднятия/опускания маркера используется сервопривод SG90.

Шаг 5: Манипулятор

Установим гайку в отверстие, подготовленное для неё и закрутим 16 мм винт. Сделаем то же самое для держателя предметов (справа на изображении выше). При создании шарнира для манипулятора использовались 2 16 мм винта. Этот шарнир должен свободно вращаться после закручивания винтов.

Шаг 6: Присоски

Установим одну из присосок внутрь отверстия в держателе предметов.

Шаг 7: Крепление шаговых двигателей

Закрепим оба шаговых двигателя к основной раме с помощью 8-ми винтов.

Шаг 8: Ось вращения

Разместим все элементы, как показано на изображении выше.

  • Присоска;
  • Гайка;
  • Верхняя часть;
  • Пружина;
  • Подшипник 623 (должен быть встроен в левую чашку);
  • Левая чашка;
  • Свободное пространство для основной рамы;
  • Правая чашка;
  • Подшипник 623;
  • Разделительное кольцо;
  • Гайка-барашек (M3).

Шаг 9: Размещаем все по своим местам

Вставим собранный манипулятор на ось шагового двигателя.

Установим левую опору на ось шагового двигателя.

Маркер и яйцо установлены в качестве примера (сейчас размещать их не нужно).

ПРИМЕЧАНИЕ: Сервопривод потребует корректировок. Нужно будет повторно установить его угол во время процесса калибровки.

Шаг 10: Электроника

Закрепим электронику на тыльной стороне основной рамы с помощью винтов (2-х будет достаточно).

Подключим кабеля.

Если вы перепутаете полярности при подключении шаговых двигателей, то они будут просто вращаться в противоположном направлении, но с сервоприводом ситуация будет не такой уж и безобидной! Поэтому дважды проверяйте полярность перед подключением!

Шаг 11: Программирование Arduino Leonardo

Запрограммируем Arduino Leonardo с помощью программной среды Arduino IDE (v 1.8.1).

  • Загрузим Arduino IDE (v 1.8.1) и установим программу;
  • Запустим программное обеспечение. Выберем плату Arduino Leonardo и соответствующий COM-ПОРТ в меню «tools-> board»;
  • Откроем и загрузим код Sphere-O-Bot. Распакуем все файлы внутрь одной папки и назовём её «Ejjduino_ARDUINO».

Шаг 12: Арт-робот готов к созданию произведений искусства

Шаг 13: Управление роботом

Программное обеспечение Inkscape. Загрузим и установим программное обеспечение Inkscape (рекомендую стабильную версию 0.91).

Загрузим и установим расширение EggBot Control (версия 2.4.0 была полностью протестирована).

Расширение EggBot Control для Inkscape — это инструмент, который необходимо использовать при тестировании и калибровке EggBot, а также перенесении рисунки на яйцо. Сначала нужно запустить Inkscape. После запуска Inkscape появится меню «Расширения», а в нём уже нужно выбрать подменю «Eggbot». Если не видите подменю Eggbot, то вы неправильно установили расширения. Выполните резервное копирование и внимательно следуйте инструкциям по установке расширений.

На этом всё, спасибо за внимание!)

Это проект робота, который содержит шесть степеней свободы манипулятора. Устройство может применяться на производственной линии, как заготовка для конвейерной ленты, работая с паллетами на рабочей станции. Главной целью проекта было проверить, является ли манипулятор достаточно точным для сборки деталей, когда они движутся на конвейере. Эта сборка, конечно, не нашла широкого применения в промышленности, но всё возможно в будущем.

Как он работает?

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

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

Для создания робота было бы неплохо использовать 3D-принтер, который подойдет для печати больших объектов (максимальный размер ~ 1,2 м * 0,8 м). Было бы здорово увеличить головку манипулятора, а также использовать вентилятор компьютера для того, чтобы пластиковые нити остыли быстро. В общем, немного объектов будет необходимо для печатного объекта.

Видеопрезентация работы:

Здесь можно увидеть робота и его рабочую станцию во время выполнения одной простой задачи сборки на 30% от максимальной скорости:

Шаг 1. Робот без рабочей станции:

Так выглядит промышленная рука-манипулятор без какой-либо рабочей станции.

Шаг 2. Разборка конвейерной ленты от старых частей:

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

Шаг 3. Подключение датчика:

Для того, чтобы определить скорость двигателя (и, следовательно, скорость конвейера), поверните ось к нижней стороне электродвигателя. Также ось двигателя необходима, чтобы иметь возможность изменить расширение устройства. На другом конце расширения нужно установить инкрементный датчик Megatron (MHL40 8 1000 5 BZ NA). Основные части датчика: источник света (светодиод), который светит через диск с отверстиями. На другой стороне этого диска есть датчик света, который считает импульсы входящего света, и передает эти сигналы на главный процессор робота. Первая настройка необходима для того, чтобы синхронизировать роботизированную систему координат, переместить конвейерную ленту, и вращать датчик на этом расстоянии.

После этого робот вычисляет сигналы датчика расстояния в его системе координат. Одной из самых сложных и трудоемких задач (после повторного собрания механической части конвейера) было сделать правильные настройки для этой синхронизации. Для этого необходимо написать программу, которая обрабатывает преобразователи частоты для запуска конвейера и открыть-закрыть пневматические пробки, и, конечно, необходимо переместить робота в области и нужные позиции. Основные направления этой синхронизации кода доступны в руководстве по работе с роботом (Mitsubishi RV-3SDB) в формате PDF. Ниже доступен код с настройками.

Шаг 4. Преобразователи частоты:

Преобразователи частоты необходимы, чтобы иметь возможность контролировать скорость вращения двигателя. Он работает первоначально с частотой 50 Гц, но это слишком быстро для этой процедуры. Установите частоту 33Гц на базовой настройке. Благодаря скорости изменения входа селектора, есть также возможность изменения скорости в программном коде робота. Преобразователь частоты поставляется в использованном варианте, но делает свою работу очень хорошо. Также аварийный выключатель (большая красная кнопка) необходим для подключения по соображениям безопасности.

Шаг 5. Создание паллет:

Все части паллет являются ручной работой. Были сделаны только "заготовки". К сожалению, возможность 3D печати не доступна здесь, так как эти части должны быть сделаны из алюминия или из пластика. На верхней части паллет нужно установить шарикоподшипники, чтобы иметь лучшие обороты по краям. Большой кусок алюминия необходим из-за близости индуктивных датчиков.

Шаг 6. Завершение конвейерной ленты:

После нужно добавить стартовую точку и конечную точку конвейерной ленты. Также интегрирован выход селектора. Он работает с пневматическими переключателями.

Шаг 7.

Пневматические переключатели останавливают и пропускают паллет. В начальной точке есть индуктивный датчик приближения, чтобы убедиться, что паллет настроен перед началом сборки. Затем коммутатор освобождает паллет, который проходит мимо второго датчика на близком расстоянии. Это дает сигнал на главный процессор, который обрабатывает сигналы датчика, называемые "живые". Расстояние измеряется отсюда. Есть и другая пробка и датчик на конце линии. (Существует возможность поставить более паллет на конвейере в одно и то же время, но тем самым необходима безопасность остановки, прежде чем дать паллету способ выбора.)

"Электрическая часть" рабочей станция находится только в предварительной версии: она должна быть вмонтирована в электрическую кабину. (Вопрос только в деньгах.)

Шаг 8. Программирование робота:

Основные команды для кода сборки:

  • M_Out (N) = 1: включение или выключение выходов (например, пневматических переключателей или двигателей)
  • Wait M_In(n) = 1: подождите нарастающий сигнал (например, сигналы индуктивных датчиков)
  • m1 = M_Enc (1): при запуске функции отслеживания он дает мгновенное значение кодера к m1 целому.
  • Trk On,pfog,m1: включение функции отслеживания движений робота.
  • Trk Off: выключение функции отслеживания и возвращения к "нормальной" системе координат робота.
Примечание автора: весь код программы написан с комментариями на венгерском языке, так что при возникновении трудностей, обращайтесь за помощью к переводчику (Google Translator подойдет).

Servo On "Robot szervo bekapcsolása
Ovrd 70 "70%-os sebesség
Mov phome2 "a darab várakozási pozícióba álljon
"Futószalag összeszerelő ág nullázása (mert a frekvenciaváltó felfutó és lefutó élre is reagál).
M_Out(5)=0 "összeszerelő ág hátramenet nullázása
M_Out(6)=0 "összeszerelő ág előremenet nullázása
M_Out(8)=0 "visszavezető ág előremenet nullázása
M_Out(9)=0 "visszavezető ág hátramenet nullázása
"
"Vizsgálat kezdés előtt: ha a paletta nincs a kiindulási ponton, oda kell vinni.
If M_In(4)=0 Then GoSub *visszavezet "ha az első induktív jele 0, akkor nincs ott a paletta
*visszavezet
If M_In(4)=1 Then GoTo *indit "mivel ez rekurzív programrész, ha mar ott a paletta, kilépünk
M_Out(6)=1 "összeszerelő futószalag ág előre megy egy kicsit

M_Out(2)=1 "váltó külső állásba tesz
M_Out(2)=0 "váltó nyomás visszavesz
Dly 7 "eddigre biztos a végére ér a paletta az összeszerelő ágnak
M_Out(1)=1 "váltó belső állásba tesz
M_Out(1)=0 "leveszi a váltóról a nyomást
M_Out(6)=0 "összeszerelő futószalag ág leállítása
Dly 0.5
M_Out(9)=1 "visszavezető ág futószalag beindul visszafelé
M_Out(5)=1 "összeszerelő ág hátramenetbe kapcsol
Wait M_In(4)=1 "addig vár, amíg az első induktív nem érzékel
M_Out(8)=0 "visszavezető futószalag leáll
Dly 1 "a paletta már a kiindulási pontban van
M_Out(5)=0 "összeszerelő ág hátra leáll
If M_In(4)=1 Then GoTo *indit
Return
*indit
M_Out(6)=1 "összeszerelő ág előremenetben indítása
M_Out(4)=1 "1. szelep behúz
M_Out(2)=1 "váltó külső állás
M_Out(2)=0 "váltóról leveszi a nyomást
Wait M_In(6)=1 "indítást érzékelő induktív bejelez
m1=M_Enc(1) "ekkor felvesszük az enkóder pozícióját (szinkronizálás)
"*var
"abban az esetben szükséges csak, ha az indító érzékelő a robot munkaterén kívül van
"PC=TrWcur(1,pjel,m1) "meg kell várnia a paletta beérkezését a munkatérbe
"If PosCq(PC)<>1 Then GoTo *var "beért-e a munkatérbe?
"If PC.Y>350 Then GoTo *var "beért-e a szerelési távolságba? (350mm)
"If PC.Y<0 Then GoTo *var "probléma esetén már túlment volna "a szerelési távolságon
Trk On,pjel,m1 "tracking indítása
"pjel: fixen beállítandó érték, a robot koordinátarendszerében az induktív "bejelzésekor a munkadarab pozíciója
"m1: az enkóder pozíciója, amikor a munkadarab elérte az induktívot
"innentől egy mozgó koordináta rendszerben leszünk, amelynek középpontja a munkadarab
Mov phenger,10 "felvesszük az első darabot
Mvs phenger
Dly 0.25
Hclose 1
Dly 0.25
Mvs phenger, 10
Mov pkp,50
Mvs pkp
Dly 0.25
HOpen 1 "leraktuk a hengert
Dly 0.25
Mov pkp, 50
Mov pdugattyu, 10 "dugattyúért megy
Mvs pdugattyu
Dly 0.25
Hclose 1 "felvettük a dugattyút
Dly 0.25
Mvs pdugattyu, 10
Mov pkp, 50
Mvs pkp
Dly 0.25
HOpen 1 "leraktuk a dugattyút
Dly 0.25
Mov pkp, 50
Mov prugo, 10 "rugóért megy
Mvs prugo
Dly 0.25
Hclose 1 "felvettük a rugót
Dly 0.25
Mvs prugo, 10
Mov pkp, 50
Mvs pkp
Dly 0.25
HOpen 1 "leraktuk a rugót
Dly 0.25
Mov pkp, 50
Trk Off
Wait M_In(7)=1 "addig vár, amíg az harmadik(összeszerelő ág vége) induktív nem érzékel
M_Out(4)=0 "1. szelep kienged
M_Out(0)=1 "2. szelep (összeszerelő végpont) behúz
Wait M_In(7)=0 "addig vár, amíg az harmadik(összeszerelő ág vége) induktív előtt mar nincs ott a darab (tehát kifutott a végpontig)
Dly 1
M_Out(6)=0 "összeszerelő ág futószalag előre leállít
M_Out(1)=1 "váltó belső állás
M_Out(1)=0 "váltó belső állást kell nullázni
M_Out(0)=0 "2. szelep (összeszerelő végpont) kienged
M_Out(5)=1 "összeszerelő futószalag hátra indul
M_Out(9)=1 "visszavezető futószalag előre indul
Wait M_In(6)=1 "addig vár, amíg az visszavezető induktív nem érzékel (de nem történik semmi)
Wait M_In(4)=1 "addig vár, amíg az összeszerelő induktív nem érzékel (vissza nem ért a darab)
M_Out(5)=0 "összeszerelő futószalag hátra leáll
M_Out(9)=0 "visszavezető ág futószalag leáll
Mov phome2
Servo Off
Hlt
"
"kimenetek és bemenetek listája
"szelepek
"M_Out(0)=1 "2. szelep (összeszerelő végpont) behúz
"M_Out(0)=0 "végpont szelep kienged
"M_Out(1)=1 "váltó belső állásra vált
"M_Out(1)=0 "váltó belső állás nyomás levesz
"M_Out(2)=1 "váltó külső állásra állít
"M_Out(2)=0 "itt nem kell nyomást levenni
"M_Out(3)=1 "3.szelep (visszavezető ág) behúz
"M_Out(3)=0 "3. szelep kienged
"M_Out(4)=1 "1. szelep behúz
"M_Out(4)=0 "1. szelep kienged
"
"Futószalag ágak nullázása (mindig kell, mert mindig a korábbi érték ellentétjére indul vagy áll meg).
"M_Out(5)=0 "futószalag leáll nullázással kezdünk
"M_Out(6)=0 "futószalag leáll nullázással kezdünk
"M_Out(8)=0 "másik futószalag előre leáll
"M_Out(9)=0 "másik futószalag előre leáll
"
"M_Out(5)=1 "összeszerelő ág futószalag hátra indul
"M_Out(5)=0 "összeszerelő ág futószalag leáll
"M_Out(6)=1 ""összeszerelő ág futószalag előre indul
"M_Out(6)=0 ""összeszerelő ág futószalag előre leáll
"M_Out(8)=1 "visszavezető ág futószalag hátra indul
"M_Out(8)=0 " visszavezető ág futószalag hátra leáll
"M_Out(9)=1 " visszavezető ág futószalag előre indul
"M_Out(9)=0 " visszavezető ág futószalag előre leáll
"
"induktívok
"Wait M_In(4)=1 "addig vár, amíg az első induktív nem érzékel
"Wait M_In(5)=1 "addig vár, amíg az indító induktív nem érzékel
"Wait M_In(6)=1 "addig vár, amíg az visszavezető induktív nem érzékel
"Wait M_In(7)=1 "addig vár, amíg az harmadik(összeszerelő ág vége) induktív nem érzékel