Arduino, объезд препятствий на раме автомобиля............

Источник:

Концепция дизайна

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

Цель

Основное использование — в образовательной среде или проектах DIY, чтобы получить практический опыт работы с электроникой и робототехникой. Его можно легко настроить с помощью дополнительных датчиков и компонентов для повышения функциональности.

Рекомендации по печати

Чтобы обеспечить долговечность, печатайте PLA или PETG с высокой плотностью заполнения. При необходимости используйте вспомогательный материал для деталей сложной геометрической формы.

Инструкции по сборке

После печати начните с прикрепления колес и двигателей к основ��ой раме. Установите Arduino и драйвер двигателя на предусмотренные платформы, обеспечив безопасность всех электронных компонентов. Подключите компоненты, следуя стандартным автомобильным направляющим для проводов Arduino, гарантируя, что ультразвуковой датчик будет расположен вверх для правильного обнаружения препятствий.

Я использовал контроллер двигателя L298N, Arduino Uno R3, а также стандартные двигатели Arduino и датчик ультразвука.

если вам нужен код вот он:

интервал тригПин = 9; // триггерный вывод HC-SR04

интервал эхоПин = 10; // Эхо-контакт HC-SR04

int revleft4 = 4; //ОБРАТНОЕ движение левого мотора

int fwdleft5 = 5; //Вперед движение левого мотора

int revright6 = 6; //ОБРАТНОЕ движение правого двигателя

интервал fwdright7 = 7; //Вперед движение правого мотора

большая продолжительность, расстояние;

недействительная настройка() {

задержка(случайное(500,2000)); // задержка на случайное время

Сери��ный.начало(9600);

pinMode(revleft4, ВЫХОД); // устанавливаем контакты двигателя как выход

pinMode (fwdleft5, ВЫХОД);

pinMode (revright6, ВЫХОД);

pinMode(fwdright7, ВЫХОД);

pinMode (trigPin, ВЫХОД); // устанавливаем триггерный вывод как выход

pinMode(echoPin, INPUT); //устанавливаем эхо-контакт в качестве входа для захвата отраженных волн

}

недействительный цикл() {

digitalWrite(trigPin, LOW);

задержкамикросекунды (2);

digitalWrite(trigPin, ВЫСОКИЙ); // отправляем волны на 10 человек

задержкамикросекунды (10);

длительность = импульсВход(эхоПин, ВЫСОКИЙ); // получаем отраженные волны

расстояние = продолжительность / 58,2; // конвертируем в расстояние

задержка(10);

// Если вы не получаете правильных движений вашего робота, измените номера контактов

если (расстояние > 19)

{

digitalWrite(fwdright7, ВЫСОКИЙ); // двигаться вперед

digitalWrite(revright6, LOW);

digitalWrite(fwdleft5, ВЫСОКИЙ);

digitalWrite(revleft4, LOW);

}

если (расстояние < 18)

{

digitalWrite(fwdright7, LOW); //Стоп

digitalWrite(revright6, LOW);

digitalWrite(fwdleft5, LOW);

digitalWrite(revleft4, LOW);

задержка(500);

digitalWrite(fwdright7, LOW); //переместить обратное слово

digitalWrite(revright6, ВЫСОКИЙ);

digitalWrite(fwdleft5, LOW);

digitalWrite(revleft4, ВЫСОКИЙ);

задержка(500);

digitalWrite(fwdright7, LOW); //Стоп

digitalWrite(revright6, LOW);

digitalWrite(fwdleft5, LOW);

digitalWrite(revleft4, LOW);

задержка(100);

digitalWrite(fwdright7, ВЫСОКИЙ);

digitalWrite(revright6, LOW);

digitalWrite(revleft4, LOW);

digitalWrite(fwdleft5, LOW);

задержка(500);

}

}

14:09
41
Нет комментариев. Ваш будет первым!

Ссылка появится после регистрации

Похожие модели

Посещая этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.