Механический робот-паук на Arduino
Вы хотите оригинальный способ напугать кота? Или же вам нужно переправить вещь из одной комнаты в другую, не вставая с дивана? Тогда наше изобретение именно для вас!
Тестирование механического робота-паука
История проекта
Все началось с того, что мы – пятеро студентов – решили сделать совместный проект. Часть нашей группы желала делать проект на «железе», часть хотела проект только на «софте». После долгого совещания мы пришли к компромиссу: создать робота на Arduino. Таким образом часть команды стала бы собирать робота, налаживать питание и тестировать его, а часть команды писать физику движения и распознавания. Спустя всего несколько дней была сделана первая визуализация робота-паука, а также разработаны первые модели деталей, и мы все загорелись этой идеей, сразу же приступив к разработке. Разработка проекта шла гладко, наш ВУЗ предоставил нам 3D-принтер, на котором мы напечатали лапы и корпус для нашего робота. Необходимое железо у нас было изначально. Одной из первых проблем после сборки робота, с которой мы столкнулись, была калибровка лап, но разобравшись со всем, мы смогли ее настроить должным образом. Затем проблемы были с одним из Финальная визуализация робота-паука сервоприводов: скорее всего он оказался бракованным – он не справлялся с подъемом лапы и перегревался больше остальных. Но несмотря на все трудности, мы завершили свой проект в срок, потратив на это чуть более 4 недель.

Описание проекта
1. Изначальная конфигурация и первые модели
Составляющие робота:
- Плата контроля Arduino Mega 2560
- 12 сервоприводов
- Корпус, напечатанный на 3D-принтере
- 6 лап напечатанных на 3D-принтере
2. Описание “железной” части
Основой управления роботом является плата Arduino 2560. Мы выбрали именно ее по причине большого числа пинов, потому что изначально робота паук разрабатывался с тремя сочленениями, что сразу увеличивало число сервоприводов до 18. А нам также хотелось оставить возможность присоединить различные датчики (изначально в задумке было несколько эхолотов). В качестве управления мы рассматривали Wi-Fi/Bluetooth связь, поэтому мы взяли плату ESP8266 версию NodeMCU представляющую собой отдельно программируемый модуль Wi-Fi.

Одной из самых сложных проблем являлась проблема питания. Мы изначально не представляли где раздобыть 18А для параллельного подключения 18 сервоприводов (или хотя бы 14). Таким образом мы пришли к выводу, что сначала уменьшим число сочленений, но и это не решало нашу проблему. Попытки спаять усилитель постоянного тока не увенчались успехом (по большей части из-за неопытности в пайке схем). Итогом мы убрали две ноги оставив только 4. А в качестве основы питания взяли старый блок питания от ноутбука способный выдавать 19В и 3.24А. Снизив данное напряжение до 5 вольт, удалось получить ток около 6А, чего хватает для питания 8 сервоприводов (каждый сервопривод приблизительно 750мА).

3. Описание программной части
Как уже было описано взаимодействие с роботом происходит через модуль Wi-Fi ESP8266 NodeMCU. Данная плата запрограммирована переходить в режим точки доступа. После подключения клиента появляется возможность зайти на сайт и управлять роботом с сайта. Помимо управления через сайт есть возможность передавать команды через программу, написанную с использованием библиотеки libcurl на С++ (библиотека собрана статически).

Немного фотографий сборки
Заключение
В результате слаженной работы у нас получилось создать дистанционно-управляемого робота паука. Удалось приобрести новый опыт работы с железом, повторили электронику, а также научились немного конструировать.
Ссылки
GitHub проекта – https://github.com/TheAntag0nist/Arduino-Spider
Команда проекта
- Князюк Рюрик Александрович – тимлид, разработка электрической схемы, реализация минимального API, корпус, программа передачи команд с ПК (client-part)
- Умецкая Екатерина Романовна – модуль видеоанализа, модуль автономной работы, 2 часть лапы, модуль движения робота, разработка сайта управления
- Громов Сергей Вадимович – модуль отображения информации, модуль видеоанализа, 3 часть лапы, модуль движения робота, разработка сайта управления
- Киселев Тимофей Георгиевич – Разработка электрической схемы, модуль приема и отправки, реализация минимального API, 1 часть лапы, Модуль WiFi ESP8266
- Елисеенко Анастасия Владимировна – модуль обработки команд пользователя, модуль камеры, корпус