Меню

Схема драйвера для шагового двигателя l297

L297. Подводный камень.

Здесь «камень» — не обозначение кристалла или микросхемы, как это звучит в жаргоне электронщиков, а именно то незаметное с поверхности препятствие, на которое можно напороться в легкомысленной самоуверенности.

Вместо предисловия.
Заразился и я мечтой заиметь свою ЧПУ-сверлилку/фрезер. Пока с механикой дело продвигается уныло, решил тем временем поиграться с управлением шаговика, чтобы окончательно определиться со схемой. Шаговики собираюсь использовать униполярные от принтера. Облазил несколько форумов, прочитал и «хорошую статью», что в топике podkassetnik -а. В конце-концов решил не мудрить с МК и купил L297-е.
По рекомендациям решил применять ШИМ для стабилизации тока обмоток — тут уж L297-я как-раз в тему (хоть и старая, как пишут люди). Почитал, насколько смог понять, ее Т.О.(Datasheet) и набросал схемку.

Предвидя вопрос «а нафига набрасывать — есть же готовые и проверенные», сразу же на него и отвечу — теперь я почти так и сделаю.

Но собственно что же хотел написать? Дело в том, что есть у нее(L297) такой управляющий вход CONTROL, про который в Т.О. сказано:

Control input that defines action of chopper.
When low chopper acts on INH1 and INH2; when high chopper
acts on phase lines ABCD.

Насколько я понял, можно ШИМ-мом рулить прямо по выходам ABCD. Вот опираясь на это «понятие» и родилась изначальная схемка:

Средний вывод обмоток двигателя на V+, естественно.
Сейчас мы не будем рассматривать вопрос управления полевиками без драйверов — суть не в этом!

Ну так вот, подключил я к этой, собранной на макетке, схеме движок, подал питание и стал крутить подстроечник, добиваясь регулировки тока. Движок шумел ШИМ-ом и грелся, как паяльник. При этом потребляемый ток увеличивался(!) при появлении ШИМ-а почти в 2 раза, по сравнению с его(ШИМ-а) отсутствием. Думаю, где ж я накосячил?
Стал смотреть, что же выдает L297 на полевики. Как и пишут в Т.О. после подачи питания и отсутствия сигнала STEP, состояние выходов ABCD соответствовало HOME, т.е. 0101 — это когда я движок подстроечника выкрутил в правое по схеме положение. т.е. на максимальный ток. А поскольку падение на RS (токоизмерительных шунтах) было ниже установленного Vref, то и ШИМ отсутствовал.
Ну хорошо, покрутил подстроечник до появления ШИМ-а (на время расследования я решил двигатель не жечь и заменил его резисторами по 100ом и увеличил сопротивление шунтов) и что вы думаете? Я просто не поверил своим глазам! ШИМ появился на выходах А и С, на которых до этого был лог.«0». Выходы B и D всё также оставались в лог.«1» без малейшего признака ШИМ-а! А это значит, что этим вот образом подключалась и вторая половина обмотки — вот откуда увеличение суммарного тока!

Давай еще раз читать Т.О. повнимательней, насколько это возможно с моим незнанием английского 🙂
Еще и еще раз прочесывал уже знакомые и еще незнакомые форумы — нигде ни намека на это положение вещей.
Конечно весь интернет я не прочесал — терпения не хватило.
Причем при подаче сигнала шага L-ка повторяла свое поведение в том же стиле. Напрашивается вывод — активное состояние выходов ABCD инверсное. Ну если так, то работа ШИМ-а правильная!
Ну кто же тогда дурак — я? Ведь ни в ДШ, ни в других статьях об этом ничего не сказано.
Не зря ведь люди ставят между L-кой и полевиками элемент «И» и рулят ШИМ-ом по /INH!
Только ведь никто этот момент не раскрывает почему-то.

Для чистоты эксперимента поставил я между L-кой и полевиками инверторы: ШИМ стал правильно регулировать ток нагрузки. Проверка на двигателе подтвердила, причем не только в покое, но и на разных скоростях вращения. Питал движок 12-ю вольтами, ток изменял в пределах 200-600mA, проверяя пальцами момент на валу.
Отступление:
Во время экспериментов почему-то убил два IRL530N (100V,17A). Диодов на обмотки двигателя пока не ставил, осциллографом видел выбросы до +36 вольт. Странно, почему же сдохли эти полевики (стояли в обмотке CD), после заменил их на IRF640 (что было) — без проблем. Вот теперь и сомневаюсь в применении сборок IRF7103 (50V,3A).

Ну хорошо, допустим ABCD — выходы инверсные, а как же тогда быть с ENABLE, ведь при отключении L297 этим сигналом выходы ABCD остаются в «нуле» — т.е. активные! Чего-то я не понимаю!

Читайте также:  С чего начать ремонт кузова автомобиля

Нет, я теперь уж точно сделаю, как и другие — поставлю 7408(или 7409) и заведу ШИМ на /INH.
Проверено многими — надежный «велосипед»! 🙂

P.S. Проверил все три L-ки, поведение идентичное. Хотя может это одна партия такая?
:))
__________________________________________________________________________

Послесловие (19.02.2014)

Учись, синку, та читай багато,
бо будеш ти дурнем, а я — твоїм татом.

Да вот: учился мало и читал не то, что нужно. Вот и напоролся на грабли.
Спасибо тов. steel_ne , ткнул меня носом подсказал в коментариях, что подробности на этот контроллер надо читать в примечании к применению (APPLICATION NOTE).
После посильного изучения вопроса, кажется всё стало на свои места.

Вкратце:
L297 разрабатывалась в первую очередь для применения мостовых драйверов (биполярных) Ш.Д., хотя и меет возможность использования простых (не мостовых) ключей для управления униполярным Ш.Д.
При этом сигналом управления CONTROL выбирается функционал работы именно мостового драйвера (в частности, как я понял, управление скоростью спада тока обмоток). А для управления униполярным Ш.Д. этот сигнал имеет только одно определенное значение. О чем в обычном Т.О. (Datasheet) явно не сказано. Ссылка на него есть в коментариях.
Про спад тока обмоток пишет в своей статье Л.И.Ридико. К сожалению я не провел параллели между его изложением и поведением L297 в вышеописанном включении.

ОБОРУДОВАНИЕ
ТЕХНОЛОГИИ
РАЗРАБОТКИ

Блог технической поддержки моих разработок

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Читайте также:  Инжекторный двигатель ваз 21099 устройство

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

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

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

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

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

А это изображение платы контроллера униполярного шагового двигателя с PIC контроллером фирмы Microchip.

Простая плата с восьми разрядным микроконтроллером PIC18F2520 управляет:

  • двумя шаговыми двигателями с током фазы до 3 А;
  • двумя ШИМ ключами для электромагнитов;
  • считывает состояние 4х датчиков;
  • обменивается данными по сети с центральным контроллером.

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

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

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

  • простой, дешевый, надежный драйвер.
  • в униполярном режиме крутящий момент примерно на 40 % меньше по сравнению с биполярным режимом.

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

В биполярном режиме могут работать двигатели, имеющие любые конфигурации обмоток.

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

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

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

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

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

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

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

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

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

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

Схема достаточно простая. Проблема сквозных токов решается за счет резисторов 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


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

2 А

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

  • не повторяющийся импульс 100 мкс
  • импульсы (80% включен, 20% выключен, включен 10 мс)
  • при постоянном токе
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.

13 . 22 мА
50 . 70 мА
4 мА

24 . 36 мА
7 . 12 мА
6 мА

0,95. 1,35. 1,7 В
2 . 2,7 В

0,85. 1,2. 1,6 В
1,7 . 2,3 В

1,8 . 4,9 В

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

  • Ven=H, Vi=L
  • Ven=H, Vi=H
  • Ven=L
Iss Потребляемый ток покоя (вывод 9)

  • Ven=H, Vi=L
  • Ven=H, Vi=H
  • Ven=L
Vil Входное напряжение низкого уровня
(выводы 5, 7, 10, 12, 6, 11)
-0,3 . 1,5 В
Vih Входное напряжение высокого уровня
(выводы 5, 7, 10, 12, 6, 11)
2,3 . Vss В
Iil Входной ток низкого уровня
(выводы 5, 7, 10, 12, 6, 11)
-10 мкА
Iih Входной ток высокого уровня
(выводы 5, 7, 10, 12, 6, 11)
30 . 100 мкА
Vce sat (h) Напряжение насыщения верхнего ключа

  • при токе 1 А
  • при токе 2 А
Vce sat (l) Напряжение насыщения нижнего ключа

  • при токе 1 А
  • при токе 2 А
Vce sat Общее падение напряжения на
открытых ключах

  • при токе 1 А
  • при токе 2 А
Vsens Напряжение датчиков тока
(выводы 1, 15)
-1 . 2 В
Fc Частота коммутаций 25 . 40 кГц

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

Диаграмма работы этой схемы в полношаговом режиме выглядит так.

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

По функциям это аналог контроллера описанного в главе про униполярные двигатели, только для биполярного. Он также собран на PIC контроллере фирмы Microchip и управляет двумя биполярными шаговыми двигателями с током фаз до 2 А. Функциональные возможности и режимы управления двигателем те же.

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

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