Автономный танк на Arduino

Робот состоит из шасси от радиоуправляемого танка и нескольких других компонентов, список которых приведён ниже. Это мой первый проект на Arduino, и платформа Arduino мне понравилась. При создании этого робота и пользовался материалами из книг и интернета.

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

Инструменты
1. Набор отверток.
2. Термопистолет с клеем.
3. Припой и паяльник.

Шасси

Шасси я взял из танка, купленного за 10$. Основу можно прикрепить к нему в любом месте, но я прикрепил её посередине.

Драйвер двигателя SN754410NE

Для управления двигателями я использовал драйвер 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В через соответствующий разъём. Для питания двигателей я использовал 4 батарейки размера D и соответствующий разъём. Для питания двигателей подключите провода от держателя к плате с SN754410NE.

Сборка

Когда все части готовы, пришло время собрать их. Сначала мы должны прикрепить Arduino на основу. Потом при помощи термоклея прикрепим дальномер с сервоприводом на переднюю часть робота. Потом необходимо прикрепить батареи. Вы можете разместить их где вам угодно, но я разместил их рядом с Arduino. Когда всё готово,  вы можете включить робота, чтобы удостоверится что Arduino работает.

Программа

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

Оригинал статьи

Прикрепленные файлы:

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

Ваш адрес email не будет опубликован.