payaem.ru

Паяем — Все о электронике

Автономный танк — робот на базе Arduino

Привет всем.

Здесь представлен довольно простой проект робота на основе Arduino. Он способен управлять игрушкой (в данном случае танком) и при этом видеть препятствия перед собой. Очень хороший проект для начинающих любителей робототехники.

Этот робот сделан из шасси от игрушечного радиоуправляемого танка и нескольких других элементов, список этих элементов представлен ниже.

Список нужных материалов

  • Шасси от радиоуправляемого танка.
  • Arduino Uno
  • Макетная плата и перемычки.
  • Интегральный драйвер моторов SN754410NE
  • Стандартный сервопривод.
  • Ультразвуковой дальномер.
  • 9 Вольт батарея и разъём для неё.
  • 4 батарейки D и разъем для них.
  • Кабель USB A-B.
  • Основа 6?х 6?.

Необходимые инструменты

  • Отвёртки.
  • Термопистолет для клея.
  • Паяльник и припой.

Для управления двигателями можете использовать драйвер SN754410NE, но можно использовать и другие, к примеру L293.

Теперь объясним подключение драйвера к Arduino Uno. Все выводы GND (4,5,12,13) подключайте к GND макетной платы.  Контакты драйвера  1 и 16 подключайте к выводам 9 и 10 Arduino. Контакты драйвера 2 и 7 подключайте к контактам 3 и 4 Arduino, это контакты для управления левого движка. Контакты драйвера 10 и 15 подключайте к выводам 5 и 6 Arduino, это контакты для управления правого движка.  Контакты 3 и 6 подключайте к левому мотору, а контакты 14 и 11 к правому мотору. Контакты 8 и 16 должны быть присоединены к питанию на макетной плате. Источник питания — батарея 9 Вольт.

Теперь ставим дальномер. Ультразвуковой дальномер даёт возможность роботу не наткнуться на препятствия при движении. Он устанавливается на стандартном сервоприводе, который размещён в передней части робота. Если робот видит объект на расстоянии 10 см, сервопривод начинает вращаться, в поисках прохода,  а после Arduino решает, какая сторона максимально благоприятна для дальнейшего передвижения.

Закрепите на нём разъём для подключения. Нужно ограничить сервопривод таким образом, чтобы он не мог поворачиваться более чем на 90 градусов в каждую из сторон.

На датчике имеется три контакта GND, 5В и сигнал. GND подключайте к GND, 5В к 5В Arduino и сигнал подключайте на 7 контакт Arduino.

Arduino получает питание от батареи 9 Вольт через соответствующий разъём. Для питания движков используются четыре батарейки размера D и соответствующий разъём. Для питания движков подключайте провода от держателя к плате с SN754410NE.

Теперь приступим к сборке. Если все части готовы, то значит пора собрать их. Изначально нужно закрепить Arduino на основу. Затем с помощью термоклея прикрепите дальномер с сервоприводом на переднюю часть нашего робота. После этого нужно закрепить батареи. Можно установить их где угодно, но удобнее будет поместить их рядом с Arduino. Если всё готово, можно включить робота, чтобы убедиться, что Arduino работает хорошо.

Теперь, после сборки робота пришло время написать для него программу.

Данный робот двигается прямо, до тех пор пока объект на расстоянии больше 10 см. Когда он распознаёт объект, он начинает вращать датчиком в поисках пути. Когда сканирование завершается, программа выбирает оптимально лучшую сторону для дальнейшего движения. Если робот попадает в тупик, то он разворачивается на 180 градусов.

Программа представлена ниже. Её можно модифицировать и дополнить, как вам угодно.

ArduinoTank

Вот и всё. Всего доброго.

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

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