Конкурс самоделок
» » » Робот следующий за объектом - Arduino

Робот следующий за объектом - Arduino

Робот следующий за объектом - Arduino

Интересный и не сложный робот, который движется за объектом определенного цвета.

Для определения положения объекта используется камера смартфона, закрепленного на шасси робота. Можно использовать готовый конструктор, про который я уже писал здесь. Вот список того, что понадобилось автору. За исключением смартфона, стоимость этого робота составила 60$
- Arduino UNO
- Смартфон с Android OS
- Шасси робота
- кабели для подключения
- H мост для двигателей постоянного тока( автор использовал pololu TB6612FNG )
Робот следующий за объектом - Arduino
Робот следующий за объектом - Arduino

На картинке показано как соединяется TB6612FNG и Arduino Uno

Выводы драйвера и за что они отвечают :
1) GND - ​​Подключите его к GND выводам на Arduino
2) VCC - Напряжение питания логики драйвера. Подключите его к 5V выводе на Arduino.
3) А01 - выходной контакт, который подключен к положительному выводу мотора А.
4) А02 - выходной контакт, который подключен к отрицательному полюсу мотора А
5) B02- выходной контакт, который подключен к отрицательному полюсу мотора В.
6) B01- выходной контакт, который подключен к положительному выводу мотора B
7) VMOT- Вывод напряжения питания двигателей. Подключите его к положительному полюсу батареи. (Для питания двигателей)
8) GND- Подключите его к отрицательной клемме аккумулятора.
9) GND- Подключите его к GND штифтом на Arduino.
10) PWMB- ШИМ контакт драйвера мотора для регулировки скорости мотора B. Подключите его к любому из контактов ШИМ на Arduino и укажите значение скорости для двигателя от 0-255.
11 и 12) и BIN2 BIN1 - Входные контакты драйвера мотора для двигателя B, которые определяют направление вращение мотора В. подключить его к любым двум цифровым выводам Arduino.
13) STBY- Подключите его к любому цифровому выводу. При установке на нем высокого уровня включает драйвер
14 и 15) AIN1 и AIN2- Входные контакты драйвера двигателя для двигателя, которые указывают направление вращение мотора А. Подключите его к любым двум цифровым выводам Arduino.
16) PWMA- ШИМ вывод драйвера двигателя для регулировки скорости мотора А. Подключите его к любому из контактов ШИМ на Arduino и укажите значение скорости для двигателя от 0-255.

Bluetooth модуль HC- 06

Робот следующий за объектом - Arduino


На Aliexpress стоит примерно 6$

Как это все работает?

В данном проекте используется Android смартфон со специальными приложением, которое обрабатывает информацию с камеры, чтобы определить, где находится красный объект, вычисляет его координаты
Робот следующий за объектом - Arduino
и посылает данные по Bluetooth к Arduino. Приложение использует openCV библиотеку для обработки изображения. Это библиотека алгоритмов компьютерного зрения, обработки изображений с открытым исходным кодом. Прочитать о ней вы можете здесь или здесь. Ниже представлен фрагмент кода этого приложения, который проводит эти вычисления. Ниже представлен кусок кода андроид приложения, который проводит эти вычисления

bitmap = Bitmap.createBitmap(mRgba.cols(), mRgba.rows(), Bitmap.Config.ARGB_8888); Utils.matToBitmap(mRgba, bitmap);
int x = 0;
int y = 0;
int all_x = 0;
int all_y = 0;
while(x < 176) {
while(y < 144){
int pixel = bitmap.getPixel(x, y);
int redValue = Color.red(pixel);
int blueValue = Color.blue(pixel);
int greenValue = Color.green(pixel);
if(redValue > 200 && blueValue < 70 && greenValue < 70){
points++;
all_x = all_x + x;
all_y = all_y + y;
}
y++;
}
x++;
y = 0;
}
y = 0;
x = 0;
x_center = all_x / points;
y_center = all_y / points;

В архиве схема соединения и печатная плата для робота, для тех , кто не хочет покупать Arduino UNO
followbot.zip [79,22 Kb] (cкачиваний: 104)


Что понадобится для сборки:
- Все что упомянуто выше, atmega 8, 128 или 328
- Светодиод,неважно какого цвета
- Линейный стабилизатор на 5в (для варианта без Arduino)
- Разъемы штырьковые M и F
Робот следующий за объектом - Arduino
Робот следующий за объектом - Arduino


- Вытравленная и просверленная печатная плата (для варианта без Arduino)
Робот следующий за объектом - Arduino
Робот следующий за объектом - Arduino
Робот следующий за объектом - Arduino
Робот следующий за объектом - Arduino
Робот следующий за объектом - Arduino


- Дрель, паяльник.
- Arduino Uno. Для тех, кто не знает, какие выводы Arduino Uno нужны, в прикрепленном файле описание.
naznachenie-vyvodov-ardunio.zip [1,91 Kb] (cкачиваний: 48)

Робот следующий за объектом - Arduino
Робот следующий за объектом - Arduino
Робот следующий за объектом - Arduino



Программа для Arduino

Программа для Arduino очень простая. В архиве код этой программы.
followbot.zip [79,22 Kb] (cкачиваний: 104)


Программа для телефона

В этом архиве программа для телефона, устанавливается, как обычное приложение, и исходный код этой программы.Импортируйте ее в Android studio, соберите apk файл и установите на смартфон.

Эта программа использует Bluetooth просто для отправки данных. Описание библиотеки (openCV) можете найти в интернете. Автор изготовил печатную плату для atmega 328. Помните об этом если не будете использовать макетную плату, а будете разводить свою печатку:
dlya-smartfona.rar [5,91 Mb] (cкачиваний: 69)

скачать dle 11.1смотреть фильмы бесплатно
Чтобы написать комментарий необходимо войти на сайт через соц. сети (или зарегистрироваться):
Обычная регистрация
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Онлайн чат

Опрос
Как Вам сайт?

Последние комментарии

    Валерий
    Ну уж никак не минута! Пока вгрузится, пока антивирус потормозит. Пока браузер щёлкнешь, пока откроется..... И только нашёл что-то интересное - уже и \"флопиком\" пора пользоваться!....Не-е-е! Я с
    North
    Цитата: ВалерийА можно ещё рабочий системник поставить в сортире, а из флопика бумагу выпустить... ))))))). И не надо с собой планшетник брать! )))))Одно плохо - должен всегда работать, а то придёшь,
    Иван_Похмельев
    В схеме ошибка. Если автор разбирается в электронике - пусть её исправит!\"кд521а\" - тоже ошибка, но это мелкая текстовая безграмотность.
    Иван_Похмельев
    И для здоровья полезно, физкультура: как нагнуться-то надо, чтобы добраться до объекта! Одно плохо - бумага по полу волочится, даже если пол чистый, мне, например, было бы неприятно, а уж если
    Иван_Похмельев
    Цитата: ВалерийНе ходил по исходникам, но, возможно, автор самоделки делал для декоративных целей, а выставил, как функциональное устройство. Да нет, в исходнике автор пишет: \"Now fill it up with
Все комментарии