L298N: модуль управления двигателями для Arduino

l298n

Есть много модулей для Arduino или для использования производителями в проектах DIY. В случае L298N - модуль управления двигателями.. С их помощью вы можете использовать простые коды для запрограммируйте нашу плату Arduino и иметь возможность управлять двигателями постоянного тока простым и контролируемым способом. Как правило, этот тип модуля больше используется в робототехнике или в моторизованных приводах, хотя его можно использовать для множества приложений.

Мы уже ввели все, что вам нужно о модуль ESP, с микросхемой ESP8266, un модуль, позволяющий увеличивать мощности Платы Arduino и другие проекты, чтобы иметь возможность подключения к Wi-Fi. Эти модули можно не только использовать по отдельности, но и комбинировать. Например, ESP8266 можно использовать для нашего прототипа и L298N, с помощью которого мы получим управляемый двигатель через Интернет или по беспроводной сети.

Введение в L298N и таблицы данных:

l298n распиновка

Хотя с Arduino вы также можете работать с шаговыми двигателями, которые хорошо известны в робототехнике, в этом случае обычно чаще используется контроллер или драйвер для двигателей постоянного тока. Вы можете получить информацию о микросхеме L298 и модулях в технических описаниях производителей, таких как STMicroelectronics по этой ссылке. Если вы хотите увидеть техническое описание конкретного модуля, а не только чипа, вы можете загрузить этот другой PDF-файл с Хандсонтек L298N.

Но в целом L298N - это драйвер типа H-моста, который позволяет управлять скоростью и направлением вращения двигателей постоянного тока. Его также можно легко использовать с шаговыми двигателями благодаря 2 Н-мост что орудует. То есть мост в H, что означает, что он образован 4 транзисторами, которые позволят изменить направление тока так, чтобы ротор двигателя мог вращаться в том или ином направлении, как мы хотим. Это преимущество перед контроллерами, которые позволяют управлять только скоростью вращения (об / мин), контролируя только значение напряжения питания.

L298N может работать с различными напряжения от 3В до 35В, и интенсивностью 2А. Это то, что действительно будет определять производительность или скорость вращения двигателя. Следует иметь в виду, что электроника, которую потребляет модуль, обычно потребляет около 3 В, поэтому двигатель всегда будет получать на 3 В меньше энергии, на которую мы его питаем. Это довольно высокое потребление, на самом деле в нем есть элемент высокой мощности, которому нужен радиатор, как вы можете видеть на изображении.

Для управления скоростью вы можете сделать что-то обратное тому, что мы сделали с LM35, в этом случае вместо получения определенного напряжения на выходе и необходимости его преобразования в градусы, здесь все будет наоборот. Подаем на драйвер более низкое или более высокое напряжение, чтобы получить более быстрый или медленный поворот. Кроме того, модуль L298N также позволяет питать плату Arduino от напряжения 5 В, пока мы питаем драйвер как минимум напряжением 12 В.

Интеграция с Arduino

принципиальная схема l298n с Arduino

Там множество проектов, с которыми вы можете использовать этот модуль L298N. Фактически, вы можете просто представить себе все, что вы могли бы с ним сделать, и приступить к работе. Например, простым примером может быть управление двумя двигателями постоянного тока, как показано на предыдущей диаграмме, сделанной с помощью Fritzing.

Перед началом работы с L298N необходимо учесть, что вход модуля или Vin поддерживает напряжение от 3 до 35 В. и что мы также должны подключить его к земле или GND, как это видно на изображении с красным и черным кабелями соответственно. После подключения к источнику питания следующее, что нужно сделать, это подключить двигатель или два двигателя, которыми он может управлять одновременно. Это просто, вам просто нужно подключить две клеммы двигателя к соединительной пластине, на каждой стороне которой находится модуль.

А теперь, пожалуй, самое сложное - подключение модулей или подключений. контакты к Arduino правильно. Помните, что если перемычка модуля или мост регулятора замкнуты, то есть включен, регулятор напряжения модуля активируется и есть выход 5 В, который вы можете использовать для питания платы Arduino. С другой стороны, если вы удалите перемычку, вы отключите регулятор, и вам нужно будет запитать Arduino самостоятельно. глаз! Поскольку перемычка может быть установлена ​​только на напряжение 12 В, для большего количества вы должны удалить ее, чтобы не повредить модуль ...

Вы можете оценить это есть 3 соединения для каждого двигателя. Те, которые помечены как IN1 - IN4, управляют двигателями A и B. Если у вас нет подключенного одного из двигателей, потому что вам нужен только один, то вам не придется их все устанавливать. Перемычки на каждой стороне этих соединений для каждого двигателя - это ENA и ENB, то есть для активации двигателей A и B, которые должны присутствовать, если мы хотим, чтобы оба двигателя работали.

к мотор А (То же самое для B), мы должны соединить IN1 и IN2, которые будут контролировать направление вращения. Если IN1 - HIGH, а IN2 - LOW, двигатель вращается в одном направлении, а если они LOW и HIGH, он поворачивает другое. Чтобы контролировать скорость вращения, вы должны удалить перемычки INA или INB и использовать контакты, которые появляются для подключения к Arduino PWM, так что если мы дадим ему значение от 0 до 255, мы получим низкую или более высокую скорость соответственно.

О программирование также легко в среде Arduino IDE. Например, код будет таким:

<pre>// Motor A
int ENA = 10;
int IN1 = 9;
int IN2 = 8;

// Motor B
int ENB = 5;
int IN3 = 7;
int IN4 = 6;

void setup ()
{
 // Declaramos todos los pines como salidas
 pinMode (ENA, OUTPUT);
 pinMode (ENB, OUTPUT);
 pinMode (IN1, OUTPUT);
 pinMode (IN2, OUTPUT);
 pinMode (IN3, OUTPUT);
 pinMode (IN4, OUTPUT);
}
//Mover los motores a pleno rendimiento (255), si quieres bajar la velocidad puedes reducir el valor hasta la mínima que son 0 (parados)</pre>
<pre>//Para mover los motores en sentido de giro contrario, cambia IN1 a LOW e IN2 a HIGH

void Adelante ()
{
 //Direccion motor A
 digitalWrite (IN1, HIGH);
 digitalWrite (IN2, LOW);
 analogWrite (ENA, 255); //Velocidad motor A
 //Direccion motor B
 digitalWrite (IN3, HIGH);
 digitalWrite (IN4, LOW);
 analogWrite (ENB, 255); //Velocidad motor B
}</pre>

Будьте первым, чтобы комментировать

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

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.