Arduino-робот жук Ringo
Название проекта: Arduino-робот жук RingoПлатформа: Arduino
Небольшой arduino-проект для начинающих с большими амбициями: с одной стороны, не нужны никакие сложные детали и навыки, с другой - это настоящая мобильная робототехническая платформа, которую можно сделать своими руками.
Для реализации потребуется один день, но проект можно развивать и дорабатывать далее. Не обязательно владеть пайкой, которую многие новички боятся и избегают, в проекте используется бредбоард, и паяльник не нужен.
Программирование является еще одним страхом начинающих, Т.к. это настоящий робот, то, конечно, он имеет программу. Но сначала можно не вникать, а просто найти и скачать готовый код со страницы на GitHub. Это open source проект, программу можно изменять без каких либо ограничений. Возможно, это ваш первый робот и первый урок программирования.
Подготовка
Отлично, если вы знакомы с платформой Arduino. Если нет - не проблема. Построение робота Ringo - отличный способ это исправить. Начните с наших онлайн уроков Arduino для начинающих.
Необходимые для проекта компоненты: Arduino Uno с кабелем USB, коробочка для одной 9В батареи, батарейка 9В (или аккумулятор 7,2-8,4В), три небольших аналоговых сервоприводов, один инфракрасный (ИК) приемник, мини-бредбоард, соединительные провода, стальная проволока (диаметр 1,5 - 2 мм), 2-3 обычных металлических скрепки. Также пригодятся инструменты.
Как подключить ИК-приемник к Arduino
В проекте используется ИК-приемник и ИК-передатчик (это может быть пульт от вашего телевизора).
Давайте научимся получить команды с ИК-пульта дистанционного управления. Нужно считать и запомнить код сигнала, чтобы позже использовать его для управления роботом.
Возьмите Arduino Uno, бредбоард, соединительные провода и ИК-приемник. Соберите схему как на фотографии.
Эта схема подключения ИК-приемника TSOP2136. Если будете использовать другой приемник - смотрите его спецификацию.
Теперь скачайте пример кода с GitHub. Откройте Arduino IDE и проект /ir_receiver/ir_receiver.ino. Первая строка кода:
#include "IRremote.h"
Это означает, что скетч использует специальную библиотеку IRremote.h, в которой реализован функционал приема и отправки ИК-сигналов.
IRremote.h не является частью Arduino IDE, ее потребуется установить. Это open source проект с лицензией GNU, поэтому мы можем использовать этот код для своего робота. Откройте Serial Monitor и проверьте скорость передачи. Установите скорость 9600. Возьмите ИК пульт и начните нажимать на кнопки. Если собранная модель работает - вы видите коды в Serial Monitor.
Разные производители - разные коды, также коды могут отличаться для разных моделей ИК-пультов. Чтобы не разбираться в этих кодах и упростить задачу - просто выпишем соответствия кодов, нажатым кнопкам, которые мы будем использовать. Некоторые коды соответствуют повторному нажатию и удержанию кнопки - их не будем использовать.
Наш робот может выполнять 13 команд:
- Двигаться вперед.
- Двигаться Назад.
- Повернуть налево.
- Повернуть направо.
- Движение вперед с левым поворотом.
- Движение вперед с правым поворотом.
- Движение назад с левым поворотом.
- Движение назад с правым поворотом.
- Остановка.
- Установка 1-й скорости (медленная).
- Установка 2-й скорости.
- Установка 3-й скорости.
- Установка 4-й скорости (быстрая).
Выберите кнопки на пульте дистанционного управления для соответствующих команд. Например, кнопки 1-9 для первых девяти команд и цветные кнопки (красная, зеленая, желтая и синяя) - для последних четырех.
Теперь нажимайте соответствующую кнопку и записывайте соответствующие уникальные коды.
Прототип:
Прежде чем приступить к сборке робота, проверим работоспособность железа и программы. Загрузите скетч в микроконтроллер, измените в программе коды в соответствии с таблицей, которую вы составили. Нажимайте на управляющие кнопки пульта, проверьте реагируют ли серводвигатели, все ли работает. Проверьте работоспособность модели не только с питанием по USB, но и с питанием от аккумулятора.
Походка жука
Не все знают как ходят жуки, поэтому несколько слов о походке жуков и алгоритме для подражания. Обычная походка шестиногих жуков — конечности каждой из трех пар ног переставляются в противофазе друг другу, что напоминает «шагающие штативы». Но это не все виды походки жуков, некоторые умеют скакать.
Как мы можем реализовать походку жука? Наш робот имеет три сервопривода. Они установлены в ряд с левой стороны к правой. Левая серво - для левой передней и задних ног. Эти ножки изготовлены в виде одной детали. Правый сервопривод - для правой передней и задних ног. И центральный сервопривод - для средних ног.
Видео, демонстрирующее как это работает:
Монтаж
Чтобы прикрепить батарейный отсек к плате возьмем скрепку и сделаем кронштейн. Все остальные компоненты мы установим на Arduino Uno: сервоприводы, мини-бредбоард.
Распечатайте трафарет (скачать здесь). Возьмите линейку и проверьте длину линий. Если длина не совпадает нужно перед распечаткой поменять настройки в программе просмотра PDF-файлов.
Разогните скрепку, а затем согните ее по трафарету. Подключите булавку-кронштейн к цифровым пинам 9 и 12. Клеем приклейте кронштейн к нижней стороне держателя батареи. Не беспокойтесь о замыкании контактов 9 и 12. Это безопасно, т.к. мы не будем использовать их в скетче.
Рекомендуется использовать бредбоард как можно меньшего размера. Опытным путем автор проекта определи, что размер 5*10 пинов оптимален. Такой бредбоард можно либо купить готовый, либо обрезать от макетной платы кусок нужного размера.
Сервоприводы нужно подготовить - убрать наклейки, т.к. мы будем их склеивать, и отрезать монтажные петли, они занимают слишком много места. Сервоприводы бывают очень хрупкие.
Возьмите один сервопривод и приклейте его на верхней части держателя батареи. Постарайтесь расположить серво так же, как на фотографиях. Обратите внимание, нужно оставить некоторое пространство для миниатюрного бредбоард рядом с сервоприводом. Приклейте сервоприводы к держателю батареи.
Установите макетную плату. Обратите внимание, что ИК-приемник должен быть направлен вверх. Теперь включите выключатель на держателе батареи, попробуйте управлять роботом с ИК-пульта и убедитесь, что все работает.
Как насчет ног?
Автор проекта сделал трафареты, чтобы помочь подобрать размер и форму ног робота-жука. Распечатайте их и проверьте масштаб. Один трафарет для левой и правой фронтальных задних ног, другой трафарет - для средних. Приклейте ноги к серводвигателям. Кажется, все готово!
Этот Arduino-проект для начинающих можно развивать далее. Можно изменить внешний вид и изменить код. Роботу-жуку пригодятся различные датчики, крошечная веб-камера, Bluetooth-адаптер и ваша фантазия!
И чтобы вам не забывался этот проект, arduiono-жуки решили станцевать и спеть песню:
Использованные компоненты: плата arduino, три небольших аналоговых сервоприводов, стальная проволока (диаметр 1,5 - 2 мм), 2-3 обычных металлических скрепки, ИК-приемник, мини-бредбоард, стальная проволока (диаметр 1,5 - 2 мм), 2-3 обычных металлических скрепкиСайт проекта: http://www.instructables.com/id/Beetle-Ringo/?ALLSTEPS
Возможно вас также заинтересует готовый робот-жук.
Другие проекты на этой платформе:
- Робот-миньон-копилка Arduino
- Говорящий робот-пылесос. Универсальное улучшение на Arduino
- Шагающая тыква. Arduino-робот для Хэллоуина
- Sourino — самодельная роботизированная мышь
- Двуногий робот из Arduino, LEGO и деталей 3D печати
- Шестиногий шагающий робот из Arduino, LEGO и деталей 3D печати
- Робот-художник на базе Arduino Uno
- Самодельный робот-собака Spot Micro
- Сферический четвероногий робот Arduino
- Виртуальная игра, управляемая настоящим велосипедом (Arduino)
- Четверногий Arduino-робот mechDOG
- Велосипед, подключенный к Google Street View через Arduino
- Самодельный таймер мытья рук на основе Arduino
- Учебный набор начинающего ситифермера
- Робот на Arduino, управляемый с помощью жестов
- Как сделать аниматронный хвост
- Вездеход из Lego с видео и bluetooth на Raspberry Pi
- Робот Juno: изучай Arduino и программирование
- Робот-манипулятор из настольной лампы IKEA
- Arduino-робот, объезжающий препятствия
- Роботизированная интеллектуальная система — РИС
- Серво-выключатель света для умного дома
- Робот-рыба на Arduino
- Сделай сам большого человекоподобного робота
- Сноуборд в виртуальной реальности с Arduino и Google Cardboard
- Open Source проект робота на Arduino
- Робот-компаньон на основе Arduino и Android-смартфона
- Робот миньон из яйца от Kinder-сюрприза и Arduino
- Робот-собака на Arduino
- Робот WALL-E на Arduino
- Робот-Железяка 1, управляемый по Bluetooth
- Собирай кубик Рубика с Arduino UNO
- ArGo — автомобиль из конструктора Lego Technic и Arduino
- Arduino робот-сортировщик Skittles, напечатанный на 3D-принтере
- Полноразмерный робот T-800 из фильма Терминатор
- Робот Гадкий утенок
- Робот-шлем для чистки зубов
- Noodlebot — шагающий робот на базе Arduino
- Робот телеприсутствия из arduino и нетбука
- Arduino-Lego танк
- Робот для игры в воздушный хоккей из частей для 3D принтера
- Arduino драм машина (Yellow Drum Machine)
- Робот-гуманоид Halley: Ambassador Robot 001
- MobBob — шагающий робот-смартфон
- PopPet — оригинальный образовательный робот
- Робот, рисующий по фотографии
- Робот R2D2, напечатанный на 3D-принтере
- Робот, танцующий как Майкл Джексон
- Запускай кофе-машину, используя Twitter
- Управляй телевизором силой мысли и Arduino
- О’кей Google, Сезам, открой дверь
- Марсоход, напечатанный на 3D-принтере
- Шагающий робот из палочек от мороженого