Как собрать робота с нуля: пошаговая инструкция
Первая часть гайда по созданию управляемой мини-платформы. Готовим детали и начинаем сборку робота.
Иллюстрация: Катя Павловская для Skillbox Media
В интернете полно статей и видео с названиями в духе: «Собираем робота с нуля в домашних условиях». Однако большинство из них довольно беспощадны по части требуемых компонентов и сложны для новичков: повторяешь точь-в-точь все шаги из инструкции, вот только у авторов всё работает, а у тебя почему-то нет.
Поэтому мы решили подготовить собственное руководство для тех, кто жаждет собрать робота, но не знает, как подступиться к этому делу. Вы узнаете, как собирать (и обязательно соберёте!) собственного робота — машинку на дистанционном управлении. Выглядеть наш агрегат будет примерно так:
Роботом можно будет управлять прямо с вашего смартфона по Bluetooth. Именно с такого проекта новички часто начинают свой путь в робототехнике.
Это руководство будет состоять из двух частей. В первой части мы соберём саму машинку, а во второй расскажем, как запрограммировать движения и настроить управление роботом со смартфона.
Этапы создания мини-платформы
Вот основные шаги нашего туториала:
- Подготовка деталей. Можно использовать детали из готовых наборов или смоделировать собственные и распечатать на 3D-принтере.
- 3D-моделирование*. Если всё же решитесь печатать детали сами, в середине статьи вас ждёт инструкция и готовые модели для печати.
- Сборка. Физически соединим элементы корпуса.
- Подключение электроники. Подключим моторы, проведём питание для робота. В некоторых случаях может понадобиться паяльник, если вы купили «голые» моторы с ещё не припаянными проводами.
- Программирование. Напишем программу для управления роботом. Настроим и «пульт управления» — мобильное приложение Arduino Bluetooth Control.
В первой части гайда мы рассмотрим только первые три этапа.
Какие материалы понадобятся
Для создания робота понадобятся стандартные материалы для сферы робототехники — их можно приобрести в специальных магазинах с товарами для Raspberry Pi и Arduino или на любом маркетплейсе. Чтобы ускорить процесс, приобретите готовый набор для сборки умного автомобиля — например, такие есть на Ozon и AliExpress.
Если у вас уже есть опыт создания подобных проектов, вы можете выполнить задания туториала «со звёздочкой» и дополнительно попрактиковаться в моделировании. В этом случае вам потребуется 3D-принтер.
Теперь пройдёмся по основным компонентам нашего будущего робота.
Arduino Uno
Именно эта плата будет управлять всеми компонентами робота. Мы советуем выбрать самый распространённый микроконтроллер в семействе Arduino — Arduino Uno. Он прост и понятен для новичков, а его функций будет достаточно для реализации любой идеи. К тому же о нём создано огромное количество материалов — их можно использовать для вдохновения или в качестве пошаговой инструкции при создании дальнейших проектов.
Компоненты корпуса
Вот из каких частей будет состоять «скелет» робота:
- Пластины (нижнее основание и верхняя платформа) — основа корпуса. На верхней пластине (крышке) будет закреплён батарейный отсек и плата Arduino Uno. К нижней пластине (основанию) будут прикреплены моторы и драйвер для моторов.
- Соединительные пластины. В нашей модели и нижнее основание, и верхняя платформа сделаны из половинок, соединённых перемычками — соединительными пластинами. Вы же можете использовать две цельные детали.
- Кронштейны (стойки-фиксаторы) для моторов — 8 штук.
Если вы используете готовый набор, то, скорее всего, найдёте все нужные детали в комплекте.
DC-моторы с редукторами (4 штуки)
Чтобы привести нашего робота в движение, нам понадобится по два мотора на каждую сторону конструкции — всего 4 штуки. Они будут крепиться к нижнему основанию с помощью вертикальных кронштейнов и управлять движением колёс.
Драйвер двигателя L298N
Драйвер будет управлять скоростью и направлением движения робота.
Bluetooth-модуль HC-06
Bluetooth-модуль нужен для беспроводного управления роботом с телефона.
Колёса
Ну и куда же без них :)
Дополнительные компоненты
- Крепёж: винты, гайки, а также стойки длиной 3 см (8 штук) — они будут соединять верхнюю и нижнюю пластины конструкции.
- Провода, стяжки для проводов.
- Источник питания — две литийионные батареи по 3,7 вольта.
- Держатель для батареи.
3D-моделирование*
Перед началом: если вы не готовы погружаться в нюансы 3D-моделирования и хотите просто распечатать на принтере готовые модели, можете использовать наши.
Если же вы решили спроектировать модель сами, сделать это можно в любом доступном CAD-редакторе, например Fusion 360, Siemens NX, SolidWorks, Onshape.
При подготовке этого туториала мы использовали программу Onshape. Для работы с ней не нужно ничего устанавливать на компьютер, можно работать прямо в браузере. Эта программа удобна для создания простых деталей, а также имеет встроенную систему контроля версий, что позволит откатиться к предыдущей версии в случае, если вы допустили ошибку. Если же вы планируете серьёзно заниматься прототипированием, рекомендуем освоить работу и в полноценных десктопных CAD-программах.
Теперь приступим к моделированию деталей. Габариты робота сделаем такими:
- длина — 54 см,
- ширина — 22 см,
- высота — 3 см.
Нам понадобятся пластины для верхнего и нижнего основания нашего робота. Мы заранее учли ограничения принтера — размеры печатного стола не позволили бы распечатать цельную пластину, поэтому мы изначально смоделировали две пары полупластин. Вы можете сделать нижнее и верхнее основания цельными.
Две пластины будут фиксироваться вертикальными металлическими стойками, поэтому не забудьте предусмотреть отверстия для винтов по краям пластин. На нижней пластине нужно предусмотреть отверстия для крепления драйвера и вставки кронштейнов.
При моделировании верхней пластины важно учесть отверстия для Arduino Uno, батарейного отсека, а также отверстия для проведения проводов.
Теперь нужно смоделировать кронштейны и соединительные пластинки. Внешний вид и размеры не принципиальны, главное — учесть отверстия для креплений и замеренное расстояние между ними (штангенциркуль или просто линейка вам в помощь 😉).
Итак, корпус робота в сборке вместе с моторами будет выглядеть примерно так (листайте, чтобы посмотреть в разных проекциях):
Готовую 3D-модель нужно экспортировать в формате STL, а затем сгенерировать GCODE — это формат файлов, который поддерживает большинство 3D-принтеров. Теперь всё должно быть готово к печати.
Подготовка к сборке
Перед тем как начать, давайте убедимся, что у нас есть всё необходимое, — чтобы в процессе сборки не пришлось дополнительно что-то заказывать.
Вот полный список материалов:
- детали корпуса:
- верхняя пластина;
- нижняя пластина;
- соединительные пластины;
- вертикальные кронштейны для моторов;
- моторы с редукторами;
- колёса;
- плата Arduino Uno;
- драйвер для моторов;
- батарейный отсек;
- стойки, винты и гайки;
- провода и соединения;
- зажимы и стяжки для проводов;
- паяльник — чтобы соединять провода с контактами.
А теперь переходим к сборке робота.
Собираем робота
Готовим нижнее основание
Шаг 1. Для начала нужно припаять провода к моторам.
Шаг 2. Затем закрепим моторы к платформе с помощью фиксаторов. Также закрепим драйвер. Спаяем провода, соединённые попарно, как показано на иллюстрации.
Подключаем моторы к драйверу
Драйвер нам необходим для предотвращения перегрузки Arduino, так как моторы требуют более высокого напряжения, чем то, которое может поддерживать плата. А ещё драйвер помогает управлять скоростью и направлением движения мотора.
Используемый нами модуль L298N имеет два выхода для подключения моторов, что позволяет управлять двумя моторами напрямую. Однако к нему мы можем подключить и четыре мотора так, что каждый из двух каналов драйвера будет управлять двумя моторами одновременно.
Для удобства подключения пронумеруем каждый мотор:
Шаг 4. Подключим выводы моторов к выводам драйвера в следующем порядке.
Канал A (разъёмы OUT1, OUT2):
- первый мотор — к контактам OUT1 и OUT2;
- второй мотор — к контактам OUT1 и OUT2.
Получится, что один провод мотора подключён к контакту OUT1, а другой — к контакту OUT2.
Канал B (разъёмы OUT3, OUT4):
- третий мотор — к контактам OUT3 и OUT4;
- четвёртый мотор — к контактам OUT3 и OUT4.
Аналогично: один провод мотора подключён к контакту OUT3, а другой — к контакту OUT4.
Шаг 5. Подключаем питание. Напомним, что в нашем случае это две аккумуляторные батарейки по 3,7 вольта. Положительный вывод источника подключим к драйверу (вход +12V на драйвере). Драйвер может работать с напряжением от 5 вольт до 35 вольт, так что 7,4 вольта подходит.
Шаг 6. Подключим отрицательный вывод источника питания к GND на драйвере L298N.
В игру вступает Arduino
Самое время имплантировать «мозг» нашему роботу.
Шаг 7. Подключим GND Arduino к GND драйвера. Подадим питание на логику драйвера (контакт 5V) от микроконтроллера.
Важный момент: модуль L298N обычно поставляется с перемычками, которые обеспечивают вращение моторов на полной скорости. Если их убрать, можно будет управлять скоростью моторов программно. Мы оставим перемычки на месте.
Шаг 8. Подключим провода к контактам управления двигателями для дальнейшего подключения к Arduino.
Попробуйте подключить моторы к источнику питания, чтобы проверить, в какие стороны они вращаются. Если моторы вращаются не в нужном направлении, поменяйте их подключение к драйверу.
Подключаем элементы к Arduino
Шаг 9. Присоединим контакты моторов к пинам 6–9 Arduino. Затем подключим «землю» от выводов GND и 5V драйвера к GND, 5V на Arduino соответственно.
Шаг 10. Подключаем Bluetooth-модуль.
Bluetooth-модуль нужно подключить к последовательным портам ввода/вывода 0 (RX) и 1 (TX). RXD и TXD Bluetooth-модуля подключим к TX- и RX-порту Arduino соответственно (они так и подписаны на плате). Подключим синезубый модуль к питанию от Arduino: соединим VCC и GND Bluetooth-модуля с питанием (5V) и «землёй» (GND) Arduino соответственно.
Важно!
Перед загрузкой кода необходимо будет отключить Bluetooth-модуль от Arduino, а затем подключить обратно. Это связано с тем, что порты TX, RX Arduino используются также для загрузки кода с компьютера на микроконтроллер, то есть порт уже будет занят и Bluetooth-модуль не сможет «достучаться» до него.
Финальные штрихи
Теперь дело за малым: осталось соединить верхнюю и нижнюю части робота. Для этого нам понадобятся соединительные пластины, стойки и винты.
Шаг 11. Прикрепим верхнюю часть платформы к нижней при помощи стоек. Соединим части крышки и основания соединительными пластинами, как показано на иллюстрациях. Закрепим Arduino и батарейный отсек на верхней платформе робота.
По завершении сборки ваш робот будет выглядеть так.
Что дальше
Поздравляем, вы только что собрали своего собственного робота 🥳 Самое время заказывать пиццу, запускать сериал и всячески праздновать первый крупный робоуспех. В следующей части расскажем, как запрограммировать робота, настроить Arduino IDE и наладить управление машинкой со смартфона. Чтобы не пропустить вторую часть, продолжайте следить за выходом статей на сайте и в нашем телеграм-канале 😉
Другие статьи про роботов в Skillbox Media
- Зачем нужны антропоморфные роботы?
- Александр Амбарцумов: «Высшая цель робототехники — создание протеза человеческого тела
- Эффект зловещей долины: что это, почему он появляется и как с ним справиться
- Нейросети не в своём уме: ИИ‑шизофреники и душевнобольные чат-боты
- Создатель робота FEDOR Евгений Дудоров: «Наша ключевая задача — технологический суверенитет