Перейти к навигации

Шасси с моторами и редукторами, Arduino UNO, L298N, для робота, автомобиля

Arduino Car можно использовать как платформу для создания автомобиля управляемого по программе или с помощью радиоуправления, а так же как платформу для создания роботов. Версия 2, удешевленная.

Ардуино мобиль собран из двух моторов постоянного тока с редукторами по схеме 4WD. Трансмиссия на колеса осуществляется с помощью ременной передачи. Управляет Ардуино мобилем модуль Arduino UNO по программе написанной на языке Си для Ардуино. В качестве драйвера моторов используется микросхема L298N - двухканальный реверсивный драйвер моторов. Шасси выполнено из поликарбоната (органического стекла) толщиной 2 мм. Питание всех узлов шасси осуществляется от батареи на 9 Вольт (6хАА).

Arduino Car с подпрограммами реализующими простые действия такие как "вперед", "назад", "поворот" можно рекомендовать младшим школьникам для знакомства с программированием.

Пример программы на Си.

// Скорость от 60 до 250, от 90 до 250 только кратковременно

void setup() {
  delay (8000);
  DDRD = 0b10110100;
  forward (70);
  delay (3000);
  left (100);
  delay (750);
  back(70);
  delay (2000);
  forward (70);
  delay (4000);
  back(70);
  delay (2500);
  right (110);
  delay (950);
  back (75);
  delay (3000);
  sleep();
}

void loop() {
}

void forward (int S) {
  // Левый канал
  digitalWrite (5, 1);
  analogWrite (6, S);
  digitalWrite (7, 0);
  // Правый канал
  digitalWrite (2, 1);
  analogWrite (3, S);
  digitalWrite (4, 0);
}

void back (int S) {
  // Левый канал
  digitalWrite (5, 0);
  analogWrite (6, S);
  digitalWrite (7, 1);
  // Правый канал
  digitalWrite (2, 0);
  analogWrite (3, S);
  digitalWrite (4, 1);
}

void left (int S) {
  // Левый канал
  digitalWrite (5, 0);
  analogWrite (6, S);
  digitalWrite (7, 1);
  // Правый канал
  digitalWrite (2, 1);
  analogWrite (3, S);
  digitalWrite (4, 0);
}

void right (int S) {
  // Левый канал
  digitalWrite (5, 1);
  analogWrite (6, S);
  digitalWrite (7, 0);
  // Правый канал
  digitalWrite (2, 0);
  analogWrite (3, S);
  digitalWrite (4, 1);
}

void sleep () {
  // Левый канал
  digitalWrite (5, 0);
  analogWrite (6, 0);
  digitalWrite (7, 0);
  // Правый канал
  digitalWrite (2, 0);
  analogWrite (3, 0);
  digitalWrite (4, 0);
}
Руководитель:
Участники:


Main menu 2

Project | by Dr. Radut