Робот объезжающий препятствия

uprav20-1

Привет.

Здесь представлен модифицированный вариант робота, который избегает препятствия.

Здесь добавлены:

  • Система питания
  • Дополнительные датчики
  • Соединения сделаны наиболее качественно
  • Используется наиболее «шустрый» контроллер

В качестве питания применяется аккумулятор 9.6 Вольт, а также импульсный регулятор напряжения. Здесь установлен дополнительный инфракрасный датчик GP2D12. Ультразвуковой дальномер поставлен на сервопривод. На плате Arduino поставлен  микроконтроллер ATmega168.

Нужные элементы

  • Сервоприводы: 1x Futaba S3003; 2x Parallax Сервоприводы непрерывного вращения.
  • Монтажные компоненты:

1x 3pin кабель для датчика
1х Макетная плата
1х Разъем для аккумулятора
Кабельные стяжки
Провода разной длины

  • Датчики:
    3x инфракрасные датчики GP2D12
    Ультразвуковой дальномер «Ping)))»

uprav20-2

Питается от: 1х Ni-Cd аккумулятор 9.6 Вольт;
1х Импульсный стабилизатор напряжения 5 Вольт, 1 Ампер.

uprav20-3

Базовая основа — плата Arduino

Шасси используются из набора «BOE — Bot Kit» от Parallax. Можно применить оргстекло, пластик либо кусок дерева необходимой формы.

Прочие дополнительные элементы:

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

Установка инфракрасных датчиков

uprav20-4

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

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

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

uprav20-5

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

uprav20-6

Установка 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.

uprav20-7

Программа

 

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

Три инфракрасных датчика нужны для обнаружения объектов на своём пути и ультразвуковой дальномер установлен, чтобы обнаруживать объекты в слепых пятнах инфракрасных датчиков, а также для поиска пути, когда будет обнаружено большое количество объектов. Над внешним видом можете поэкспериментировать, как вам угодно.

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

Дополнительный файл — Robot

 

Похожее ...

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *