Ничего не найдено :(
    В гостях у Самоделкина! » Электроника » Arduino » Как сделать простейшего робота на Arduino Uno который будет объезжать препятствия!

    Как сделать простейшего робота на Arduino Uno который будет объезжать препятствия!

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


    И так для этого нам понадобится:
    -Arduino Uno
    -2 редуктора
    -ультразвуковой дальномер HS-SR04
    -бусинка
    -оргстекло
    -провода-перемычки типа "папа мама"
    -драйвер двигателей L298D
    -батарейка "крона"
    -аккумулятор на 6-12 В
    -колёса


    И так для начала нужно припаять провода к ультразвуковому датчику:


    Затем нужно припаять провода (с заранее отрезанным выходом "мама") к редукторам. Вместо колёс я взял крышки от 5 литровых бутылок и для лучшего сцепления приклеил на них шкурку.

    Теперь нужно из оргстекла или фанеры вырезать каркас, подгоняя его под свои требования, лично я сделал вот такой:

    Затем нужно приклеить к нашему каркасу: аккумулятор (я использую спаянные последовательно 4 батарейки на 1,5 В), драйвер двигателей, крону, редукторы, ультразвуковой датчик, так как показано на фото:





    Перед тем как приклеить ардуино уно нужно загрузить на неё следующий скетч:
    #define Trig 8
    #define Echo 9
    const int in1 = 2; // IN4 pin 2
    const int in2 = 4; // IN3 pin 4
    const int in3 = 5; // IN2 pin 5
    const int in4 = 7; // IN1 pin 7
    int ENB1 = 3;
    int ENA2 = 6;
    void setup()
    {
    pinMode(Trig, OUTPUT); // выход
    pinMode(Echo, INPUT); // вход
    pinMode(in1, OUTPUT); // выход на L298n
    pinMode(in2, OUTPUT); // выход на L298n
    pinMode(in3, OUTPUT); // выход на L298n
    pinMode(in4, OUTPUT); // выход на L298n
    pinMode (ENB1, OUTPUT);
    pinMode (ENA2, OUTPUT);
    }
    unsigned int impulseTime=0;
    unsigned int distance_sm=0;
    void loop()
    {
    digitalWrite(Trig, HIGH);
    delayMicroseconds(10); // 10 микросекунд
    digitalWrite(Trig, LOW);
    impulseTime=pulseIn(Echo, HIGH); // замеряем длину импульса
    distance_sm=impulseTime/58; // переводим в сантиметры
    if (distance_sm>20) // если расстояние более 20 сантиметров
    {
    digitalWrite(in1, HIGH);
    delay(300);
    digitalWrite(in1, LOW);
    digitalWrite(in2, LOW);
    digitalWrite(in3, HIGH);
    delay(300);
    digitalWrite(in3, LOW);
    digitalWrite(in4, LOW);
    analogWrite(ENB1,250);
    analogWrite(ENA2,250);
    }
    else
    {
    digitalWrite(in1, LOW);
    digitalWrite(in2, LOW);
    digitalWrite(in3, LOW);
    digitalWrite(in4, LOW);
    delay(500);
    digitalWrite(in1, LOW);
    digitalWrite(in2, HIGH);
    digitalWrite(in3, LOW);
    digitalWrite(in4, HIGH);
    analogWrite(ENB1,250);
    analogWrite(ENA2,250);
    delay(200);
    digitalWrite(in1, LOW);
    digitalWrite(in2, HIGH);
    digitalWrite(in3, HIGH);
    digitalWrite(in4, LOW);
    analogWrite(ENB1,250);
    analogWrite(ENA2,250);
    delay(100);
    }
    delay(50);
    }

    После загрузки скетча можно приклеивать ардуино и крону:

    Теперь нужно все компоненты соединить по следующей схеме:

    Первым делом подсоединяем ультразвуковой датчик:

    Двигатели:


    Питание:



    Подключаем драйвер двигателей к ардуино:

    На конец нашего робота приклеиваем бусинку:

    Ну вот и всё наш робот уже готов, осталось только правильно подключить оставшиеся питание, и так ардуино мы запитываем "кроной" подключая + к UIN, а - к GND, при правильном подключение на ардуино должен загореться красный светодиод:

    Теперь подключаем - нашего "аккумолятора" к GND, на драйвере также должен загореться красный светодиод:

    если двигатели начали вращаться по очереди против часовой стрелки, то всё подключено правильно и при подношение препятствия они начнут вращаться по другому:

    Осталось только его испытать в "полевых условиях"

    Видео с испытанием и сборкой:

    [media=https://www.youtube.com/watch?v=moi5DQUDSZ8]

    Всем спасибо за внимание!
    Становитесь автором сайта, публикуйте собственные статьи, описания самоделок с оплатой за текст. Подробнее здесь.
    Подборки: Крона

    Гоночная машинка из Lego и Arduino

    Четырехногий робот на основе ESP8266

    8.6
    Идея
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    9.4
    Описание
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    9.4
    Исполнение
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    Итоговая оценка: 9.14 из 10 (голосов: 12 / История оценок)

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

    3 комментария
    Arlekino5 #83910

    как взять скетч отсюда?

    Гость Валентин #39579
    Добрый день! У меня конструктор Ардуино на основе платы "UNO", как и вас. Не могу найти рабочий драйвер для подключения платы к компьютеру, ни один из скачанных с официального сайта не подходит. Подскажите, не сталкивались ли вы с такой проблемой?
    Милана #27298
    Отличная подмога для моего курсача! Спасибо)

    Привет, Гость!


    Зарегистрируйтесь

    Или войдите на сайт, если уже зарегистрированы...

    Войти

    Добавьте самоделку

    Добавьте тему

    Онлайн чат

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

    Все комментарии