Сборка Саурона: Полугуманоидный робот на Arduino Mega 2560 – Полное руководство
Компоненты и материалы
| Arduino Mega 2560 | 1 шт. |
| 1Sheeld (шIELD для смартфона) | 1 шт. |
| Android-смартфон | 1 шт. |
Инструменты
- Лазерный резак
Программное обеспечение
- Arduino IDE
- Приложение 1Sheeld (Google Play)
- Библиотека 1Sheeld для Arduino
О проекте
Вы фанат «Властелина колец»? Тогда вы знаете Саурона! Мы построим полугуманоидного робота человеческого роста, похожего на Саурона.
Робот имеет: две руки с 3 степенями свободы (DOF), голову с 3 DOF и фиксированную базу.
Три режима работы (переключение двумя кнопками на цифровых входах):
- Режим ожидания (Standby) – демонстрационные движения для привлечения внимания.
- Режим геймпада (Gamepad) – управление через щит Gamepad в приложении 1Sheeld.
- Режим имитации (Imitation) – робот повторяет движения оператора. Надеваете перчатку со смартфоном, Arduino считывает ориентацию/гироскоп и управляет руками робота (как в фильме «Железный чемпион»).
Проект создан для New York Maker Faire, чтобы вдохновить детей на робототехнику с Arduino и 1Sheeld. Все файлы (CAD, схемы, код, DXF для лазера) прилагаются.
Шаг 1: Голова робота
Использован открытый дизайн головы «Fritz» от xyzbot. Детали вырезаны лазером из 3-мм фанеры. 3D-печатные части глаз, бровей и губ опущены для экономии времени и стоимости. Сборка по видео-инструкции автора Fritz (пропуск базы и 3D-частей).
Шаг 2: Корпус робота
Корпус из стержней Artelon и 3-мм фанеры. Соединения «ласточкин хвост» и винты 4×20 мм (дерево–Artelon), 12×30 мм (Artelon–база), 4×10 мм (сервоприводы–дерево). Скелет Artelon: базовый стержень 50 мм, скелет 25 мм, поперечины 15 мм. Чертежи в прилагаемых PDF/DXF.
Шаг 3: База робота
Проектирована в SolidWorks из 6-мм листового металла сlightenening отверстиями. Крепится к столу 3 винтами или 2 зажимами C-образными. DXF-файл прилагается.
Шаг 4: Руки робота
Главная сложность – модульные, легко разбираемые руки. Предплечья спроектированы для смены насадок (меч, крюк, кулак, гриппер). Рама из фанеры, плечевые суставы – алюминиевые pan-tilt. Момент сил рассчитан в SolidWorks (нужно ~3 кгс/см, поставлены с запасом). Предплечья нарезаны лазером по слоям (Autodesk 123D Make). Файлы SolidWorks прилагаются.
Шаг 5: Косплей Саурона (шлем и броня)
Друг Карим помог с косплеем по инструкциям с Instructables (адаптировано под размеры робота). Ссылки на оригиналы в описании.
Шаг 6: Электроника
- Arduino Mega + 1Sheeld – управление сервоприводами рук и головы.
- БП 5В/5А – питание серв и Arduino.
- Мини-брэдборд – общая шина питания/земли.
- 1Sheeld – Bluetooth-шIELD, даёт доступ к сенсорам смартфона. Используемые щиты: Gamepad, Orientation, Music Player, Toggle Button, Terminal.
Роли щитов:
- Gamepad – виртуальный джойстик для ручного управления.
- Orientation – смартфон в перчатке передаёт углы для режима имитации.
- Music Player – воспроизводит голос Саурона при движении рта.
- Toggle Button – выбор режима вместо физических кнопок.
- Terminal – вывод логов (1Sheeld блокирует Serial Monitor).
Шаг 7: Код Arduino
Важно: перед загрузкой переключите 1Sheeld в Upload Mode (UART Switch от логотипа), после загрузки – обратно в Operating Mode (к логотипу).
Код управляет 9 сервоприводами (3 на руку, 2 на шею, 1 рот), опрашивает пины режимов (2, 3) через прерывания, реализует три режима:
- Standby – последовательность 9 поз с движением рта под музыку.
- Gamepad – реакция на кнопки: вверх/вниз/влево/вправо + 4 комбо (красная, оранжевая, зелёная, синяя).
- Imitation – маппинг ориентации смартфона (Y, Z) на углы серв левой руки.
Полный код см. в разделе Code (файл F5KJZGXIKMXG3DG.ino).
Шаг 8: Саурон на Maker Faire New York
Фото робота в действии на ярмарке – с детьми, в костюме, в разных позах.
Шаг 9: Планы
- Видео сборки и демонстрации режимов.
- Голова: добавить остальные сервоприводы, напечатать глаза (веки, глотки, шарики).
- База: заменить на 4 mecanum-колёса для передвижения (чертежи в SolidWorks готовы).
Исходный код (основные фрагменты)
#define CUSTOM_SETTINGS
#define INCLUDE_GAMEPAD_SHIELD
#define INCLUDE_MUSIC_PLAYER_SHIELD
#define INCLUDE_TERMINAL_SHIELD
#define INCLUDE_ORIENTATION_SENSOR_SHIELD
#include <OneSheeld.h>
#include <Servo.h>
Servo rightArm_Motor1, rightArm_Motor2, rightArm_Motor3;
Servo leftArm_Motor1, leftArm_Motor2, leftArm_Motor3;
Servo neckHorizontal, neckVertical, mouth;
const int modePin1 = 2, modePin2 = 3;
volatile boolean gamepadMode_Enabled = false, imitationMode_Enabled = false;
void setup() {
OneSheeld.begin();
pinMode(modePin1, INPUT); pinMode(modePin2, INPUT);
attachInterrupt(digitalPinToInterrupt(modePin1), gampadMode_ChangeISR, CHANGE);
attachInterrupt(digitalPinToInterrupt(modePin2), imitationMode_ChangeISR, CHANGE);
// Привязка серв к PWM пинам 4-12
// Установка домашних позиций
}
void loop() {
if (digitalRead(modePin1) == HIGH) gamePadMode();
else if (digitalRead(modePin2) == HIGH) imitationMode();
else standbyMode();
}
// standbyMode() – 9 поз с задержками, проверка прерываний между позами
// gamePadMode() – опрос GamePad.isUpPressed() и т.д., установка углов серв
// imitationMode() – map(OrientationSensor.getY(), -90, 90, 0, 180) и т.д.
// ISR для переключения режимов
Схема подключения
Схема в Fritzing: сервоприводы к пинам 4–12 Mega, питание от внешнего БП, общая земля, 1Sheeld на Mega.
Производственный процесс
- Повышение последовательности с автономными распылительными роботами
- Как роботы для покраски сокращают переработку, повышают последовательность и экономят затраты
- Сокращение затрат на переработку в производстве: стратегии для эффективности и качества
- Робототехническое зрение в промышленности: От зрения к само-программированию
- Что такое само-программируемый робот и почему это важно
- Промышленные роботы: проектирование, производство и будущие тренды
- Максимизация эффективности: многороботная литейная ячейка производит готовый шейкер за один цикл
- Создайте идеальную команду внедрения ERP: проверенные стратегии успеха
- Построение DIY SCARA-робота на Arduino — полное руководство
- Будущее автоматизации: самовоспроизводящиеся роботы перестраивают Индустрию 4.0