Arduino-робот жук Ringo

Share Button
Название проекта: Arduino-робот жук Ringo
Платформа: Arduino

Небольшой arduino-проект для начинающих с большими амбициями: с одной стороны, не нужны никакие сложные детали и навыки, с другой - это настоящая мобильная робототехническая платформа, которую можно сделать своими руками.

ringoarduino2

Для реализации потребуется один день, но проект можно развивать и дорабатывать далее. Не обязательно владеть пайкой, которую многие новички боятся и избегают, в проекте используется бредбоард, и паяльник не нужен.

Программирование является еще одним страхом начинающих, Т.к. это настоящий робот, то, конечно, он имеет программу. Но сначала можно не вникать, а просто найти и скачать готовый код со страницы на GitHub. Это open source проект, программу можно изменять без каких либо ограничений. Возможно, это ваш первый робот и первый урок программирования.

Подготовка

Отлично, если вы знакомы с платформой Arduino. Если нет - не проблема. Построение робота Ringo - отличный способ это исправить. Начните с наших онлайн уроков Arduino для начинающих.

ringoarduinoMaterial

Компоненты, необходимые для разработки робота-жука

ringoarduinoInstruments

Инструменты, которые понадобятся

Необходимые для проекта компоненты: Arduino Uno с кабелем USB, коробочка для одной 9В батареи, батарейка 9В (или аккумулятор 7,2-8,4В), три небольших аналоговых сервоприводов, один инфракрасный (ИК) приемник, мини-бредбоард, соединительные провода, стальная проволока (диаметр 1,5 - 2 мм), 2-3 обычных металлических скрепки. Также пригодятся инструменты.

Как подключить ИК-приемник к Arduino

В проекте используется ИК-приемник и ИК-передатчик (это может быть пульт от вашего телевизора).

Давайте научимся получить команды с ИК-пульта дистанционного управления. Нужно считать и запомнить код сигнала, чтобы позже использовать его для управления роботом.
Возьмите Arduino Uno, бредбоард, соединительные провода и ИК-приемник. Соберите схему как на фотографии.

Подключение ИК-приемника к Arduino UNO

Подключение ИК-приемника к Arduino UNO

Схема подключения ИК-приемника к Arduino UNO

Схема подключения ИК-приемника к 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. Повернуть направо.
  5. Движение вперед с левым поворотом.
  6. Движение вперед с правым поворотом.
  7. Движение назад с левым поворотом.
  8. Движение назад с правым поворотом.
  9. Остановка.
  10. Установка 1-й скорости (медленная).
  11. Установка 2-й скорости.
  12. Установка 3-й скорости.
  13. Установка 4-й скорости (быстрая).

Выберите кнопки на пульте дистанционного управления для соответствующих команд. Например, кнопки 1-9 для первых девяти команд и цветные кнопки (красная, зеленая, желтая и синяя) -  для последних четырех.

Теперь нажимайте  соответствующую кнопку и записывайте соответствующие уникальные коды.

Прототип:

ringoarduinoProto

ringoarduinoProto3

Прежде чем приступить к сборке робота, проверим работоспособность железа и программы. Загрузите скетч в микроконтроллер, измените в программе коды в соответствии с таблицей, которую вы составили. Нажимайте на управляющие кнопки пульта, проверьте реагируют ли серводвигатели, все ли работает. Проверьте работоспособность модели не только с питанием по USB, но и с питанием от аккумулятора.

Походка жука

Не все знают как ходят жуки, поэтому несколько слов о походке жуков и алгоритме для подражания. Обычная походка шестиногих жуков — конечности каждой из трех пар ног переставляются в противофазе друг другу, что напоминает «шагающие штативы». Но это не все виды походки жуков, некоторые умеют скакать.

Как мы можем реализовать походку жука? Наш робот имеет три сервопривода. Они установлены в ряд с левой стороны к правой. Левая серво - для левой передней и задних ног. Эти ножки изготовлены в виде одной детали. Правый сервопривод  - для правой передней и задних ног. И центральный сервопривод - для средних ног.

Видео, демонстрирующее как это работает:

Монтаж

Чтобы прикрепить батарейный отсек к плате возьмем скрепку и сделаем кронштейн. Все остальные компоненты мы установим на Arduino Uno: сервоприводы, мини-бредбоард.
Распечатайте трафарет (скачать здесь). Возьмите линейку и проверьте длину линий. Если длина не совпадает нужно перед распечаткой поменять настройки в программе просмотра PDF-файлов.

ArduinoB1

ArduinoB2

ArduinoB3

 

ArduinoB5

ArduinoB6

Разогните скрепку, а затем согните ее по трафарету. Подключите булавку-кронштейн к цифровым пинам 9 и 12. Клеем приклейте кронштейн к нижней стороне держателя батареи. Не беспокойтесь о замыкании контактов 9 и 12. Это безопасно, т.к. мы не будем использовать их в скетче.

Рекомендуется использовать бредбоард как можно меньшего размера. Опытным путем автор проекта определи, что размер 5*10 пинов оптимален. Такой бредбоард можно либо купить готовый, либо обрезать от макетной платы кусок нужного размера.

tinybredborad

BredboardRezatСервоприводы нужно подготовить - убрать наклейки, т.к. мы будем их склеивать, и отрезать монтажные петли, они занимают слишком много места. Сервоприводы бывают очень хрупкие.

servohack

servohack2

Возьмите один сервопривод и приклейте его на верхней части держателя батареи. Постарайтесь расположить серво так же, как на фотографиях. Обратите внимание, нужно оставить некоторое пространство для миниатюрного бредбоард рядом с сервоприводом. Приклейте сервоприводы к  держателю батареи.

servohack3

servohack4

servohack5

Установите макетную плату. Обратите внимание, что ИК-приемник должен быть направлен вверх. Теперь включите выключатель на держателе батареи, попробуйте управлять роботом с ИК-пульта и убедитесь, что все работает.

Как насчет ног?

Автор проекта сделал трафареты, чтобы помочь подобрать размер и форму ног робота-жука. Распечатайте их и проверьте масштаб. Один трафарет для левой и правой фронтальных задних ног, другой трафарет -  для средних. Приклейте ноги к серводвигателям. Кажется, все готово!

Этот Arduino-проект для начинающих можно развивать далее. Можно изменить внешний вид и изменить код. Роботу-жуку пригодятся различные датчики, крошечная веб-камера, Bluetooth-адаптер и ваша фантазия!

И чтобы вам не забывался этот проект, arduiono-жуки решили станцевать и спеть песню:

Использованные компоненты: плата arduino, три небольших аналоговых сервоприводов, стальная проволока (диаметр 1,5 - 2 мм), 2-3 обычных металлических скрепки, ИК-приемник, мини-бредбоард, стальная проволока (диаметр 1,5 - 2 мм), 2-3 обычных металлических скрепки



Сайт проекта: http://www.instructables.com/id/Beetle-Ringo/?ALLSTEPS

Возможно вас также заинтересует готовый робот-жук.

Другие проекты на этой платформе:

Перейти в каталог DIY-проектов роботов

Как добавить робопроект в каталог?
Share Button

Нет комментариев.

Оставить комментарий

© 2014-2024 Занимательная робототехника, Гагарина Д.А., Гагарин А.С., Гагарин А.А. All rights reserved / Все права защищены. Копирование и воспроизведение в любой форме запрещено. Политика конфиденциальности. Соглашение об обработке персональных данных.
Наверх