Motor Shield L293D и Arduino

29-05-2020, 16:39 0 комментариев
Подключение Motor Shield к Arduino у многих любителей электроники вызывает определенные затруднения. Тем не менее этот драйвер двигателей очень популярен и частенько используется в современном проектировании. Сегодня мы подробно поговорим о его применении и подключении, чтобы дать ответы все вопросы, с ним связанные.

Напомним, подобные шилды активно используются при создании и моделировании «своими руками» факсов, 3Д-принтеров, станков ЧПУ и другой копировальной техники. Кроме того, они бюджетны по стоимости и функциональны, достаточно надежны при длительной эксплуатации.
С достоинствами и сферой применения разобрались, идем далее.  Конкретно этот драйвер позволяет подключить 2 сервопривода, два шаговых мотора (биполярных) и до 4 двигателей постоянного тока (коллекторных). Он полностью совместим с контроллерами Arduino Mega 2560 и Arduino Uno (вставляется без кабелей). Для других плат (например, Nano) соединение стандартное, т.е. проводное.

Если говорить о базовых технических характеристиках устройства, о них расскажем коротко:
  • рабочее питание ШД: 4.5 - 36 В;
  • максимальный ток 600мА на канал (пиковый: 1.2A);
  • 4-канальное управление;
  • помехоустойчивые входы;
  • есть защита от перегрева + от электростатики;
  • компактный размер.
Распиновка датчика:

Как подключить Мотор Шилд к Ардуино

Шилд устанавливается сверху на плату Ардуино без дополнительных проводов.
Для реализации схемы нам потребуются такие аппаратные компоненты как: микороконтроллер Uno, Motor Shield L293D, двигатели постоянного тока, сервомотор, шаговый двигатель, комплект проводов:
Для работы датчика необходимо скачать и правильно установить специализированную библиотеку AFMotor.
Не забываете переместить скачанные файлы сюда: диск C - Program Files - Arduino - папка Libraries.

Для проверки работоспособности всей сборки прописываем скетч:
#include <AFMotor.h>     // подключаем библиотеку для шилда
AF_DCMotor motor1(1); // подключаем мотор к клеммникам M1
AF_DCMotor motor2(2); // подключаем мотор к клеммникам M2

void setup() {
  motor1.setSpeed(255); // задаем максимальную скорость мотора
  motor1.run(RELEASE);   // останавливаем мотор
  motor2.setSpeed(255); // задаем максимальную скорость мотора
  motor2.run(RELEASE);   // останавливаем мотор
}

void loop() {
  motor1.run(FORWARD);  // задаем движение вперед
  motor2.run(FORWARD);  // задаем движение вперед
  motor1.setSpeed(255);   // задаем скорость движения
  motor2.setSpeed(255);   // задаем скорость движения

  delay(2000);          // указываем время движения

  motor1.run(RELEASE);  // останавливаем мотор M1
  motor2.run(RELEASE);  // останавливаем мотор M2

  motor1.run(BACKWARD); // задаем движение назад
  motor2.run(BACKWARD); // задаем движение назад
  motor1.setSpeed(255);   // задаем скорость движения
  motor2.setSpeed(255);   // задаем скорость движения

  delay(2000);          // указываем время движения

  motor1.run(RELEASE);  // останавливаем мотор M1
  motor2.run(RELEASE);  // останавливаем мотор M2
}
Если необходимо подключить ШД, меняем схему:
Прошивка также меняется:
#include <AFMotor.h>  // подключаем библиотеку для шилда
int i; // вводим переменную

// подключаем шаговый двигатель к порту 1 - M1, M2
// 48 - количество шагов для полного оборота
AF_Stepper stepper(48, 1);

void setup() {
}

void loop() {
  
  // делаем 48 шагов в одном направлении, DOUBLE - тип шага
  for (i = 0; i <= 48; i++) {
    stepper.step(1, FORWARD, DOUBLE);
    delay(30);
  }
  
  // делаем 48 шагов в обратном направлении (BACKWARD)
  for (i = 48; i >= 0; i--) {
    stepper.step(1, BACKWARD, DOUBLE);
    delay(30);
  }
  
}
Мы выбрали для вас простые примеры, но это не означает, что возможности шилда ограничены только ими. Экспериментируйте, создавайте и внедряйте собственные идеи в жизнь! Удачных проектов!
Поделись в социальных сетях:
О авторе
Калугин Антон

Программист микроконтроллеров с 8-ми летним стажем, работал в таких компаниях как IBM, ASUS, Microsoft.

В комментариях с радостью отвечу на ваши вопросы.

Все статьи автора
Похожие новости

На повестке дня – подключение L293D к Arduino, знакомство с техническими характеристиками модуля, его практическим применением и простейшими схемами сборки....

В этой статье мы хотим продолжить тему подключения шаговых двигателей к Ардуино – на очереди рассказ о ШД Nema 17. Почему именно он? Эта модель считается...

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

В данном обзоре речь пойдет о подключении L9110S к Arduino и основных параметрах этого двухканального драйвера. Напомним, подобные модули отлично вписываются...

Подключение A4988 к Ардуино понадобится во многих проектах, которые «гуляют» по Интернету. Данный драйвер активно используется при создании своими руками...

Оставить комментарий