Креслення робот маніпулятор фрезерний своїми руками. Недорога роборукою, програмована на Ардуіно: роботизований маніпулятор своїми руками. Збірка механічної частини
підключення:
Якщо Ви зібрали деталі маніпулятора відповідно до інструкції, то можна приступити до складання електронної схеми. Ми пропонуємо підключити сервоприводи маніпулятора до Arduino UNO через Trerma-Power Shield, а управляти сервопріводамі використовуючи Trema-потенціометри.- Поворот ручки першого Trema-потенціометра призведе до повороту підстави.
- Поворот ручки другого Trema-потенціометра призведе до повороту лівого плеча.
- Поворот ручки третього Trema-потенціометра призведе до повороту правого плеча.
- Поворот ручки четвертого Trema-потенціометра призведе в рух захоплення.
Код програми:
Якщо ви подасте харчування, до калібрування, маніпулятор може почати рухатися неадекватно! Спочатку виконайте всі кроки калібрування.#include // Підключаємо бібліотеку Servo для роботи з сервоприводами Servo servo1; // Оголошуємо об’єкт servo1 для роботи з сервоприводом підстави Servo servo2; // Оголошуємо об’єкт servo2 для роботи з сервоприводом лівого плеча Servo servo3; // Оголошуємо об’єкт servo3 для роботи з сервоприводом правого плеча Servo servo4; // Оголошуємо об’єкт servo4 для роботи з сервоприводом захоплення int valR1, valR2, valR3, valR4; // Оголошуємо змінні для зберігання значень потенціометрів // Призначаємо висновки: const uint8_t pinR1 = A2; // Визначаємо константу з № виведення потенціометра управл. підставою const uint8_t pinR2 = A3; // Визначаємо константу з № виведення потенціометра управл. лівим плечем const uint8_t pinR3 = A4; // Визначаємо константу з № виведення потенціометра управл. правим плечем const uint8_t pinR4 = A5; // Визначаємо константу з № виведення потенціометра управл. захопленням const uint8_t pinS1 = 10; // Визначаємо константу з № виведення сервоприводу підстави const uint8_t pinS2 = 9; // Визначаємо константу з № виведення сервоприводу лівого плеча const uint8_t pinS3 = 8; // Визначаємо константу з № виведення сервоприводу правого плеча const uint8_t pinS4 = 7; // Визначаємо константу з № виведення сервоприводу захоплення vo + valR4); // Виводимо кути в монітор>калібрування:
Перед початком роботи з маніпулятором, його потрібно відкалібрувати!- Калібрування полягає у вказівці крайніх значень кута повороту для кожного сервоприводу, так щоб деталі не заважали їх рухам.
- Відключіть усі сервоприводи від Trema-Power Shield, завантажте скетч і підключіть харчування.
- Відкрийте монітор послідовного порту.
- У моніторі будуть відображатися кути повороту кожного сервоприводу (в градусах).
- Підключіть перший сервопривід (керуючий обертанням підстави) до висновку D10.
- Поворот ручки першого Trema-потенціометра (висновок A2) призведе до повороту першого сервоприводу (висновок D10), а в моніторі зміниться значення поточного кута цього сервоприводу (значення: A1 =.). Крайні положення першого сервоприводу будуть лежати в діапазоні, від 10 до 170 градусів (як написано в першому рядку коду loop). Цей діапазон можна змінити, замінивши значення останніх двох аргументів функції map () в першому рядку коду loop, на нові. Наприклад, замінивши 170 на 180, Ви збільшите крайнє положення сервоприводу в даному напрямку. А замінивши 10 на 20, Ви зменшите інше крайнє положення того ж сервоприводу.
- Якщо Ви замінили значення, то потрібно заново завантажити скетч. Тепер сервопривід буде повертатися в нових, заданих Вами, не більше.
- Підключіть другий сервопривід (керуючий поворотом лівого плеча) до висновку D9.
- Поворот ручки другого Trema-потенціометра (висновок A3) призведе до повороту другого сервоприводу (висновок D9), а в моніторі зміниться значення поточного кута цього сервоприводу (значення: A2 =.). Крайні положення другого сервоприводу будуть лежати в діапазоні, від 80 до 170 градусів (як написано в другому рядку коду loop скетчу). Цей діапазон змінюється так само як і для першого сервоприводу.
- Якщо Ви замінили значення, то потрібно заново завантажити скетч.
- Підключіть третій сервопривід (керуючий поворотом правого плеча) до висновку D8. і аналогічним чином здійсните його калібрування.
- Підключіть четвертий сервопривід (керуючий захопленням) до висновку D7. і аналогічним чином здійсните його калібрування.
В цілому і загальному
Створення даного пристрою в цілому не повинно викликати якихось складнощів. Необхідно буде якісно продумати тільки можливості що буде досить складно здійснити з фізичної точки зору, щоб рука-маніпулятор виконувала поставлені перед нею завдання.Технічні характеристики результату
Розглядатиметься зразок з параметрами довжини / висоти / ширини відповідно 228/380/160 міліметрів. Вага зробленої, становитиме приблизно 1 кілограм. Для управління використовується провідний дистанційний пульт. Орієнтовний час збирання при наявності досвіду – близько 6-8 годин. Якщо його немає, то можуть піти дні, тижні, а при потуранні і місяці, щоб була зібрана рука-маніпулятор. Своїми руками і одному в таких випадках варто робити хіба що для свого власного інтересу. Для руху складових використовуються колекторні мотори. Приклавши достатньо зусиль, можна зробити прилад, який буде повертатися на 360 градусів. Також для зручності роботи, крім стандартного інструментарію начебто паяльника і припою, необхідно запастися:- Подовженими плоскогубцями.
- Бічними кусачками.
- Хрестовій викруткою.
- 4-ма батарейками типу D.
Дрібні деталі
Для регуляції кількості оборотів можна використовувати перехідні коліщатка. Вони дозволять зробити рух руки-маніпулятора плавними.Також необхідно потурбуватись про те, щоб дроти не ускладнювали її руху. Оптимальним буде прокласти їх усередині конструкції. Можна зробити все і ззовні, такий підхід заощадить час, але потенційно може призвести до складнощів в переміщенні окремих вузлів або всього пристрою. А тепер: як зробити маніпулятор?
Збірка в загальних рисах
Тепер приступаємо безпосередньо до створення руки-маніпулятора. Починаємо з підстави. Необхідно забезпечити можливість повороту пристрою на всі боки. Хорошим рішенням буде його розміщення на дискової платформі, яка приводиться в обертання за допомогою одного мотора. Щоб вона могла обертатися в обидві сторони, існує два варіанти:
- Установка двох двигунів. Кожен з них буде відповідати за поворот в конкретну сторону. Коли один працює, другий перебуває в стані спокою.
- Установка одного двигуна зі схемою, яка зможе змусити його крутиться в обидві сторони.
- Використовується тільки два пальця, які одночасно стискають і розтискають об’єкт захоплення. Є найпростішою реалізацією, яка, правда, зазвичай не може похвалитися значною вантажопідйомністю.
- Створюється прототип людської руки. Тут для всіх пальців може використовуватися один двигун, за допомогою якого буде здійснюватися згин / розгин. Але можна зробити і конструкцію складніше. Так, можна до кожного пальця під’єднати по двигуну і управляти ними окремо.
Можливі схематичні зображення результату
Надає широкі можливості для творчих вигадок. Тому надаються вашій увазі кілька реалізацій, які можна взяти за основу для створення свого власного пристрою подібного призначення.Будь-яка представлена схема маніпулятора може бути вдосконалена.
висновок
Важливим у робототехніці є те, що практично не існує обмеження по функціонального поліпшення. Тому при бажанні створити справжній витвір мистецтва не складе труднощів. Говорячи про можливі шляхи додаткового поліпшення, слід зазначити кран-маніпулятор. Своїми руками зробити такий пристрій не складе труднощів, одночасно воно дозволить привчити дітей до творчої праці, науці і конструюванні. А це в свою чергу позитивно може позначитися на їх майбутньому житті. Чи складно буде зробити кран-маніпулятор своїми руками? Це не так важко, як може здатися на перший погляд. Хіба що варто подбати про наявність додаткових дрібних деталей на кшталт троса і коліс, за якими він буде крутитися.Ця стаття – вступне керівництво для новачків зі створення роботизованих рук, які програмуються за допомогою Ардуіно. Концепція полягає в тому, що проект роборукою буде недорогим і простим в збірці. Ми зберемо нескладний прототип з кодом, який можна і потрібно оптимізувати, це стане для вас відмінним стартом в робототехніці. Робот-маніпулятор на Ардуіно управляється хакнуть джойстиком і може бути запрограмований на повторення послідовності дій, яку ви задасте. Якщо ви не сильні в програмуванні, то можете зайнятися проектом в якості тренування по збірці «заліза», залити в нього мій код і отримати на його основі базові знання. Повторюся, проект досить простий.На відео – демка з моїм роботом.
Крок 1: Список матеріалів
- Плата Ардуіно. Я використовував Уно, але будь-яка з різновидів однаково добре впорається із завданнями проекту.
- Сервоприводи, 4 найдешевших, що ви знайдете.
- Матеріали для Вашого особистого смаку. Підійде дерево, пластик, метал, картон. Мій проект зібраний з старого блокнота.
- Якщо ви не захочете морочитися з друкованою платою, то знадобиться макетна плата. Підійде плата невеликого розміру, пошукайте варіанти з джамперами і блоком живлення – вони бувають досить дешеві.
- Щось для заснування руки – я використовував банку від кави, це не найкращий варіант, але це все, що я зміг знайти в квартирі.
- Тонка нитка для механізму руки і голка для того різання отворів.
- Клей і ізолента, щоб скріпити все воєдино. Немає нічого, що не можна було б скріпити ізолентою і гарячим клеєм.
- Три резистора на 10K. Якщо у вас не знайдеться резисторів, то в коді на такі випадки є обхідний маневр, однак найкращим варіантом буде купити резистори.
Крок 2: Як все працює
На доданому малюнку зображений принцип роботи руки. Також я поясню все на словах. Дві частини руки з’єднані тонкою ниткою. Середина нитки з’єднана з сервоприводом руки. Коли сервопривід тягне нитку – рука стискається. Я оснастив руку пружиною з кулькової ручки, але якщо у вас є більш гнучкий матеріал, можете використовувати його.
Крок 3: Модифікуємо джойстик
Припустивши, що ви вже закінчили збирання механізму руки, я перейду до частини з джойстиком.Для проекту використовувався старий джойстик, але в принципі підійде будь-який пристрій з кнопками. Аналогові кнопки (гриби) використовуються для управління сервоприводами, так як по суті це просто потенціометри. Якщо у вас немає джойстика, то можете використовувати три звичайних потенціометра, але якщо ви, як і я, вносите старий джойстик своїми руками, то ось що вам потрібно зробити.Я підключив потенціометри до макетної платі, у кожного з них є по три клеми. Одну з них потрібно з’єднати з GND, другу з + 5V на Ардуіно, а середню на вхід, який ми визначимо пізніше. Ми не будемо використовувати вісь Y на лівому потенціометрі, тому нам потрібен тільки потенціометр над джойстиком.Що стосується перемикачів, з’єднайте + 5V з одним його кінцем, а провід, який йде на другий вхід Ардуіно з другим кінцем. Мій джойстик має загальну для всіх перемикачів лінію на + 5V. Я підключив всього 2 кнопки, але потім підключив ще одну, так як в ній з’явилася необхідність.Також важливо обрізати дроти, які йдуть до чіпу (чорний коло на джойстику). Коли ви завершите все вищеописане, можна приступити до проведення.
Крок 4: Електропроводка нашого пристрою
На фотографії зображена електропроводка пристрою. Потенціометри – це важелі на джойстику. Локоть (Elbow) – це права вісь Y, Основа (Base) – це права вісь X, Плече (Shoulder) – це ліва вісь X. Якщо вам захочеться змінити напрямок руху сервоприводів, просто змініть положення проводів + 5V і GND на відповідному потенціометрі.
Крок 5: Завантаження коду
На цьому етапі нам потрібно завантажити прикладений код на комп’ютер, а потім завантажити його на Ардуіно.Замітка: якщо до цього ви вже завантажували код на Ардуіно, то просто пропустіть цей крок – ви не дізнаєтеся нічого нового.- Відкрийте Іде Ардуіно і вставте в нього код
- У Tools / Board виберіть вашу плату
- У Tools / Serial Port виберіть порт, до якого підключена ваша плата. Швидше за все, вибір буде складатися з одного пункту.
- Натисніть кнопку Upload.
Крок 6: Запуск проекту
Робот контролюється рухами на джойстику, рука стискається і розтискається за допомогою кнопки для руки. На відео показано, як все працює в реальному житті.Ось спосіб, яким можна запрограмувати руку:- Відкрийте Serial Monitor в Ардуіно Іде, це дозволити простіше стежити за процесом.
- Збережіть початкову позицію, клікнувши Save.
- За один раз рухайте лише одним сервоприводом, наприклад, Плече вгору, і тисніть save.
- Активуйте руку також лише на її кроці, а потім зберігайте натисканням save. Деактивация також проводиться на окремому кроці з наступним натисканням save.
- Коли закінчите послідовність команд, натисніть кнопку play, робот перейде в початкове положення і потім почне рухатися.
- Якщо ви захочете зупинити його – від’єднайте кабель або натисніть кнопку reset на платі Ардуіно.
особливості:
Щоб зібрати робота маніпулятора своїми руками, вам знадобиться досить багато компонентів. Основну частину займають 3D друковані деталі, їх близько 18 штук (друкувати гірку необов’язково) .Якщо ви завантажили і роздрукували все необхідне, то вам будуть потрібні болти, гайки і електроніка:- 5 болтів М4 20мм, 1 на 40 мм і відповідні гайки із захистом від розкрутки
- 6 болтів М3 10мм, 1 на 20 мм і відповідні гайки
- Макетке з сполучними проводами або Шилд
- Arduino Nano
- 4 серво мотора SG 90
Характеристики:
- Просте програмування через наявність малої кількості моторів, причому одного типу
- Наявність мертвих зон для деяких серво-приводах
- Широка застосовність робота в повсякденному житті
- Цікаві інженерна робота
- Необхідність використання 3D принтера
– 6 серводвигунів;
– акрил товщиною 2 мм (і ще невеликий шматок товщиною 4 мм);
– штатив (для створення підстави);
– ультразвуковий датчик відстані типу hc-sr04;
– контролер Arduino Uno;
– контролер харчування (виготовляється самостійно);
– блок живлення від комп’ютера;
– комп’ютер (потрібен для програмування Arduino);
– дроти, інструменти та інше.
Крок перший. Збираємо механічну частину робота
Механічна частина збирається дуже просто. Два шматка акрилу потрібно з’єднати за допомогою серводвігателя. Інші дві ланки з’єднуються аналогічним чином. Що стосується схвата, то його краще за все купити через інтернет. Всі елементи кріпляться за допомогою гвинтів.Довжина першої частини складає близько 19 см, а другий приблизно 17.5 см. Переднє ланка має довжину 5.5 см. Що стосується інших елементів, то їх розміри вибираються за особистим вибором.
Кут повороту в підставі механічної руки повинен становити 180 градусів, тому знизу потрібно встановити серводвигун. У нашому випадку його потрібно встановити в диско-куля. Робот ж встановлюється вже на серводвигун.Для установки ультразвукового датчика знадобиться шматок акрилу товщиною 2 см.Щоб встановити схват буде потрібно кілька гвинтів і серводвигун. Потрібно взяти качалку від серводвігателя і вкорочувати її до тих пір, поки вона не підійде до схопила. Потім можна закрутити два маленьких гвинта. Після установки серводвигун потрібно повернути в крайнє ліве положення і звести губки захоплення.Тепер серводвигун кріпиться на 4 болта, при цьому важливо стежити, щоб він знаходився в крайньому лівому положенні, а губи були зведені.
Тепер сервпрівод можна підключити до плати і перевірити, чи працює схват.
Крок другий. підсвічування робота
Щоб робот був цікавіше, йому можна зробити підсвічування. Робиться це за допомогою світлодіодів різноманітних квітів.
Крок третій. Підключення електронної частини
Основним контролером для робота є плата Arduino. В якості джерела живлення використовується комп’ютерний блок, на його виходах потрібно знайти напруга 5 Вольт. Воно повинно бути, якщо заміряти мультиметром напругу на червоному і чорному проводі. Ця напруга потрібно для харчування серводвигунів і сенсора відстані. Жовтий і чорний провід блоку видає вже 12 Вольт, вони потрібні для роботи Arduino.Для сервомоторів потрібно зробити п’ять конекторів. До позитивних підключаємо 5В, а негативні до землі.Аналогічним чином підключається і датчик відстані.Ще на платі є світлодіодний індикатор живлення. Для його підключення використовується резистор 100 Ом між +5 В і землею.
Виходи від серводвигунів підключаються до ШІМ-виходів на Arduino. Такі піни на платі позначаються значком «». Що стосується ультразвукового датчика відстані, то його можна підключити до пінам 6 і 7. Світлодіод підключається до землі і 13-му піну.Тепер можна приступати до програмування. Перед тим як підключатися через USB, потрібно переконатися, що харчування повністю відключено. При тестуванні програми харчування робота теж потрібно відключати. Якщо це не зробити, контролер отримати 5В від USB і 12В від блоку живлення.На схемі можна побачити, що для управління серводвигунами були додані потенціометри. Вони не є необхідною складовою робота, але без них запропонований код працювати не буде. Потенціометри підключаються до пінам 0,1,2,3 і 4.На схемі є резистор R1, його можна замінити потенціометром на 100 кОм. Це дозволить регулювати яскравість вручну. Що стосується резисторів R2, то їх номінал 118 Ом.Ось перелік основних вузлів, які застосовувалися:
– 7 світлодіодів;
– R2 – резистор на 118 Ом;
– R1 – резистор на 100 кОм;
– перемикач;
– фоторезистор;
– транзистор bc547.Крок четвертий. Програмування та перший запуск робота
Щоб керувати роботом, було використано 5 потенціометрів. Цілком реально замінити таку схему на один потенціометр і два джойстика. Як підключити потенціометр, було показано в попередньому кроці. Після установки скеча робота можна випробувати.Перші випробування робота показали, що встановлені серводвігателі типу futuba s3003 виявилися слабкими для робота. Їх можна застосовувати лише для повороту руки або для схвата. Замість них автор встановив двигуни mg995. Ідеальним варіантом будуть двигуни типу mg946.