Корзина пуста!

Забыли пароль?

Регистрация

Драйвер 2А "Mini" (ID:3)

Описание:

1. Робот ИМ.

2. Скетч-код Ардуино для Драйвер 2 Ампера на основе Робота ИМ.

- Движение вперед, 2 секунды.

- Пауза, 0.5 секунд.

- Движение назад, 2 секунды.

- Пауза, 0.5 секунд.

- Поворот вправо, 2 секунды.

- Пауза, 0.5 секунд.

- Поворот влево, 2 секунды.

- Пауза, 0.5 секунд.

Бесконечный повтор.

 
////////////////////////

int IN1 = 2;
int IN2 = 3;
int IN3 = 4;                         
int IN4 = 5;                           

void setup() 
{ 
    pinMode(IN1, INPUT);   
    pinMode(IN2, INPUT); 
    pinMode(IN3, INPUT); 
pinMode(IN4, INPUT); 
 
} 

void loop() 
{ 
    digitalWrite(IN1,HIGH);  // Двигатель А вперед
    digitalWrite(IN2,LOW);  //  Двигатель А назад                
    digitalWrite(IN3,HIGH); //  Двигатель Б вперед
    digitalWrite(IN4,LOW);  //  Двигатель Б назад
delay(2000); 
 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);   
delay(2000);
digitalWrite(IN1,LOW);   
    digitalWrite(IN2,LOW);            
    digitalWrite(IN3,LOW);   
    digitalWrite(IN4,LOW);   
delay(500); 
     
     digitalWrite(IN1,HIGH);   
    digitalWrite(IN2,LOW);            
    digitalWrite(IN3,LOW);   
    digitalWrite(IN4,HIGH);   
delay(2000);
digitalWrite(IN1,LOW);   
    digitalWrite(IN2,LOW);            
    digitalWrite(IN3,LOW);   
    digitalWrite(IN4,LOW);   
delay(500); 

digitalWrite(IN1,LOW);      
    digitalWrite(IN2,HIGH); 
    digitalWrite(IN3,HIGH); 
    digitalWrite(IN4,LOW);  
delay(2000); 
digitalWrite(IN1,LOW);   
    digitalWrite(IN2,LOW);            
    digitalWrite(IN3,LOW);   
    digitalWrite(IN4,LOW);   
delay(500); 
  }  

//////////////////////////
 

Подробно.

1. Робот ИМ.

Специально созданная  передвижная платформа, что бы более наглядно и понятно можно было продемонстрировать принцип действия Драйвер 2 Ампера для Ардуино. Так же в дальнейшем я очень часто буду использовать эту платформу для демонстрации других модулей линейки Ардуино, в частности модули радио управления и инфракрасные датчики.

Тех, кого этот пункт не интересует, могут сразу переходить ко второму пункту. Во втором пункте речь пойдет о скетч-коде к Драйвер 2 Ампера.

И так: передвижная 4 WD платформа под названием «Робот Им».

Почему Робот - думаю понятно. Почему ИМ? ИМ с Таиландского переводится как «Улыбнись». Конструкция проста и банальна. Четыре мотор-редуктор, четыре колеса, прикрепленные к алюминиевому листу. ВСЕ, основа готова.

 

 

Далее крепим провода к моторам, а так же плату, для удобства крепления модулей Ардуино и Драйвер 2 Ампера.

 

Крепим Ардуино и Драйвер 2 Ампера. Можно сразу залить скетч- код. Осталось только дело за аккумулятором и проводами.

 

 

Оговорюсь сразу, что в экспериментальных целях я использовал два вида питания: 12 В щелочной аккумулятор и 7.2 В NI-MH аккумулятор. 12 В я использовал что бы придать вес платформе и заодно проверить разницу в скорости движения и мощности платформы при питании 12 В и 7,2 В.

 

 

Общи вес с двумя аккумуляторами составил 1 кг. 250 гр. Платформа достойно себя показала при питании 7.2 В ( разворот на ковре с высоким ворсом для нее не составляет труда, и даже на такую преграду как стена, платформа пытается вскарабкаться). При этом щелочной аккумулятор просто был как груз массой 600 гр. При использовании питания в 12 В виден явный не нужный излишек мощности. Платформа конечно в данном случае просто зверь.

 

Рассмотри схему подключения. Для удобства я использовал ПРОТО-ЩИТ для Arduino. Запитываем от аккумулятора две дорожки соответственно (+) и (-) . Далее подсоединяем и запитываем Драйвер 2 Ампера и плату Ардуино. Обратите внимание, что плату Ардуино я запитал через пины Vin (+) и GND (-). Аналогично запитываем Драйвер 2 ампера, где VCC это (+) и GND это (-) .

С питанием разобрались. Теперь подключаем логику платы Ардуино и Драйвер 2 Ампера. Здесь все просто. Так как мы не используем ШИМ , то IN1 IN2 IN3 IN4 подключаем к пинам Ардуино соответственно IN1 в 2, IN2 в 3, IN3 в 4, IN4 в 5. Вы можете использовать любые другие пины на плате Ардуино.

Все готово! Подключаем питание и наслаждаемся!

2. Скетч-код Ардуино для Драйвер 2 Ампера на основе Робота ИМ.

Для начала запомним за что отвечает порт IN :

IN1 – Движение двигателя А вперед

IN2 – Движение двигателя А назад

IN3 – Движение двигателя Б вперед

IN4 – Движение двигателя Б назад

Не смотря на то, что скетч-код для Ардуино Драйвер 2 Ампера получился очень длинным он очень простой, так как состоит из повторяющихся блоков. Рассмотрим все по порядку.

 
int IN1 = 2;
int IN2 = 3;
int IN3 = 4;                         
int IN4 = 5;                           

void setup() 
{ 
    pinMode(IN1, INPUT);   
    pinMode(IN2, INPUT); 
    pinMode(IN3, INPUT); 
    pinMode(IN4, INPUT);  
} 

void loop() 
{ 
    digitalWrite(IN1,HIGH);    // Двигатель А вперед     ДА - HIGH
    digitalWrite(IN2,LOW);     // Двигатель А назад        НЕТ - LOW              
    digitalWrite(IN3,HIGH);    // Двигатель Б вперед      ДА - HIGH
    digitalWrite(IN4,LOW);     // Двигатель Б назад        НЕТ - LOW
delay(2000); // Это условие выполняется 2 секунды, после чего идет следующее условие ниже.


digitalWrite(IN1,LOW);       // Двигатель А в перед      НЕТ - LOW
    digitalWrite(IN2,LOW);   // Двигатель А  назад        НЕТ – LOW         
    digitalWrite(IN3,LOW);   // Двигатель Б вперед       НЕТ - LOW
    digitalWrite(IN4,LOW);   // Двигатель Б назад         НЕТ - LOW
delay(500);   // Это условие выполняется 0,5 секунды, после чего идет следующее условие ниже.

Далее все блоки идентичны, меняется лишь значение HIG и LOW, в зависимости от того, какое Вы хотите задать движение Вашей платформе. См. примеры ниже, где выделенные IN должны быть в положении HIGH.

Прямо

Назад

В лево

В право

Естественно, что время движения и паузу тоже можно устанавливать любую. Я попытался вбить временную карту движения Робота ИМ по офису ДВ Робот. Получилось очень интересно, правда временное препятствие, в виде швабры полностью сбило с толку Робота ИМ. С этим можно бороться с помощью датчиков обхода препятствий. 

Пример использования ШИМ для контроля скорости вращения двигателей.

Яндекс.Метрика