L298n драйвер шагового двигателя схема подключения

L298n драйвер шагового двигателя схема подключения

Как правило, логические сигналы для управления шаговым двигателем формирует микроконтроллер. Ресурсов современных микроконтроллеров вполне хватает для этого даже в самом ”тяжелом” режиме – микрошаговом.

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

В функцию драйверов входит:

  • обеспечение необходимого тока и напряжения на фазных обмотках двигателя;
  • коммутация обмоток;
    • включение;
    • выключение;
    • смена полярности;
  • защита коммутирующих элементов от напряжения самоиндукции обмоток.

Речь в этой статье идет о простых драйверах, достаточных для большинства приложений. Существуют драйверы с гораздо большими возможностями:

  • обеспечение  быстрого нарастания тока при включении и быстрого спада при выключении;
  • уменьшение тока для фиксации положения остановленного двигателя;
  • защитные функции;
  • формирование тока и напряжения обмоток для микрошагового режима;
  • и многие другие.

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

По схеме подключения шаговые двигатели делятся на униполярные и биполярные.  Драйверы для этих двух вариантов двигателей  принципиально отличаются.

  • Драйвер униполярного шагового двигателя.
  • В униполярном режиме могут работать двигатели, имеющие следующие конфигурации обмоток.
  • L298n драйвер шагового двигателя схема подключения

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

L298n драйвер шагового двигателя схема подключения

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

  1. L298n драйвер шагового двигателя схема подключения
  2. Если последовательно замыкать ключи 1, 2, 3, 4, то ротор двигателя будет вращаться.
  3. Схема драйвера униполярного шагового двигателя.

Практически ключи можно выполнить на биполярных транзисторах, но предпочтительнее использовать низкопороговые MOSFET транзисторы. Я применяю транзисторы IRF7341.  Это MOSFET транзисторы с параметрами:

  • максимально допустимый ток 4 А;
  • предельное напряжение 55 В;
  • сопротивление в открытом состоянии 0,05 Ом;
  • порог включения 1 В;
  • выполнены в миниатюрном корпусе SO-8;
  • в корпусе два транзистора.

Крайне удобный вариант для использования в драйвере униполярного шагового двигателя.

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

На биполярных транзисторах ключи с такими параметрами создать не возможно.  Есть много других вариантов MOSFET транзисторов для ключей, например IRF7313 ( 6 А, 30 В, 0,029 Ом).

Схема ключа на MOSFET транзисторе для одной фазы выглядит так.

L298n драйвер шагового двигателя схема подключения

Ключ управляется непосредственно от микроконтроллера логическими уровнями KMOП или TTL ( 0 / +5 В). При управляющем сигнале высокого уровня (+5 В) ключ открыт, и через обмотку фазы идет ток.

Диод шунтирует обмотку двигателя в обратном направлении. Он необходим для защиты транзистора от бросков напряжения самоиндукции при выключении фазы.

Для управления двигателями на значительных скоростях вращения, лучше использовать высокочастотные диоды, например, FR207.

Вот фрагмент схемы подключения униполярного шагового двигателя к микроконтроллеру.L298n драйвер шагового двигателя схема подключения

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

  • Кстати, механическое заклинивание вала шагового двигателя не вызывает недопустимых токов в ключах драйвера и защиты не требует.
  • А это изображение платы контроллера униполярного шагового двигателя с PIC контроллером фирмы Microchip.
  • L298n драйвер шагового двигателя схема подключения
  • Простая плата с восьми разрядным микроконтроллером PIC18F2520 управляет:
  • двумя шаговыми двигателями с током фазы до 3 А;
  • двумя ШИМ ключами для электромагнитов;
  • считывает состояние 4х датчиков;
  • обменивается  данными по сети с центральным контроллером.

Этот контроллер используется в составе системы управления шаговыми двигателями практически во всем фасовочном оборудовании фирмы ”РОСТ”.

Несмотря на простоту контроллера, реализованы следующие режимы управления:

  • полно-шаговый, одна фаза на полный шаг;
  • полно-шаговый, две фазы на полный шаг;
  • полу-шаговый;
  • фиксацию положения двигателя при остановке.

К достоинствам управления шаговым двигателем в униполярном режиме следует отнести:

  • простой, дешевый, надежный драйвер.

К недостаткам:

  • в униполярном режиме крутящий момент примерно на 40 % меньше по сравнению с биполярным режимом.
  1. Пример практической схемы простого контроллера униполярного шагового двигателя.
  2. Статья о подключении униполярного шагового двигателя к плате Ардуино.
  3. Драйвер биполярного шагового двигателя.
  4. В биполярном режиме могут работать двигатели, имеющие любые конфигурации обмоток.
  5. L298n драйвер шагового двигателя схема подключения

У биполярного двигателя по одной обмотке для каждой фазы. Обычно две обмотки AB и CD. В первых двух вариантах четыре обмотки соединяются так, что получается две. Обмотки по очереди подключаются к источнику  питания в одной полярности, затем в другой.

Драйвер биполярного двигателя должен обеспечивать сложную коммутацию. Каждая обмотка:

  • подключается в прямой полярности к источнику напряжения;
  • отключается от источника напряжения;
  • подключается с противоположной полярностью.

Схема коммутации одной обмотки биполярного двигателя  выглядит так.

L298n драйвер шагового двигателя схема подключения

Для обеспечения двух полярных коммутаций от одного источника питания требуется 4 ключа. При замыкании 1 и 2 ключей обмотка подключается к источнику питания в прямой полярности. Замыкание 3 и 4 ключей подает на обмотку обратную полярность напряжения.

Сложность драйвера биполярного шагового двигателя вызвана не только большим числом ключей ( 4 ключа на обмотку, 8 ключей на двигатель), но и:

  • сложное управление верхними ключами ( 1 и 4) от логических сигналов “привязанных” к земле;
  • проблемы со сквозными токами при одновременном открывании ключей одного плеча ( 1,3 или 2,4).

Сквозные токи могут возникать из-за не одинакового быстродействия нижнего и верхнего ключа. К примеру, нижний ключ уже открылся, а верхний – не успел закрыться.

Схема драйвера биполярного шагового двигателя.

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

L298n драйвер шагового двигателя схема подключения

Схема достаточно простая. Проблема сквозных токов решается за счет резисторов 0.22 Ом в коммутируемых цепях. В момент коммутаций MOSFET транзисторов, верхний и нижний ключ оказываются одновременно открытыми на короткое время. Эти резисторы и ограничивают сквозной ток.

К сожалению, они ограничивают и рабочий ток двигателя. Поэтому, несмотря на мощные транзисторы, драйвер по такой схеме можно использовать для токов коммутации не более 2 А.

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

Гораздо удобнее и практичнее использовать интегральные драйверы биполярного шагового двигателя. Самым распространенным из них является микросхема L298N.

Драйвер биполярного шагового двигателя L298N.

Описания этой микросхемы на русском языке практически нет. Поэтому привожу параметры L298N достаточно подробно, по официальным материалам производителя этой микросхемы – компании STMicroelectronics (datasheet l298n.pdf).

L298N это полный мостовой драйвер для управления двунаправленными нагрузками с токами до 2 А и напряжением до 46 В.

  • Драйвер разработан для управления компонентами с индуктивными нагрузками, такими как электромагниты, реле, шаговые двигатели.
  • Сигналы управления имеют TTL совместимые уровни.
  • Два входа разрешения дают возможность отключать нагрузку независимо от входных сигналов микросхемы.
  • Предусмотрена возможность подключения внешних датчиков тока для защиты и контроля тока каждого моста.
  • Питание логической схемы и нагрузки L298N разделены. Это позволяет подавать на нагрузку напряжение другой величины, чем питание микросхемы.
  • Микросхема имеет защиту от перегрева на уровне + 70 °C.
  • Структурная схема L298N выглядит так.
  • Микросхема выполнена в 15ти выводном корпусе с возможностью крепления радиатора охлаждения.
  • Назначение выводов L298N.
1 Sense A Между этими выводами и землей подключаются резисторы — датчики тока для контроля тока нагрузки. Если контроль тока не используется, они соединяются с землей.
 15  Sense B
 2  Out 1 Выходы моста A.
 3  Out 2
 4  Vs Питание нагрузки. Между этим выводом и землей должен быть подключен низкоимпедансный конденсатор емкостью не менее 100 нФ.
 5  In 1 Входы управления мостом A. TTL совместимые уровни.
 7  In 2
 6  En A Входы разрешения работы мостов. TTL совместимые уровни. Низкий уровень сигналов запрещает работу моста.
 11  En B
 8  GND Общий вывод.
9 Vss Питание логической части микросхемы (+ 5 В). Между этим выводом и землей должен быть подключен низкоимпедансный конденсатор емкостью не менее 100 нФ.
10 In 3 Входы управления мостом B. TTL совместимые уровни.
12 In 4
13 Out 3 Выходы моста B.
14 Out 4
Читайте также:  Rvr какой двигатель лучше


Предельно допустимые параметры L298N.

 Обозначение Параметр Значение
 Vs  Напряжение питания  50 В
 Vss Напряжение питания логики 7 В
 Vi, Ven  Напряжение логических входов -0,3…7 В
 Io Выходной ток (для каждого канала)

  • не повторяющийся импульс 100 мкс
  • импульсы (80% включен, 20% выключен, включен 10 мс)
  • при постоянном токе
 

  1. 3 А
  2. 2,5 А
  3. 2 А
 Vsens Напряжение датчиков тока -1…2,3 В
 Ptot  Мощность рассеивания (температура корпуса 75°C)  25 Вт
 Top Рабочая температура кристалла -25…130 °C
 Tstg Температура хранения -40…150 °C

Параметры расчетов тепловых режимов.

Обозначение Параметр Значение
 Tth j-case  Тепловое сопротивление кристалл-корпус  3 ºC/Вт
 Tth j-amb  Тепловое сопротивление кристалл-окружающая среда  35 ºC/Вт

Электрические характеристики драйвера L298N.

 Обозначение Параметр Значение
 Vs Напряжение питания (вывод 4) Vih+2.5 …46 В
 Vss Питание логики 4,5… 5 …7 В
 Is Потребляемый ток покоя (вывод 4)

  • Ven=H, Vi=L
  • Ven=H, Vi=H
  • Ven=L
 
13 … 22 мА
50 … 70 мА
4 мА

Драйверы двигателя L298N, L293D и Arduino Motor Shield

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

C помощью микросхемы драйвера или готового шилда motor shield можно создавать мобильных роботов, автономные автомобили на ардуино и другие устройства с механическими модулями.

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

Драйвер двигателя в проектах ардуино

Для чего нужен драйвер двигателя?

Как известно, плата ардуино имеет существенные ограничения по силе тока присоединенной к ней нагрузки. Для платы это 800 mA, а для каждого отдельного вывода – и того меньше, 40mA.

Мы не можем подключить напрямую к Arduino Uno, Mega или Nano даже самый маленький двигатель постоянного тока.

Любой из этих двигателей в момент запуска или остановки создаст пиковые броски тока,  превышающие этот предел.

Как же тогда подключить двигатель к ардуино? Есть несколько вариантов действий:

Использовать реле. Мы включаем двигатель в отдельную электрическую сеть, никак не связанную с платой Arduino. Реле по команде ардуино замыкает или размыкает контакты, тем самым включает или выключает ток.

Соответственно, двигатель включается или выключается.

Главным преимуществом этой схемы является ее простота и возможность использовать  Главным недостатком данной схемы является то, что мы не можем управлять скоростью и направлением вращения.

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

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

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

Микросхема или плата расширения Motor Shield

Motor Shield – плата расширения для Ардуино, которая обеспечивает работу двигателей постоянного тока и шаговых двигателей. Самыми популярными платами Motor Shield являются схемы на базе чипов L298N и L293D, которые могут управлять несколькими двигателями. На плате установлен комплект сквозных колодок Ардуино Rev3, позволяющие устанавливать другие платы расширения.

Также на плате имеется возможность выбора источника напряжения – Motor Shield может питаться как от Ардуино, так и от внешнего источника. На плате имеется светодиод, который показывает, работает ли устройство. Все это делает использование драйвера очень простым и надежным – не нужно самим изобретать велосипеды и решать уже кем-то решенные проблемы.

В этой статье мы будем говорить именно о шилдах.

Принцип действия H-моста

L298n драйвер шагового двигателя схема подключенияПринцип работы драйвера двигателя основан на принципе работы H-моста. H-мост является электронной схемой, которая состоит из четырех ключей с нагрузкой. Название моста появилось из напоминающей букву H конфигурации схемы.

Схема моста изображена на рисунке. Q1…Q4 0 полевые, биполярные или  IGBT транзисторы. Последние используются в высоковольтных сетях. Биполярные транзисторы практически не используются, они могут присутствовать в маломощных схемах.

Для больших токов берут полевые транзисторы с изолированным затвором. Ключи не должны быть замкнуты вместе одновременно, чтобы не произошло короткого замыкания источника. Диоды D1…D4 ограничительные, обычно используются диоды Шоттки.

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

Q1 Q2 Q3 Q4 Состояние
1 1 Поворот мотора вправо
1 1 Поворот мотора влево
Свободное вращение
1 1 Торможение
1 1 Торможение
1 1 Короткое замыкание
1 1 Короткое замыкание

Драйвер двигателя L298N

Модуль используется для управления шаговыми двигателями с напряжением от 5 до 35 В.  При помощи одной платы L298N можно управлять сразу двумя двигателями. Наибольшая нагрузка, которую обеспечивает микросхема, достигает 2 А на каждый двигатель. Если подключить двигатели параллельно, это значение можно увеличить до 4 А.

Плата выглядит следующим образом:

L298n драйвер шагового двигателя схема подключения

Распиновка микросхемы L298N:

  • Vcc – используется для подключения внешнего питания;
  • 5В;
  • Земля GND;
  • IN1, IN2, IN3, IN4 – используется для плавного управления скоростью вращения мотора;
  • OUT1, OUT2 – используется для выхода с первого двигателя;
  • OUT3, OUT4 – используется для выхода со второго двигателя;
  • S1 – переключает питание схемы: от внешнего источника или от внутреннего преобразователя;
  • ENABLE A, B – требуются для раздельного управления каналами. Используются в двух режимах – активный, при котором каналами управляет микроконтроллер и имеется возможность изменения скорости вращения, и пассивный, в котором невозможно управлять скоростью двигателей (установлено максимальное значение).

L298n драйвер шагового двигателя схема подключения

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

Драйвер двигателя L293D

L293D – является самой простой микросхемой для работы с двигателями. L293D обладает двумя H-моста, которые позволяют управлять двумя двигателями. Рабочее напряжение микросхемы – 36 В, рабочий ток достигает 600 мА. На двигатель L293D может подавать максимальный ток в 1,2 А.

В схеме имеется 16 выходов. Распиновка:

  • +V – питание на 5 В;
  • +Vmotor – напряжение питания для мотором до 36 В;
  • 0V – земля;
  • En1, En2 –включают и выключают H-мосты;
  • In1, In2 – управляют первым H-мостом;
  • Out1, Out2 – подключение первого H-моста;
  • In3, In4 – управляют вторым H-мостом;
  • Out3, Out4 – подключение второго H-моста.

L298n драйвер шагового двигателя схема подключения

Для подключения к микроконтроллеру Arduino Uno нужно соединить выходы In1 на L293D и 7 пин на Ардуино, In2 – 8, In3 – 2, In4 – 3, En1 – 6, En2 – 5, V – 5V, Vmotor – 5 V, 0V – GND. Пример подключения одного двигателя к Ардуино показан на рисунке.

L298n драйвер шагового двигателя схема подключения

Драйвер двигателя на микросхеме HG7881

HG7881 – двухканальный драйвер, к которому можно подключить 2 двигателя или четырехпроводной двухфазный шаговый двигатель. Устройство часто используется из-за своей невысокой стоимости. Драйвер используется только для изменения направления вращения, менять скорость он не может.

Читайте также:  Kia cerato двигатель схема

L298n драйвер шагового двигателя схема подключения

Плата содержит 2 схемы L9110S, работающие как H-мост.

Характеристики драйвера HG7881:

  • 4-контактное подключение;
  • Питание для двигателей от 2,5 В до 12 В;
  • Потребляемый ток менее 800 мА;
  • Малые габариты, небольшой вес.

Распиновка:

  • GND – земля;
  • Vcc – напряжение питания 2,5В – 12В;
  • A-IA – вход A(IA) для двигателя A;
  • A-IB – вход B (IB) для двигателя A;
  • B-IA – вход A(IA) для двигателя B;
  • B-IB – вход B (IB) для двигателя B.

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

IA IB Состояние мотора
Остановка
1 Двигается вперед
1 Двигается назад
1 1 Отключение

Подключение одного двигателя к Ардуино изображено на рисунке.

L298n драйвер шагового двигателя схема подключения

Сравнение модулей

Модуль L293D подает максимальный ток в 1,2А, в то время как на L298N можно добиться максимального тока в 4 А. Также L293D обладает меньшим КПД и быстро греется во время работы.

При этом L293D является самой распространенной платой и стоит недорого.  Плата HG7881 отличается от L293D и L298N тем, что с ее помощью можно управлять только направлением вращения, скорость менять она не может.

HG7881 – самый дешевый и самый малогабаритный модуль.

Подключение L298N к Arduino

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

Нужно присоединить источник питания. + подключается к пину 4 на плате L298N, минус (GND) – к 5 пину.

Затем нужно соединить выходы с L298N и пины на Ардуино, причем некоторые из них должны поддерживать ШИМ-модуляцию. На плате Ардуино они обозначены ~.

Выходы с L298N IN1, IN2, IN3 и IN4 подключить к D7, D6, D5 и D4 на Ардуино соответственно. Подключение всех остальных контактов представлено на схеме.

L298n драйвер шагового двигателя схема подключения

Направление вращения задается с помощью сигналов HIGH и LOW на каждый канал. Двигатели начнут вращаться, только когда на 7 пине для первого мотора и на 12 пине для второго на L298N будет сигнал HIGH. Подача LOW останавливает вращение. Чтобы управлять скоростью, используются ШИМ-сигналы.

Для управления шаговым двигателем в Arduino IDE существует стандартная библиотека Stepper library. Чтобы проверить работоспособность собранной схемы, можно загрузить тестовый пример stepper_oneRevolution. При правильной сборке вал двигателя начнет вращаться.

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

Ардуино: драйвер L298N для мотора постоянного тока

Чтобы управлять вращением мотора, любому контроллеру необходимо специальное устройство, которое часто называют драйвером (от англ. driver — водитель). В уроке «управление двигателем постоянного тока» мы уже пробовали запускать и вращать в разные стороны мотор двумя способами: с помощью одного транзистора и с помощью микросхемы драйвера L293D.

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

L298n драйвер шагового двигателя схема подключения

Как и в случае L293N, драйвер представляет собой полный H-мост, главная функция которого — менять полярность на нагрузке. А если в качестве нагрузки будет мотор постоянного тока, то смена полярности приведет к смене направления его вращения. Это то, что нам нужно.

Спецификация модуля L298N:

  • напряжение питания двигателей: до 35 В;
  • рабочий ток (на каждый канал): 2 А;
  • периодический ток (80% — вкл, 20% — выкл): 2,5 А;
  • кратковременный ток: 3 А;
  • вес: 33 г.

Драйвер L298N работает с более высоким током, чем L293D. С помощью L298N мы можем управлять и слабыми моторчиками типа n20 и мощными моторами, такими как JGA25 или даже JGA37 с крутящим моментом до 20-25 кг/см. Хватит для большинства DIY проектов!

В корзинуВ корзинуВ корзинуВ корзинуВ корзину

Назначение элементов и контактов на плате драйвера L298N

Посмотрим внимательнее на модуль и разберемся с его контактами.

L298n драйвер шагового двигателя схема подключения

Логика микросхемы L298N питается напряжением 5 Вольт. Для этого на модуле предусмотрен стабилизатор напряжения 78M05. На вход этого стабилизатора можно подавать напряжение до 35 В, а на выходе всегда получается 5 В. Рабочий ток у 78M05 небольшой — до 500 мА. Однако, при желании, от него можно питать и саму плату Ардуино Уно, к которой мы будем подключать драйвер.

Тройная клемма снизу отвечает за питание модуля. Самый левый контакт — питание моторов. Сюда можно подавать до 35 В. Средний контакт — земля, которая должна быть общей для модуля и контроллера. Правый контакт имеет двоякую функцию.

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

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

Две другие винтовые клеммы (OUT1/2 и OUT 3/4) служат для подключения моторов. Надо отметить, что моторы постоянного тока неполярные, но от того на какой контакт мотора подается плюс, а на какой минус, зависит направление их вращения.

Наконец, осталось разобраться с контактами управления. Их по три штуки на каждый мотор. Контакты ENA и ENB позволяют управлять моторами с помощью ШИМ сигнала. Если ENA и ENB подключить строго к +5 В, то моторы будут всегда вращаться с максимальной возможной скоростью. Именно для этого режима на модуле предусмотрены две перемычки рядом с ENA и ENB.

С помощью контактов IN1,IN2,IN3,IN4 задаётся режим работы моторов. Таблица режимов для двигателя A имеет вид:

Режим IN1 IN2
Вращение в одну сторону 1
Вращение в обратную сторону 1
Блокировка мотора 1 1
Отключение мотора

Тут следует пояснить последние два режима. Если нам необходимо резко остановить мотор, то выбираем режим блокировки. Для плавной остановки — выбираем «отключение мотора»

Подключение драйвера L298N к Ардуино Уно

Чтобы попробовать драйвер в деле, подключим его к контроллеру Ардуино Уно и к любому, попавшему под руку, небольшому мотору постоянного тока.

В данном уроке мы используем самый простой мотор с напряжением питания 1,5-3 Вольта. Для питания этого мотора нам будет достаточно двух пальчиковых батареек.

В такой схеме просто невозможно запитать микросхему драйвера от встроенного стабилизатора, поэтому питание +5В будем брать от Ардуино.

  • Также отметим, что при данной схеме подключения с внешним питанием +5 В, нам нужно убрать соответствующую перемычку, о которой мы говорили выше (перемычка питания от стабилизатора)!
  • Ну и раз уж мы планируем управлять скоростью вращения, уберем перемычку с контакта ENA.
  • Принципиальная схема

L298n драйвер шагового двигателя схема подключения

Внешний вид макета

L298n драйвер шагового двигателя схема подключения

Программа для драйвера мотора L298N

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

byte ena = 3;
byte in1 = 4;
byte in2 = 5;
void setup() {
pinMode( ena, OUTPUT );
pinMode( in1, OUTPUT );
pinMode( in2, OUTPUT );
}
void loop() {
// выставляем 100% мощность на моторе А — 255 из 255
analogWrite( ena, 255 );
// выставляем режим мотора — вращение по часовой
digitalWrite( in1, HIGH );
digitalWrite( in2, LOW );
delay(3000); // пауза 3сек

Читайте также:  В чем проблема двигателя tsi

// выставляем мощность на мотора А — 150 из 255
analogWrite( ena, 150 );
// режим мотора — вращение против часовой
digitalWrite( in1, LOW );
digitalWrite( in2, HIGH );
delay(3000); // пауза 3сек
}

Загружаем программу на Ардуино, затем подключаем к драйверу элементы питания и смотрим как ведёт себя моторчик.

Следует отметить, что данная программа не гарантирует вращение мотора с какой-то конкретной скоростью. Мы лишь можем менять мощность, передаваемую на мотор, с помощью изменения коэффициента заполнения ШИМ сигнала (duty cycle). Подробнее о ШИМ сигнале можно узнать в одном из наших уроков.

Заключение

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

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

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

Arduino UNO урок 13 — драйвер двигателя L298N

Микросхема L298N представляет собой сдвоенный мостовой драйвер двигателей и предназначена для управления DC и шаговыми двигателями. Данная микросхема находит очень широкое применение в роботостроительстве.

Одна микросхема L298N способна управлять двумя двигателями и обеспечивает максимальную нагрузку до 2А на каждый двигатель, а если задействовать параллельное включение для одного двигателя, то можно поднять максимальный ток до 4А.

В данной статье я хочу рассмотреть подключение к Arduino готового модуля L298N, которые очень широко представлены на популярном аукционе ebay, AliExpress и в др. местах.

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

Не говоря уже про трудозатраты на изготовление печатной платы, пайку и т.д.

Сами модули на микросхемах L298N выглядят так:

L298n драйвер шагового двигателя схема подключения

Принципиальная схема такого модуля выглядит следующим образом:

L298n драйвер шагового двигателя схема подключения

Шилд имеет следующие пины подключения:Vcc — подключение внешнего питания двигателей+5 — питание логикиGND — общийIN1, IN2, IN3, IN4 (разъем P4 на схеме) — входы управления двигателямиOUT1, OUT2 (разъем P2 на схеме) — выход первого двигателяOUT3, OUT4 (разъем P3 на схеме) — выход второго двигателяВыключатель S1 служит для переключения питания логической части микросхемы. Т.е. при включенном S1 питание логической части берется от внутреннего преобразователя модуля. При выключенном S1 питание берется от внешнего источника.
На модулях также присутствуют перемычки ENA и ENB для разрешения включения двигателей. Если необходимо, их можно также подключить к Arduino и задействовать, но это лишние 2 провода и в этих входах нет особого смысла.

L298n драйвер шагового двигателя схема подключения

ШИМ управление позволяет плавно изменять скорость вращение двигателя. Если нам не нужно ШИМ управление, то на соответствующий вход нужно просто подать логическую 1. На какой именно вход IN1 или IN2 вы подадите сигнал ШИМ, либо направление вращения — разницы не имеет. Тоже самое справедливо и для входов IN3, IN4.

Схема подключения шилда L298N к контроллеру Arduino:

L298n драйвер шагового двигателя схема подключения

Для питания логической части схемы необходимо нажать кнопку или вставить перемычку (зависит от типа модуля). Если же на вашем модуле не предусмотрен преобразователь 5В, то дополнительно, необходимо соединить вывод 5V от Arduino к входу +5 шилда.
Как видно из схемы выше, 2 и 4 вывод используются для установки направления движения, а 3 и 5 для ШИМ управления выводами.

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

#define D1 2 // Направление вращение двигателя 1
#define M1 3 // ШИМ вывод для управления двигателем 1
#define D2 4 // Направление вращение двигателя 2
#define M2 5 // ШИМ вывод для управления двигателем 2

bool direction = 0; // Текущее направление вращения
int value; // Текущее значение ШИМ

void setup()
{
pinMode(D1, OUTPUT);
pinMode(D2, OUTPUT);
}

void loop()
{
for(value = 0; value

Подключение шагового двигателя к Arduino через драйвер L298

На втором месте рейтинга двигателей для роботов после сервоприводов, которые мы уже рассматривали, стоят шаговые двигатели. Сегодня мы научимся управлять ими при помощи Arduino!

Кроме шагового двигателя (ШД) и Arduino нам потребуется ещё плата драйвера L298, которую можно приобрести у нас в магазине.

Шаговый двигатель позволяет точно спозиционировать вал, поворачивая его на небольшой угол. Один такой поворот зовётся шаг. Соответственно, одной из важных характеристик привода является количество шагов на оборот, то есть «разрешение» поворота.

ШД способен удерживать свою позицию даже в случае внешнего крутящего момента! Шаговые двигатели делятся на униполярные и биполярные.

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

Обратите внимание – биполярные ШД имеют 4 провода на выходе, униполярные – не 4 (5 или более).

Количество выводов зависит от количества обмоток в двигателе, чаще всего их 4 –поэтому 5 проводов (4 обмотки и общий). Управление униполярным двигателем, в теории, сводится к перебору обмоток (подачи поочерёдно логической единицы). Задержка между переключением обмотки определяет скорость и ускорение двигателя.

L298n драйвер шагового двигателя схема подключения L298n драйвер шагового двигателя схема подключения

Для управления шаговым двигателем сгодится любой контроллер Arduino, мы же используем Arduino UNO.  От шаговика отходят две пары проводов и общий(GND). A, A+ подключаются к MA, MA+, также и B, B+ к MB, MB+.

Питание 12В подаётся на первый контакт разъёма питания, 5В – на второй, GND –  на третий (см. фото ниже). Выводы IN1-IN4 подключаются по порядку к цифровым пинам с 8 по 11 – по ним передаются управляющие импульсы.

После подключения надо загрузить в контроллер программу-пример stepper_oneRevolution из библиотеки Stepper (включена в комплект поставки). Можете добавить ее либо с этой страницы, либо найти в Файл Примеры Stepper stepper_oneRevolution

Подключение шагового двигателя к Arduino через драйвер L298 #include
const int stepsPerRevolution = 200; // steps per revolution of your motor
// initialize the stepper library on pins 8 through 11:
Stepper myStepper(stepsPerRevolution, 8,9,10,11);
void setup() {
// set the speed at 60 rpm:
myStepper.setSpeed(60);
// initialize the serial port:
Serial.begin(9600);
}
void loop() {
// step one revolution in one direction:
Serial.println(«clockwise»);
myStepper.step(stepsPerRevolution);
delay(500);
// step one revolution in the other direction:
Serial.println(«counterclockwise»);
myStepper.step(-stepsPerRevolution);
delay(500);
}

const int stepsPerRevolution = 200; // steps per revolution of your motor// initialize the stepper library on pins 8 through 11:Stepper myStepper(stepsPerRevolution, 8,9,10,11);   // set the speed at 60 rpm:   // initialize the serial port:   // step one revolution in one direction:   Serial.println(«clockwise»);   myStepper.step(stepsPerRevolution);   // step one revolution in the other direction:   Serial.println(«counterclockwise»);   myStepper.step(-stepsPerRevolution);

Ответить
L298n драйвер шагового двигателя схема подключения

Качественная недорогая 3D печать корпусов и другой мелкосерийной продукции. 6 видов пластика на выбор. Гарантия качества и соблюдения сроков. Наличный и безналичный расчет.

Ссылка на основную публикацию
Adblock
detector