Aklaypart.ru

Авто Журнал
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Arduino как подключить драйвер двигателя

L298n Схема Подключения

В данной же статье мы рассмотрим драйвер двигателей базе микросхемы LN собранный на платке в виде модуля.


Могут использоваться в двух режимах: 1.

Так как транзисторы в схеме моста имеют разный тип проводимости, то при таком входном сигнале транзисторы Т1 и Т4 останутся в закрытом состоянии, в то время, как через транзисторы Т2 и Т3 потечёт ток. В виду сложности подбора транзисторов и подключения их в схему Н-моста, гораздо проще использовать уже существующие драйвера, имеющие такую функцию.
CCU+L298N

Такой вариант позволяет управлять скоростью вращения вала и его направлением у двигателя постоянного тока. Если напряжение больше 12 вольт, разомкните контакты на 3 коннекторе.

Подача логической единицы на эти контакты разрешает вращение двигателей, а логический ноль — запрещает.

Можно подключить к ШИМ-выходу для управления скоростью двигателя постоянного тока. В рамках данной теми рассмотрим также подключение драйвера LN к плате Arduino.

Теперь испробуем простую программу, написанную на Python, которая поможет понять принцип управления электродвигателем постоянного тока.

В таком случае на разъём подаётся только питание для двигателей Vss , контакт Vs остаётся не подключенным, а на плате устанавливается перемычка питания от стабилизатора, который ограничит питающее моторы напряжение до приемлемых 5V.

Шаговый двигатель. Micro Step Driver. PLC Omron. Подключение,программирование. (Часть 1)

1 Что такое драйвер двигателей и для чего он нужен

Максимальный ток на выводах Arduino слаб (около 50 мА) для такой мощной нагрузки как электромотор (десятки и сотни миллиампер). Поэтому напрямую к выводам Arduino подключать электродвигатель нельзя: есть риск сжечь вывод, к которому подключён двигатель. Для безопасного подключения электродвигателей разных типов к Arduino необходим самодельный или промышленно изготовленный т.н. драйвер двигателей. Драйверы двигателей бывают разные, для их работы часто используются микросхемы типа HG788, L9110S, L293D, L298N и другие. Драйверы двигателей имеют выводы подачи питания, выводы для подключения электродвигателей, а также управляющие выводы.

Различные варианты исполнения драйверов двигателей

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

Сборка двигателя

Транзистор – это электрический выключатель, который активирует цифровые контакты или пины микропроцессора Aрдуино. В этом примере он управляется выводом 9, таким же образом, как и светодиод, за исключением того, что транзистор включает и выключает схему приспособления.

Эта схема работает, но она по-прежнему создает обратный ток из-за импульса прибора, по мере его замедления, или из-за того, что двигатель повернется другой стороной. Если генерируется обратный ток, он перемещается с отрицательной стороны и пытается найти простой путь к земле.

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

Чтобы обеспечить полную безопасность устройства, устанавливается диод через прибор. Диод обращен к источнику напряжения, это означает, что напряжение подается через устройство. Если ток генерируется в противоположном направлении, он блокируется от поступления в микропроцессор.

Разработка программы для платы Arduino

Перед тем как начать писать программу для платы Arduino давайте разберемся что должно происходить внутри этой программы. Как мы уже говорили ранее, мы будем использовать метод 4-шаговой последовательности, то есть нам нужно будет сделать 4 шага чтобы выполнить один полный оборот двигателя.

Читать еще:  Чертеж магнитного двигателя своими руками
Номер шагаКонтакты, на которое подается питаниеКатушки, на которое подается питание
Шаг 18 и 9A и B
Шаг 29 и 10B и C
Шаг 310 и 11C и D
Шаг 411 и 8D и A

На драйвере мотора есть 4 светодиода, по свечению которых можно судить о том, на какую катушку подается питание в конкретный момент. Более подробно все эти процессы можно посмотреть в видео, приведенном в конце статьи.

Мы напишем программу, в которой необходимое количество шагов для двигателя мы будем вводить в мониторе последовательного порта (serial monitor) платы Arduino. Полный текст программы приведен в конце статьи, здесь же мы рассмотрим наиболее важные его фрагменты.

Как мы рассчитали ранее, полное число шагов для полного оборота нашего шагового двигателя, равно 32, пропишем это в следующей строчке кода:

#define STEPS 32

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

Stepper stepper (STEPS, 8, 10, 9, 11);

Примечание : последовательность номеров контактов, указанная в приведенной команде (8,10,9,11) – специально упорядочена таким образом чтобы подавать питание на катушки шагового двигателя в правильном порядке. Если вы измените номера контактов, к которым подключен шаговый двигатель, то вы соответствующим образом должны их упорядочить для подачи в приведенную команду.

Мы будем использовать специальную библиотеку для работы с шаговыми двигателями, поэтому для задания скорости вращения шагового двигателя мы можем использовать команду вида:

Для двигателя 28-BYJ48 скорость вращения можно установить в диапазоне от 0 до 200.

Теперь, чтобы двигатель сделал один шаг, мы можем использовать следующую команду:

Количество шагов, которое должен сделать двигатель, определяется переменной “ val ”. Поскольку мы имеем 32 шага (для оборота) и передаточное число 64 мы должны сделать 2048 (32*64=2048) “шагов” в этой команде для совершения одного полного оборота двигателя.

Значение переменной “val” в нашей программе мы будем вводить из окна монитора последовательной связи.

Распиновка микросхемы L298 (вид сверху)

  • 1 x микросхема моста L298
  • 1 x двигатель постоянного тока
  • 1 x Arduino Mega 2560
  • 1 x макетная плата
  • 10 x перемычка

Комплектующие для эксперимента управления двигателем постоянного тока с помощью Arduino Схема включения микросхемы L298 для управления двумя электродвигателями

Схема выше показывает, как подключить микросхему L298 для управления двумя электродвигателями. Для управления каждым двигателем у микросхемы есть по три вывода: вход 1 (IN1), вход 2 (IN2) и включение A (EN A) для двигателя 1, и вход 3 (IN3), вход 4 (IN4) и включение B (EN B) для двигателя 2.

Поскольку в данном руководстве мы будем управлять только одним электродвигателем, то мы подключим Arduino к выводам IN1 (вывод 5), IN2 (вывод 7) и EN A (вывод 6) микросхемы L298. Выводы 5 и 7 цифровые, то есть для вращения двигателя в заданную сторону на эти выводы необходимо подавать неизменяющиеся в времени сигналы логического нуля или единицы. В то время, как на вывод 6 необходимо подавать широтно-импульсно-модулированный (ШИМ) сигнал, который управляет скоростью вращения двигателя.

Следующая таблица показывает, в каком направлении будет вращаться электродвигатель в зависимости от логических уровней на входах IN1 и IN2.

Выбор направления вращения двигателя при работе с микросхемой L298

IN1IN2Двигатель
остановлен
1вращение вперед
1вращение назад
11остановлен

В таблице ниже приведено описание подключения микросхемы L298 к нашей плате Arduino Mega 2560.

Подключение микросхемы L298 к плате Arduino

Выводы L298Выводы ArduinoНазначение
IN1вывод 8выбор направления вращения двигателя
IN2вывод 9
EN AШИМ вывод 2управление скоростью вращения двигателя

Для установки значений на выводах 8 и 9 платы Arduino мы будем использовать функцию digitalWrite() , а для установки занчений на выводе 2 – функцию analogWrite() .

Ниже показана фотография стенда, собранного для проведения эксперимента.

Стенд для проведения эксперимента по управлению двигателем постоянного тока с помощью Arduino и микросхемы Н-моста L298

Обзор драйвера мотора на L298N

Автор: Сергей · Опубликовано 20.12.2018 · Обновлено 13.04.2020

Одним из самых простых и недорогх способов управления двигателями постоянного тока является модуль L298N Motor Driver с Arduino. Он может контролировать скорость и направление вращения двух двигателей постоянного тока, а так же управлять биполярным шаговым двигателем (типа NEMA 17).

Технические параметры

► Напряжение питания логики модуля: 5 В
► Потребляемый ток встроенной логики: 36 мА
► Напряжение питания драйвера: 5 В – 35 В
► Рабочий ток драйвера: 2 А (пиковый ток 3 А)
► Габариты: 43.5 мм х 43.2мм х 29.4мм

Общие сведения

Основной чип модуля это микросхема L298N, состоящая из двух H-мост (H-Bridge), один для выхода A, второй для выхода B. H-мост широко используется в электронике и служит для изменения вращения двигателем, схема H-моста содержит четыре транзистора (ключа) с двигателем в центре, образуя H-подобную компоновку. Принцип работы прост, при одновременном закрытие двух отдельных транзистора изменяется полярность напряжения, приложенного к двигателю. Это позволяет изменять направление вращения двигателя. На рисунке ниже, показана работа H-мостовой схемы.

Для управления скоростью двигателя постоянного тока используется метод PWM (Широтно-импульсной модуляции).

Модуль L298N содержит разъем для подключения питания, ряд перемычек для настройки модуля, два выхода A и B и разъем управления, которые регулируют скорость и направление вращения, назначение каждого можно ознакомится ниже:

Вывод Vss — питание двигателей, от 5 до 35 В;
Вывод GND — общий вывод заземления;
Вывод Vs — питание для логической схемы;
Перемычка ENA — используются для управления скоростью двигателя A;
Вывода IN1 и IN2 — используются для управления направлением вращения двигателя A;
Вывода IN3 и IN4 — используются для управления направлением вращения двигателя B;
Перемычка ENB — используются для управления скоростью двигателя B;
Выходы OUT1 и OUT2 — разъем для двигателя A;
Выходы OUT3 и OUT4 — разъем для двигателя B;

Принципиальная схема модуля L298N

Питание модуля.
Питание модуля L298N осуществляется через трех контактный разъем, шагом 3,5 мм:
Vs — источник питания двигателей, 3B — 35B
GND — земля
Vss — источник питания модуля, 4,5В — 5,5В
Фактически у модуля L298N, есть два контакта питания, а именно. «Vss» и «Vs». От «Vs» питаются двигатели с допустимым напряжением от 5 В до 35 В, а от «Vss» питается логическая схема модуля 4,5В до 5,5В. На плате установлен встроенный стабилизатор напряжения на 5 Вольт (78M05), его можно включить или отключить с помощью перемычки. Когда перемычка установлена, стабилизатор включен и питает логику модуля (Vss) от источника питания двигателя (Vs). При включенном стабилизаторе, вход «Vss» работает как выход и обеспечивает 5В с током 0,5 А. Когда перемычка убрана, стабилизатор отключен и необходимо отдельно подключить питание 5 Вольт на вход Vss.

Внимание! Нельзя установить перемычку, если напряжение двигателя ниже 12 Вольт.

Падение напряжения L298N
Падение напряжения драйвера L298N составляет около 2 В, это связано с внутренним падением напряжения в транзисторах в цепи H-мосте. Таким образом, если мы подключим 12 В к источнику питания двигателя, то двигатели получат напряжение около 10 В. Это означает, что двигатель на 12 В не будет работать с максимальной скоростью, для получения максимальной скорости, напряжение поданное на двигателя должен быть выше напряжения (2 В), чем потребность в фактическом напряжении двигателя. Учитывая падение напряжения на 2 В, если вы используете двигатели 5 В, вам необходимо обеспечить питание 7 В. Если у вас 12-ваттные двигатели, то напряжение питания вашего двигателя должно составлять 14 В.

Управления скоростью
Разъемы управления скоростью ENA и ENB используются для включения и выключения управления скоростью двигателей. Когда перемычка установлена, двигатель вращается с максимальной скоростью. Если необходимо управлять скоростью двигателей, необходимо убрать перемычку и подключить выводы к контактам с поддержкой PWM на Arduino.

Подключение L298N к Arduino (коллекторный двигатель)

Необходимые детали:
Arduino UNO R3 x 1 шт.
► Драйвер мотора на L298N (5-35V, 2A) x 1 шт.
► Коллекторный двигатель x 2 шт.
► Комплект проводов DuPont 2.54 мм, 20 см x 1 шт.

Подключение:
Первым делом необходимо подключить источник питания 12B к двигателям, в примере используется распространенные двигатель постоянного тока, рассчитанные на 3B . . . 12B (применяемые в робототехнике). Учитывая внутреннее падение напряжения на микросхеме L298N, двигатели получат 10 В и будут вращаться не в полную силу.
Далее, нужно подключить 5 вольт на логическую схему L298N, для этого воспользуемся встроенным стабилизатором напряжения, который работает от источника питания двигателя, поэтому, перемычка EN должна быть установлена.
Теперь осталось подключить управляющие провода ENA, IN1, IN2, IN3, IN4 и ENB к шести цифровым выводам Arduino 9, 8, 7, 5, 4 и 3. Обратите внимание, что выводы Arduino 9 и 3 поддерживают ШИМ. Теперь, подключаем двигатели, один к клемме A (OUT1 & OUT2), а другой к клемме B (OUT3 & OUT4). Принципиальная схема подключения приведена ниже.

Осталось подключить Arduino к источнику питания и загрузить скетч.

Заключение

Итак, модуль драйвера L298N оказался не таким сложным, как могло показаться. Все драйверы имеют практически схожие контакты управления: EN,IN1,IN2. Бывает, что отдельный вход EN отсутствует, и тогда ШИМ сигнал подается на IN1,IN2. Разобравшись с одним драйвером, мы можем с легкостью применять в своих проектах и другие модели.

Как уже было написано, L298N является достаточно мощным чтобы потянуть большинство моторов, применяемых в DIY проектах. Это и популярные пластиковые желтые моторы с редуктором и более мощные металлические JGA25 и JGA37.

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

голоса
Рейтинг статьи
Ссылка на основную публикацию
ВсеИнструменты
Adblock
detector