Розробка гексапода своїми руками з нуля (частина 1)

Всім привіт! Не так давно я почав вивчати програмування під мікроконтролери. З початку написання простих програм для миготіння світлодіодом і навіть двома вже не приносило задоволення і ставало нудно. І ось одного вечора сидячи в роздумах над тим, чим же зайняти свою голову, вирішив знайти більш складні проекти. На просторах інтернету побачив багато речей, які створюють люди, але найбільше мене здивував шестиногий робот або hexapod.

Надихнувшись картинками і відео вирішив випробувати свої сили. Розробка корпусу, електроніки і програми буде вестися з 0.

Отже, частина 1 — розробка 3D моделі корпуса

Вихідні матеріали та комплектуючі для майбутнього робота:

0. Arduno Due (писатимемо в Atmel Studio на чистому C без Arduino IDE, заодно розповім як підключити відладчик до цієї плати) — 1шт;

1. HLK-RM04 (UART to WIFI converter) — прозорий міст з UART в WIFI — 2шт;

2. Сервоприводи MG996R (з китаю, як же без нього) — 18шт;

3. LM317D2T-TR для живлення сервоприводів + дрібна рассыпуха у вигляді резисторів і конденсаторів;

4. САПР «КОМПАС 3D»;

5. Фанера 3мм в якості матеріалу для корпусу (дешево і смачно пахне);

6. Можливість замовити лазерну резку;

7. Час. Багато часу.

В самому початку шляху постало питання «А який же корпус я хочу?». В процесі пошуку відповіді на дане питання набрів на кілька готових рішень. Найбільше сподобалися PhantomX і A-Pod. Подивившись на корпуси, вирішив вже було почати розробку, але немає. З’явилася наступна проблема: так як цих роботів в очі я не бачив і в руках не тримав, то я мав погане уявлення про їх габаритах. У пошуках вирішення цієї проблеми я натрапив на одну з статей на хабре. Автор статті tomnewmann люб’язно поділився зі мною кресленнями свого проекту, за що йому велике спасибі.

Читайте також  Скрипт складальника цитат і розпізнання тексту з відео на Python

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

Coxa

Через кілька годин роздумів з’явилася перша модель «Coxa» (так прийнято позначати вузол, що з’єднує ногу з корпусом). Сайт спробував зробити максимально компактним. Сервопривід буде повністю знаходиться всередині, відповідно потрібно не забути (що я і зробив) про отвір для виведення проводів.

Деталь 1 — Вісь, на яку буде кріпитися Femur (друга частина ноги). Зібрана з гвинта М3х15, шайби і гайки М3
Деталь 2 — Гвинт М3х20
Деталь 3 — Стійка для друкованих плат M3x20
Деталь 4 — Є свого роду фіксаторами сервоприводу, для запобігання його переміщення по вертикалі.

Висоту (А) даного сайту необхідно робити такий, щоб всередину зміг вміститися сервопривід, який буде стояти на рамі.

Femur

Далі потрібно зробити «Femur». Деталь виявилася найбільш простої з усіх і думаю не потребує коментарів.


Деталь 1 — Гвинт М3х20
Деталь 2 — Пластикова втулка 3×10 (довгу стійку я не знайшов, довелося шукати інші шляхи вирішення)
Деталь 3 — Стійка для друкованих плат M3x30

Tibia

Наступна деталь — «Tibia», остання частина ноги. З нею проблем бути не повинно і її довжина залежить від висоти, на яку планується розуміти робота. У мене вона становить 130мм від осі сервоприводу, більше робити не став, так як із збільшенням довжини збільшується і навантаження на сервоприводи, особливо на сервопривід в «Coxa». На другій стороні зробив на другий отвір під вісь, щоб можна було перевернути сервопривід та зменшити довжину важеля, якщо раптом сервоприводам буде важко.

Читайте також  Епізод 0. Hack vs Mac. Xcode build time

Рама

Далі на черзі йде рама — найбільша частина. Саме вона визначає конфігурацію ніг майбутнього робота. Існує кілька варіантів розташування ніг, але я зупинився на варіанті літерою Ж (при погляді зверху схожий).

На перших етапах проектування виникло питання: «А на якій відстані повинні знаходиться ноги один від одного?». У пошуках відповіді на ці питання я зрозумів, що жодних рекомендацій з цього приводу немає. Вивчаючи чужі проекти і варіанти ход зробив висновок про те, що відстань підбирається виходячи з бажаного максимального кута повороту кінцівки. Чим більше відстань між ногами тим більший кут можуть досягти кінцівки під час ходьби.

У вирішенні даного питання допомогли креслення tomnewmann, з яких я і взяв відстань між ніг, так як габарити роботів були досить схожі (мій трохи менше). Через кілька годин народилися верхня і нижня частини рами:

В нижній частині рами зроблений виріз під АКБ і його кріплення. До речі кріпитися він буде на липучку, які використовуються на квадриках при кріпленні АКБ до них. Рама вийшло досить великий. Посидівши ще 1 вечір і зробивши проміжні деталі у вигляді опор між частинами, я вирішив, що пора зробити збірку рами з встановленими сервоприводами. Результат не змусив себе довго чекати:

Так як всі необхідні компоненти у нас вже є, то можна зробити повну збірку корпусу:

У центрі корпуса між пластинами планувався розташовуватися блок живлення для сервоприводів, знизу 3S Li-po акумулятор, а зверху плата управління (Arduino Due). У відповідності з цим я змінив складання рами:


Плата зверху це модель Arduino Mega c якимось шилдом. Використовується просто для вигляду і має аналогічні розміри, як і Due.

Читайте також  Генератор коду для Laravel — на введення RAML, на висновок JSON-API

Виглядає це не дуже красиво, а з урахуванням проводів, які будуть стирчати буде ще гірше. До того ж тіло здавалося мені дуже худим. Я вирішив максимально прикрити електроніку без шкоди зовнішньому вигляду і придумати назву своєму дітищу.

Рішенням першої завданням були кришки зверху і знизу, закривають АКБ і керуючу електроніку. Це єдині деталі, які будуть зібрані за допомогою клею. Через вечір народилася модель нижньої кришки.

Якщо з першим завданням проблем не було, то з другим завданням виникли труднощі на 2 дні. Так, саме стільки часу у мене зайняло, щоб просто придумати йому ім’я. Випадково згадавши фільм «Термінатор» вирішив назвати його «Skynet» і вирізати ім’я на верхній кришці. Так само додав вирізи для HC-SR04.

В результаті додавання двох дахом, корпус істотно змінив зовнішній вигляд в кращу сторону:

Отриманий результат мене дуже вразив і зовнішній вигляд досить привабливий. У другій частині розповім про складання корпусу і граблі, на які наступав.

P. S.

  1. Креслення не приховую і готовий поділитися ними з будь-яким бажаючим.
  2. Буду радий будь-якій критиці і готовий відповісти на будь-які питання в рамках даного матеріалу.

Степан Лютий

Обожнюю технології в сучасному світі. Хоча частенько і замислююся над тим, як далеко вони нас заведуть. Не те, щоб я прям і знаюся на ядрах, пікселях, коллайдерах і інших парсеках. Просто приходжу в захват від того, що може в творчому пориві вигадати людський розум.

You may also like...

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *