Робот Боб 2.0

Робот Боб 2.0

Это улучшенная версия робота избегающего препятствия.  Я решил назвать этого робота Боб. Были исправлены недостатки и недочеты предыдущей версии. Было улучшено:

Для питания используется аккумулятор 9.6В и импульсный регулятор напряжения. Было улучшено крепление датчиков и добавлен дополнительный ИК датчик GP2D12. Ультразвуковой дальномер был установлен на сервопривод. На плату Arduino был установлен микроконтроллер ATmega168.

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

Список деталей

Сервоприводы:

1x Futaba S3003

2x Parallax Сервоприводы непрерывного вращения

Монтажные компоненты:

1x 3pin кабель для датчика

1х Макетная плата

1х Разъем для аккумулятора

Кабельные стяжки

Провода различной длины

Датчики:

3x ИК-датчики GP2D12

Ультразвуковой дальномер "Ping)))"

Питание:

1х Ni-Cd аккумулятор 9.6В

1х Импульсный стабилизатор напряжения 5В, 1А

Основа:

Arduino

Шасси:

Я использовал шасси из комплекта "BOE-Bot Kit" от Parallax. Вы можете использовать оргстекло, пластик или даже кусок дерева нужной формы.

Прочее:

1x Пьезо динамик – я использовал его для индикации начала работы программы.

1x Светодиод

1x 200 Ом резистор для светодиода

Установка ИК датчиков

На кронштейне датчика есть несколько отверстий, которые совпадают с отверстиями на шасси. Соедините их винтами.

Установка дальномера с сервоприводом

Серво привод служит для вращения дальномера по горизонтали для получения большего радиуса измерений.

Я использовал самодельную стойку из плексигласа для установки дальномера. Нужно вырезать два куска плексигласа размером на пару мм больше, чем размер дальномера, просверлить необходимые отверстия и склеит эти часть под прямым углом. Потом необходимо просверлить отверстие немного больше чем винт на сервомоторе, и при помощи него прикрепить сервомотор. Эта операция достаточно проста и вы с ней без проблем справитесь. Если у вас есть сервопривод который может повернуться на 180 градусов, то нет необходимости покупать S3003 Futaba. Настройте значения ШИМ в программе, если используете другой привод. Если их не настроить, он будет пытаться повернуться больше, чем может физически и выйдет из строя.

Установка Arduino

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

В интернете я нашел "Arduino Proto Shield " – макетную плату для установки на неё Arduino. Прикрепите её к Arduino и подключите провода к ней:

     Pin (АЦП) 0: Левый GP2D12

     Pin (АЦП) 1: Центральный GP2D12

     Pin (АЦП) 2: Правый GP2D12

     Pin 5: Сервопривод дальномера

     Pin 6: Левый сервопривод

     Pin 7: Ультразвуковой дальномер Ping

     Pin 9: Правый сервопривод

     Pin 11: Пьезо динамик

Я не использовал дополнительные фильтрующие конденсаторы, т.к. стабилизатор 5В имеет встроенные. Необходимо использовать 220 Ом резистор между светодиодом и VCC.

Программа

Код для Боба подробно прокомментирован и его понимание не составит труда. Также закомментированы те части кода, которые не используются.  Кусок кода, который обрабатывает показания дальномера, был взят с сайта Arduino.  Код можно просмотреть в любом текстовом редакторе.

Заключение

Я буду расширять возможности Боба – скоро я добавлю  датчик звука и света, фоторезистор для обнаружения людей и некоторые другие датчики.

Сейчас Боб только избегает препятствий.3 ИК датчика служат для обнаружения объектов на пути и ультразвуковой дальномер служит для  обнаружения объектов в слепых пятнах ИК-датчиков и для поиска пути при обнаружении большего количества объектов. Я думаю, что время его работы составляет около 1 часа 20 мин. при полном заряде батареи. Я также думаю над его внешним видом. Вот видео его работы:

Скачать код для Arduino

Оригинал статьи на английском языке (перевод: Александр Касьянов для сайта cxem.net)


Категория: Аппаратура радиоуправления моделями
Метки:

Написать коментарий

*
= 3 + 9

Добавить изображение

Последние статьи