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

Шаговый Двигатель Схема Подключения — tokzamer.ru

Формирование импульсов отводится микроконтроллерам например Arduino.


В одном 8 выводном корпусе SOIC-8 размещены 2 транзистора.

Путь для повышения магнитного поля — это увеличение тока или числа витков обмоток.
Управление биполярным шаговым двигателем

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

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

У его намагниченного центрального вала имеется два набора зубов для двух магнитных полюсов, которые затем выстраиваются в линию с зубами вдоль электромагнитов. Оба сигнала имеют логические уровни и, если для их формирования используются выходы с открытым коллектором, то потребуются соответствующие резисторы подтяжки на Рисунке 10 они не показаны.

Чередующиеся полюса ротора имеют прямолинейную форму и расположены параллельно оси двигателя.

Зависимость момента от скорости, влияние нагрузки Момент, создаваемый шаговым двигателем, зависит от нескольких факторов: скорости. Причиной этого является фильтрующее действие инерции ротора и нагрузки.

Управление шаговым двигателем

Сморите видео

Несмотря на то, что драйвер, обеспечивающий микрошаговый режим, намного сложнее обычного драйвера, всё равно система может оказаться более простой и дешевой, чем шаговый двигатель, плюс редуктор. Конструкция в поперечном разрезе напоминает шестерню с зубцами. Полная схема, приведенная в [ 10 ] и многократно повторенная на интернет-сайтах, пригодна для использования в качестве тестовой платы. С помощью подстроечного резистора видно на правом фото можно задавать выходной ток.


Схема содержит описанный ранее двунаправленный двухфазовый формирователь на D-триггерах Рисунок

Современные микроконтроллеры иногда имеют встроенные ЦАПы, которые можно использовать для реализации микрошагового режима взамен специальных контроллеров.

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

Соответственно, в режиме удержания поскольку используются 8 разрядов ЦАП , максимальный ток составит 1 А. При этом используется номинальное число шагов.

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

Это означает, что в таком режиме не может быть получен полный момент. Внутри находятся полюсные наконечники в виде ламелей.
Шаговый двигатель БЕЗ ДРАЙВЕРА!

Еще по теме: Кабельные столбики пуэ

Виды шаговых двигателей по типу ротора:

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

Соответственно, в режиме удержания поскольку используются 8 разрядов ЦАП , максимальный ток составит 1 А.


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

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

В полношаговом режиме с двумя включенными фазами положения точек равновесия ротора смещены на пол-шага. Средние выводы обмоток могут быть объединены внутри двигателя, поэтому такой двигатель может иметь 5 или 6 выводов рис.


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

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

Обеспечивает паспортное значение электрических характеристик. Драйверы делятся на две категории: Повторяющие форму сигналов. Ротор не имеет постоянных магнитов, он выполнен из магнитомягкого материала в виде многоконечной звезды. Магнитный гистерезис приводит к тому, что магнитный поток зависит не только от тока обмоток, но и от предыдущего его значения. С точки зрения автора статьи, самым оптимальным для управления коммутацией обмоток двигателей небольшой мощности является использование подходящих по току и сопротивлению открытого канала RDC ON MOSFET, но с учетом рекомендаций, описанных выше.

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

Технические характеристики A4988

Конструктивно это выглядит как два круглых полюса, на поверхности которых расположены зубцы ротора из магнитомягкого материала. Можно увеличить количество шагов в 16, 32, 64 раза и т.

Поддержка такого режима для указанного драйвера осуществляется микропроцессором, управляющим входами ЦАП. Таким образом, выполняется один шаг.

Шаговые двигатели.

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

Рекомендуем: Необходимый метериал для проведения электричества

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

А принцип работы этого всего очень прост: конденсатор формирует сдвиг фаз на одной из обмоток, в результате обмотки работают почти попеременно и шаговый двигатель крутится. В таком двигателе сечение отдельных обмоток вдвое больше, а омическое сопротивление — соответственно вдвое меньше. Так, пожалуй, можно дать строгое определение. Готовые шаговые двигатели с редукторами хотя и существуют, однако являются экзотикой. Иногда двигатели с постоянными магнитами имеют 4 раздельных обмотки.

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

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

В пределе, шаговый двигатель может работать как синхронный электродвигатель в режиме непрерывного вращения. Схема контроллера униполярного шагового двигателя с драйвером на биполярных транзисторах. Описание библиотеки для работы с шаговым двигателем В среде разработки Ардуино IDE существует стандартная библиотека Strepper. Гибридный двигатель.
Обзор копеечной платы управления шаговым двигателем.

Быстрые движения под высоким напряжением, или почти вся правда об управлении шаговым мотором

Доброго вам времени суток, уважаемые гики и сочувствующие!

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


Что же такое этот самый шаговый электродвигатель? В принципе, в плане функциональности этот мотор можно представить как обычный электромотор, каждый оборот вала которого разбит на множество одинаковых, точно фиксированных шагов. Перемещением на определённое количество шагов мы можем позиционировать вал шагового мотора с высокой точностью и хорошей повторяемостью. Каждый шаг можно разбить на множество ступенек (так называемый микростеппинг), что увеличивает плавность хода мотора, способствует подавлению резонансов, а также увеличивает угловое разрешение. Различия между полношаговым режимом (слева), 1/2 микростеппингом (в центре) и 1/16 микростеппингом (справа) видны невооружённым глазом:

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

Из этой картинки видно, что шаговый мотор в электрическом плане представляет собой два или более электромагнита, которые необходимо переключать в определённой последовательности для приведения ротора в движение.
Лирическое отступление: На настоящий момент существуют два основных типа шаговых моторов: униполярный и биполярный. Поскольку униполярные моторы имеют меньший крутящий момент и худшие скоростные характеристики, в данной публикации они рассматриваться не будут.
Итак, вернёмся к управлению биполярным мотором. Как это ни парадоксально звучит, но зачастую проще обсуждать общие принципы на конкретных примерах. В качестве примера мы возьмём шаговый мотор ST4118L1804-A производителя Nanotec. Почему именно этот мотор и производитель? Причина проста: по основным характеристикам это типичный представитель моторов типоразмера NEMA 17, широко применяющихся в радиолюбительской практике, и имеет к тому же довольно подробную техдокументацию (которая начисто отсутствует у китайских noname-моторов).

Основные характеристики данного мотора:
Рабочее напряжение 3,15 В
Рабочий ток 1,8 А
Активное сопротивление обмотки 1,75 Ом
Индуктивность обмотки 3,3 мГн
Момент удержания 0,5 Нм
Угловой размер шага 1,8° (200 шагов на один оборот ротора)

В данном случае самое главное — это правильная интерпретация данных. Применив закон Ома, выясняем, что производитель указал рабочий ток и напряжение для постоянного тока, протекающего через обмотки двигателя, без учёта индуктивности.
Проверка: I = U/R, или 1,8 А = 3,15 В/1,75 Ом. Всё сходится.
Какой же будет мощность рассеяния при питании обмоток постоянным током?
Всё просто: P=I x U, или 1,8 А х 3,15 В = 5,67 Вт. В полушаговом режиме возможна ситуация, когда ток течёт через обе обмотки мотора, соответственно рассеиваемую мощность нужно удвоить: 5,67 Вт х 2 = 11,34 Вт. Это достаточно много, и может привести к перегреву мотора. Эта же величина является минимальной мощностью блока питания для этого мотора. Обыкновенный 3D принтер имеет пять подобных моторов, соответственно для питания драйверов необходим источник питания с минимальной мощностью 11,34 Вт х 5 = 56,7 Вт. К этой цифре необходимо добавить электрическую мощность, превращённую мотором в кинетическую или потенциальную энергию при работе принтера. Точный расчёт этой мощности — дело достаточно сложное, на практике проще всего добавить 75% к рассчитанной тепловой мощности и на том завершить расчёты. Почему именно 75%? Дело в том, что обычный шаговый мотор способен совершить полезную работу на величину примерно 2/3 от максимальной тепловой мощности. В данном случае для создания какого-либо узла или устройства сначала подбирается подходящий мотор (например, по крутящему моменту), а после этого рассчитывается мощность блока питания.
Итоговая мощность блока питания для пяти шаговых моторов: 56,7 Вт х 1,75 = 99,225 Вт.
Конечно, на практике ни в одном любительском устройстве не используются моторы под максимальной нагрузкой, и реальная мощность потребления будет, скорее всего, намного ниже расчётной. Я же, как человек ленивый и скаредный, крайне не люблю делать одно и то же два раза, поэтому беру блок питания всегда с некоторым запасом (то есть, согласно вышеприведённым расчётам).
Теперь пришла пора приступить к определению минимально необходимого напряжения блока питания. К сожалению, этому параметру уделяется незаслуженно маленькое внимание в тематических публикациях. Почему этот параметр так важен? Дело в том, что при вращении ротора шагового мотора через катушки течёт переменный ток, ограниченный не только активным, но также и индуктивным сопротивлением обмоток.
Рассмотрим предоставленный производителем график зависимости крутящего момента нашего мотора от частоты вращения:

На графике присутствуют две линии, показывающие зависимость крутящего момента от частоты вращения для напряжения питания 24 В (красная линия) и 48 В (зелёная линия). Нетрудно заметить, что спад крутящего момента начинается примерно с 300 об/мин для 24 В и примерно с 600-700 об/мин для напряжения 48 В. При этом необходимо упомянуть, что производитель использует недоступные любителям дорогостоящие промышленные драйверы. Почему же так важно напряжение питания драйвера, если оно даже в случае питания от 12 В заведомо выше паспортной величины напряжения питания шагового мотора (3,15 В)? Дело в том, что шаговый мотор управляется током, а не напряжением, и именно источниками тока являются все современные драйверы. В идеальном случае драйвер обеспечивает заданный ток в обмотках двигателя вне зависимости от частоты вращения ротора, нагрузки, изменения температуры и других параметров. Это организовано за счёт работы ШИМ-регулятора, управляемого зачастую довольно сложными алгоритмами. Из технической документации нашего мотора видно, что для полного оборота ротору необходимо совершить 200 шагов, при 300 об/мин это составит 60 000 шагов в минуту, или 1000 шагов в секунду. Это, проще говоря, соответствует переменному току частотой 1 кГц. На этой частоте индуктивное сопротивление обмотки составит (R(L)=2π×F×L): 2π х 1 кГц х 3,3 мГн = 20,73 Ом. Какое же напряжение необходимо для обеспеченияя тока в 1,8 А при этом сопротивлении? Закон Ома не дремлет (U=IR): 1,8 А х 20,73 Ом = 37,31 В. Неудивительно, что выше частоты вращения 300 об/мин наблюдается спад крутящего момента: драйверу банально не хватает напряжения питания. Почему же при таком вопиющем недостатке питания (37 — 24 =13 В) спад не наступает при более низкой частоте вращения? Дело в том, что в современных драйверах используется мостовая схема выходных каскадов, что позволяет «удваивать» напряжение, прикладываемое к обмоткам мотора. То есть, теоретически драйвер способен приложить «виртуальные» 48 В к обмоткам при напряжении питания 24 В, что создаёт теоретический запас по напряжению 48 — 37 = 11 В. На практике же этот запас будет нивелирован потерями в драйвере, сопутствующих цепях и активным сопротивлением обмоток мотора (активное сопротивление обмоток присутствует постоянно, и даже несколько возрастает при нагреве мотора). При увеличении частоты вращения ротора свыше 300 об/мин пропорционально растёт частота импульсов и, соответственно, увеличивается индуктивное сопротивление обмотки. При питании от 24 В драйверу перестаёт хватать напряжения питания для поддержания тока в обмотках, и крутящий момент неуклонно снижается. То же самое происходит при питании драйвера от 48 В, но уже гораздо значительно позже, при частоте вращения 600-700 об/мин.
Итак, с мощностью и величиной напряжения блока питания всё ясно, теперь необходимо переходить к практической реализации универсального драйвера, способного как к филигранной работе при помощи крохотных NEMA 11, так и к сотрясению основ мира в паре с могучими NEMA 23. Какими же основными качествами должен иметь драйвер моей мечты?

1. Высокое напряжение питания. Поскольку в техдокументации к моторам крайне редко указано максимальное напряжение питания, лучше будет ограничиться напряжением 48 В.
2. Важнейший параметр: высокий выходной ток. NEMA 23 имеют рабочие токи вплоть до 3,5 А, драйвер должен обеспечивать этот ток с запасом 30%. Путём нехитрых расчётов получаем максимальный рабочий ток около 4,5 А.
3. Простая и оперативная подстройка силы выходного тока.
4. Наличие микростеппинга, как минимум 1/8 шага
5. Наличие защиты от КЗ, перегрева, и т.д.
6. Небольшой размер, возможность крепления произвольного радиатора.
7. Исполнeние в виде интегральной схемы. XXI век на дворе!
8. Простая схема включения с минимальным количеством дискретных компонентов.
9. Низкая цена.

После множества бессонных ночей пятиминутного копания в Google выяснилось, что единственной доступной микросхемой драйвера с подходящими параметрами является TB6600HG. Покупка готового китайского драйвера на eBay показала, что не всё ладно в датском королевстве, далеко не всё. В частности, китайский драйвер отказался напрямую работать с выходами Arduino Due, и «завёлся» только через буферный преобразователь уровней. При работе с трёхамперной нагрузкой драйвер грелся и терял шаги десятками. Вскрытие пациента показало, что в нём не только была установлена микросхема предыдущего поколения (TB6560), а даже и термопаста не смогла найти себе места в списке компонентов. К тому же размерами и весом китайский драйвер наводил меня на мысли о моей молодости… о прошлом веке, если быть совсем точным. Ну нафиг, сказал во мне интеллигент в третьем поколении, мы сделаем свой драйвер, с преферансом и поэтессами. Если бы разработчики KiCAD видели, как я обращаюсь с их детищем, я разорился бы на одних только адвокатах:


С целью минимизации размеров была спроектирована четырёхслойная печатная плата. Этот факт, к сожалению, исключает её изготовление в домашних условиях. Посему на берлинской фирме LeitOn были заказаны 36 таких плат, каждая из которых обошлась в итоге около пяти евро. Часть этих плат были впоследствии выкуплены у меня собратьями по увлечению, и в итоге изготовление плат вышло не слишком накладным предприятием. Микросхемы TBB6600HG были заказаны на Aliexpress по 4 евро за штуку, остальные компоненты были заказаны на eBay, в пересчёте на один драйвер цена дискретных компонентов составила 2 евро. В качестве радиаторов были взяты пятисантиметровые отрезки П-образного алюминиевого профиля, пластиковые каркасы были отпечатаны на 3D принтере. Итого цена одного драйвера составила около 12 евро. Это справедливая цена за драйвер со следующими характеристиками:

Напряжение питания от 8 до 42 Вольт
Максимальный долговременный рабочий ток 4,5 Ампер, устанавливается потенциометром
Микростеппинг вплоть до 1/16 шага
Защита: КЗ, перегрев, низкое напряжение питания
Компактные размеры и низкий вес
Работа с уровнями входных сигналов от 3,3 до 5,5 вольт
Простая установка микростеппинга с помошью микропереключателей — к чёрту перемычки!

Готовые печатные платы:

Собранные и недособранные драйверы.

Видео работы драйвера в моём старом 3D принтере. Здесь трёхамперный NEMA 17 бодро гоняет подогреваемую рабочую площадку принтера размером 45 х 25 см через шестнадцатимиллиметровый шпиндель длиной 60 см:

Финальное фото: самодельные драйвера на своём рабочем месте в моём новом 3D принтере.

Публикуется под лицензией WTFPL

Ну, и традиционное: Have fun!

Драйвер шагового двигателя (Troyka-модуль) [Амперка / Вики]

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

Элементы платы

Подключение двигателя

На контакты 1, 2 подключается первая обмотка биполярного шагового двигателя. На контакты 3, 4 — вторая обмотка. Униполярный двигатель подключается точно также, просто не используются выводы из середин обмоток.

Питание двигателя

На колодки Vin подаётся напряжение 4,5–25 В постоянного тока. Для питания двигателя рекомендуется использовать отдельный контур питания, не связанный с цепью питания управляющего контроллера.

К примеру, если вы используете Arduino, не рекомендуется использовать питание с пина 5V Arduino. Это может привести к перезагрузке управляющего контроллера, или к перегрузке регулятора напряжения Arduino. В некоторых случаях допускается использовать для питания шагового двигателя пин Vin Arduino. Например, если Arduino запитана от мощного внешнего источника питания 7–12 В, напряжение которого при включении двигателя не падает ниже 7 В.

Контакты подключения 3-проводного шлейфа

Troyka-Stepper подключается к управляющей электронике по трём 3-проводным шлейфам. Назначение контактов 3-проводных шлейфов:

  • Питание (V) — красный провод. На него должно подаваться напряжение 3,3–5 В, которое используется для питания логической части драйвера шагового двигателя.

  • Земля (G) — чёрный провод. Должен быть соединён с землёй микроконтроллера.

  • Сигнальный — жёлтый провод. Через него происходит управление соответствующим пином модуля.

Для управления модулем используется от одного до трёх сигнальных контакта:

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

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

  • Enable. Высокий уровень на этом пине включает подачу напряжения на двигатель. При остановке шагового двигателя в определённом положении, питание продолжает поступать на его управляющую обмотку. Это приводит к нагреву шагового двигателя и излишнему расходу электроэнергии. Чтобы отключить подачу питания на двигатель, достаточно выставить низкий уровень напряжения на этом контакте. При остановке двигателя бывает полезно подать на этот контакт ШИМ-сигнал. Это позволит оставить на двигателе небольшое усилие, необходимое для удержания вала в текущем положении. Электроэнергии в таком случае будет тратится значительно меньше. Если нет необходимости управлять включением двигателя, вы можете не подключать этот контакт к микроконтроллеру. Тогда ток через обмотки двигателя будет течь всегда, если есть напряжение питания.

Индикатор вращения двигателя

Светодиодный индикатор. Горит зелёным при шаге в одну сторону, красным — при шаге в другую сторону.

Пример использования

troykaStepper.ino
// Troyka-Stepper подключён к следующим пинам:
const byte stepPin = 7;
const byte directionPin = 8;
const byte enablePin = 11;
 
// Выдержка для регулировки скорости вращения
int delayTime = 20;
 
void setup() {
  // Настраиваем нужные контакты на выход
  pinMode(stepPin, OUTPUT);
  pinMode(directionPin, OUTPUT);
  pinMode(enablePin, OUTPUT);
 
}
 
void loop() {
 
  // Подаём питание на двигатель
  digitalWrite(enablePin, HIGH);
 
  // Задаём направление вращения по часовой стрелке
  digitalWrite(directionPin, HIGH);
 
  // Делаем 50 шагов
  for (int i = 0; i < 50; ++i) {
    // Делаем шаг
    digitalWrite(stepPin, HIGH);
    delay(delayTime);
 
    digitalWrite(stepPin, LOW);
    delay(delayTime);
  }
 
  // Переходим в режим экономичного удержания двигателя...
  analogWrite(enablePin, 100);
  //... на три секунды
  delay(3000);
 
  // Меняем направление вращения
  digitalWrite(directionPin, LOW);
 
  // Включаем двигатель на полную мощность
  digitalWrite(enablePin, HIGH);
 
  // Делаем 50 шагов
  for (int i = 0; i < 50; ++i) {
    digitalWrite(stepPin, HIGH);
    delay(delayTime);
 
    digitalWrite(stepPin, LOW);
    delay(delayTime);
  }
 
  // Ничего не делаем без отключения двигателя
  delay(3000);
 
  // Отключаем двигатель
  digitalWrite(enablePin, LOW);
 
  // Ничего не делаем до перезагрузки
 
  while (true) {
    ;
  }
 
}

Характеристики модуля

Номинальное напряжение питания двигателя 4,5–25 В
Пиковое напряжение на контактах Vin 35 В
Напряжение питания логической части 3,3–5 В
Длительно допустимый ток до 600 мА
Пиковый ток 1200 мА

Ресурсы

Драйвер шагового двигателя. Тестируем микросхему L9110 / Хабр

Откуда «ножки» растут


В настоящее время стали доступны и приобрели популярность различные станки с программным управлением. Это лазерные и фрезерные резчики и гравёры. А так же 3D принтеры. Все эти станки имеют один общий узел — шаговый двигатель.

И этому двигателю нужен драйвер.

Принцип работы двигателя не является предметом этой статьи. Мы рассмотрим только драйвер. Всё, что нам нужно знать в данном контексте — это какие управляющие сигналы нам нужно формировать для управления шаговым двигателем. Оказывается, это самые обычные прямоугольные импульсы.

Существует некоторое количество решений драйверов от различных компаний. В нашей статье мы рассмотрим самое доступное решение драйвера L9110 и его аналог HG7881 Это решение часто используется в Arduino

Теория и практика


Я решил применить микросхему L9110 в своём проекте.

Довольно легко нагуглил datasheet. Прочитал. Всё предельно понятно. Характеристики, распиновка, таблица истинности… По всем параметрам драйвер, вроде бы подходит. Напряжение коммутации — 12 вольт, выходной ток 800 ма. — всего хватает.

А что на деле?



Не откладывая в «долгий ящик» я сделал плату, написал и запустил тестовую программу…
Первое, на что я обратил внимание в своём устройстве — то, что микросхема драйвера сильно греется. Внимание! НА ХОЛОСТОМ ХОДУ. Без нагрузки. Это что за чудеса схемотехники?
Может у меня микросхема бракованная?

Пришла в голову идея рассмотреть сей девайс поподробнее. И не один, а кучу.
Сказано — сделано.
Хорошо, что у меня была припасена панелька SO-8 и плата для моделирования.
Ну, и контроллер на базе STM32.

Собран стенд и произведены измерения.

Да, кстати, кроме непосредственно, силового узла в микросхеме заложена логика исключающее ИЛИ. В даташите это описано.

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

В результате измерений получилась табличка:

Рассмотрим строчки 2 и 3. Что мы здесь видим?

  1. Падение напряжения на выходных транзисторах, при наличии нагрузки, около полутора вольт, что при токе 0,33 ампера даёт 0,5 ватт на канал.
  2. На холостом ходу микросхема потребляет 0,05 А, что при напряжении 12 В даёт 0,6 ватт на канал.

Другими словами, независимо от нагрузки она потребляет около 0,5 Вт на канал. Теперь понятно, почему я об неё обжигал пальцы.

Сильный нагрев — это, конечно недостаток. Но может свою функцию микросхема выполняет хорошо? Тут пригодился недавно подаренный себе 4-х лучевой осциллограф приставка. Не ожидал, что мне так скоро потребуются все 4 луча. Для тестирования написал простенькую программку на stm32, который давно использую в различных проектах. Программа, просто, генерирует 2 прямоугольных сигналы с трёхкратной разницей частот.

Поскольку один раз увидеть лучше чем много раз прочитать — прикладываю развёртку сигналов управления.

Ничего особо сложного. Просто прямоугольные импульсы сдвинутые с разницей частоты в 3 раза.

Верхняя часть экрана — входные сигналы — нижняя — выходные.

Сразу бросается в глаза, что при различающихся значениях сигналов на входах, значения на выходах вполне чёткие Устанавливаются без задержек и с резкими фронтами.

Если же сигналы на входах совпадают — то фронт пологий. похож на разряд конденсатора.
Просмотрев документацию я не увидел ничего такого, что предвещало бы такое поведение.
Может я задал слишком высокую частоту входных сигналов? В даташите лимит не указан.
Уже зная, что у этого драйвера есть почти стопроцентный аналог HG7881 я обратился к его документации.

Она пролила больше света на эту загадочную ситуацию. Оказывается, логика работы драйвера немного шире. Две единицы на входе — это торможение ( то есть на выходе оба сигнала должно быть низкого уровня.) А два нуля на входе — это «висящие» контакты. Разрыв.

Значит два нуля на входе должны «подвешивать» выходы. Тогда, поведение разряжающегося конденсатора вполне предсказуемо. Однако две единицы на входах — должны быть надёжным нулём на выходе. А фактически это не так.

Я мог бы списать этот дефект на «китайского производителя». Однако, я тестировал микросхему по честному выпаянную из ардуиновской платы. При чём — не одну микросхему. Из нескольких плат. То есть, вероятность брака сильно снижена.

Вывод


Область применения микросхем L9110 уже, чем задекларирована, да и КПД низковат.
Рассеяние 0,5-0,6 ватта на одном ключе — это многовато. Не случайно это решение самое дешёвое.(10 центов за микросхему. на алиэкспрессе).

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

Управление биполярным шаговым двигателем Arduino

Этот небольшой пост показывает, как контролировать скорость и направление вращения биполярного шагового двигателя с помощью платы Arduino UNO и микросхемы драйвера двигателя L293D.
Шаговый двигатель, используемый в этом примере, представляет собой просто привод CD-ROM (или DVD-ROM) ПК, имеющий 4 провода.
Моделирование этого примера с помощью Proteus приведено в конце темы.

В основном есть два типа шаговых двигателей: биполярные и униполярные. Биполярный шаговый двигатель — это двухфазный бесщеточный двигатель, который имеет две катушки (обмотки), этот двигатель имеет 4 провода (по 2 провода на каждую катушку).
Другой тип — униполярный шаговый двигатель, это четырехфазный бесщеточный двигатель с 5 или 6 проводами.

Популярные режимы управления шаговым двигателем: полный шаг и полушаг . Полную ступень можно разделить на 2 типа: однофазный и двухфазный .

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

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

Полушаговый режим — это комбинация двух полноступенчатых режимов (однофазный и двухфазный). Этот режим увеличивает точность за счет деления каждого шага на 2. Он требует промежуточной мощности между однофазным и двухфазным режимами, а также промежуточным крутящим моментом.

Существует еще один тип управления — микрошаговый , этот тип более точен, чем полушаговый режим, для него требуются два источника синусоидального тока со сдвигом на 90 °.

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

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

Bipolar stepper motor windings

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

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

Bipolar stepper motor direction 1

Bipolar stepper motor direction 2

Связанные проекты:
Управление униполярным шаговым двигателем Arduino

Требуемое оборудование:

  • плата Arduino UNO
  • Биполярный шаговый двигатель
  • Микросхема драйвера двигателя
  • L293D —-> лист данных
  • Потенциометр 10 кОм
  • Кнопка
  • Источник питания с напряжением, равным номинальному напряжению двигателя
  • Хлебная доска
  • Перемычки

Arduino bipolar stepper motor control hardware circuit

Схема управления биполярным шаговым двигателем Arduino:
Пример принципиальной схемы показан ниже.

Arduino bipolar stepper motor control circuit

Все заземленные клеммы соединены вместе.

Микросхема L293D имеет 16 контактов с 4 входами (IN1, IN2, IN3 и IN4) и 4 выходами (OUT1, OUT2, OUT3 и OUT4). 4 выхода подключены к биполярному шаговому двигателю, как показано на принципиальной схеме.

4 входа подключаются следующим образом:
IN1 к контакту 8 Arduino
IN2 к контакту 9 Arduino
IN3 к контакту 10 Arduino
IN4 к контакту 11 Arduino

L293D имеет 2 контакта VCC: VCC1 (контакт №16) и VCC2 (контакт №8).VCC1 подключен к выводу Arduino + 5V. VCC2 подключен к другому источнику питания (положительный вывод) с напряжением, равным номинальному напряжению двигателя, на принципиальной схеме он обозначен как V_Motor (V_Motor = напряжение двигателя). Итак, если у нас есть шаговый двигатель с номинальным напряжением 5 В, мы должны подключить VCC2 к + 5 В (выход Arduino 5 В использовать не следует), а если номинальное напряжение шагового двигателя составляет 12 В, мы подключим VCC2 к + 12 В ( отрицательная клемма этого источника подключена к массе цепи)…

Потенциометр 10 кОм используется для управления скоростью шагового двигателя, его выходной контакт подключен к аналоговому контакту 0 Arduino.

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

Код управления биполярным шаговым двигателем Arduino:
В этом примере я использовал библиотеку шаговых двигателей Arduino (встроенную), которая упрощает код, она включена в код с помощью следующей строки:

Шаговый двигатель, который я использовал в этом проекте, имеет 20 шагов на один оборот, это определено в коде, как показано ниже:

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

Шаговый шаговый (STEPS, 8, 9, 10, 11);

Использование функции степпера.step (direction_) шаговый двигатель движется в соответствии с переменной direction_, в этом примере эта переменная может быть 1 или -1. Если direction_ = 1, двигатель будет двигаться в первом направлении, а если direction_ = -1, двигатель будет двигаться в другом направлении.

При нажатии кнопки переменная direction_ будет инвертирована (1 или -1).

Остальной код описан в комментариях.

1

2

3

4

5

6

7

8

9

10

11

12

13

140002

13

14

18

19

20

21

22

23

24

25

26

27

28

29

30

000

000 34

35

36

37

38

39

40

41

42

43

44

45

46

47

00050005 48

000

51

52

53

54

55

56

57

58

59

60

61

62

63

9 0002 64

65

66

67

/ *

* Биполярное управление скоростью и направлением шагового двигателя с помощью Arduino.

* Полный пошаговый контроль.

* Это бесплатное программное обеспечение БЕЗ ГАРАНТИЙ.

* https://simple-circuit.com/

* /

// включить библиотеку шаговых двигателей Arduino

#include

// измените это на количество шагов на вашем двигателе

#define STEPS 20

// создайте экземпляр класса шагового двигателя, указав

// количество шагов двигателя и его штырьков

// прикрепленных к

Stepper stepper ( ШАГИ, 8, 9, 10, 11);

const int button = 4; // кнопка управления направлением подключена к пину 4 Arduino

const int pot = A0; // потенциометр управления скоростью подключен к аналоговому выводу 0

void setup ()

{

// настроить вывод кнопки как вход с включенным внутренним подтягиванием

pinMode (button, INPUT_PULLUP);

}

int direction_ = 1, speed_ = 0;

void loop ()

{

if (digitalRead (button) == 0) // если кнопка нажата

if (debounce ()) // сигнал кнопки противодействия

{

direction_ * = -1; // переменная обратного направления

while (debounce ()); // ждем отпускания кнопки

}

// считываем аналоговое значение с потенциометра

int val = analogRead (pot);

// преобразовать цифровое значение из [0, 1023] в [5, 100]

// ===> минимальная скорость = 5 и максимальная скорость = 100 об / мин

if (speed_! = Map (val, 0, 1023, 5, 100))

{// если скорость была изменена

speed_ = map (val, 0, 1023, 5, 100);

// установить скорость мотора

шаговый.setSpeed ​​(скорость_);

}

// перемещаем шаговый двигатель

stepper.step (direction_);

}

// небольшая функция для удаления кнопок

bool debounce ()

{

byte count = 0;

for (byte i = 0; i <5; i ++) {

if (digitalRead (button) == 0)

count ++;

задержка (10);

}

if (count> 2) return 1;

иначе вернуть 0;

}

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

, и это видео показывает имитацию Proteus

Arduino + шаговый двигатель Моделирование Proteus: Ссылка для скачивания файла моделирования
находится ниже.
Arduino + Биполярный шаговый двигатель

.Руководство по шаговым двигателям

— Rikipedia Embedded Wiki

Мир Рики Переключить боковую панель
    • Сообщество
      • Обсуждение Форум
      • Разместить вопрос
      • Новые сообщения на форуме
    • Учебники
      • Главная страница
      • Категории
      • Недавние изменения
    • Загрузки
      • Проект Загрузок
      • Библиотеки
      • Примеры кодов
      • Электронные книги и руководства
      • Бесплатное программное обеспечение
      • Все загрузки
    • Подробнее
      • Распиновка ЖК-дисплея
      • Реактивный двигатель
      • Игры
      • Обо мне
      • участников
      • Ссылки
      • RSS-каналы
      • Гостевая книга
      • Карта сайта
    • Домой
    • Сообщество
      • Дискуссионный форум
      • Задайте вопрос
      • Новые сообщения на форуме
    • Учебники
      • Главная страница
      • Категории
      • Недавние изменения
    • Загрузки
      • Загрузки проекта
      • Библиотеки
      • Примеры кодов
      • Электронные книги и руководства
    .

    Шаговый двигатель: униполярный / биполярный, 200 шагов / оборот, 42 × 48 мм, 4 В, 1,2 А / фаза

    Ответ на этот вопрос зависит от типа вашего шагового двигателя. При работе с шаговыми двигателями вы обычно будете сталкиваться с двумя типами: униполярными шаговыми двигателями и биполярными шаговыми двигателями. Униполярные двигатели имеют две обмотки на фазу, что позволяет реверсировать магнитное поле без необходимости менять направление тока в катушке, что упрощает управление униполярными двигателями по сравнению с биполярными шаговыми двигателями.Недостатком является то, что только половина фазы проходит ток в любой момент времени, что снижает крутящий момент, который вы можете получить от шагового двигателя. Однако, если у вас есть соответствующая схема управления, вы можете увеличить крутящий момент шагового двигателя, используя униполярный шаговый двигатель в качестве биполярного шагового двигателя (примечание: это возможно только с 6- или 8-выводными униполярными шаговыми двигателями, но не с 5- свинцовые униполярные шаговые двигатели). Униполярные шаговые двигатели обычно имеют пять, шесть или восемь выводов.

    Биполярные шаговые двигатели имеют по одной катушке на фазу и требуют более сложной схемы управления (обычно H-мост для каждой фазы).A4988 имеет схему, необходимую для управления биполярным шаговым двигателем. Биполярные шаговые двигатели обычно имеют четыре вывода, по два на каждую катушку.

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

    На приведенной выше диаграмме показан стандартный биполярный шаговый двигатель. Для управления этим с помощью A4988 подключите шаговые выводы A, и C к выходам платы 1A и 1B , соответственно, а шаговые выводы B и D к выводам платы 2A и 2B соответственно.Обратите внимание, что если вам случится поменять местами провода, подключенные к какой-либо катушке, шаговый двигатель будет вращаться в противоположном направлении, и если вы случайно соедините провода от разных катушек, двигатель будет заметно нестабильным, когда вы попытаетесь ступить. это, если оно вообще движется. Дополнительную информацию см. В таблице данных A4988.

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

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

    , вы можете подключить его к A4988 как биполярный шаговый двигатель, выполнив биполярные соединения, описанные в разделе выше, и оставив шаговые выводы A ’ и B’ отключенными. Эти выводы являются центральными отводами к двум катушкам и не используются для биполярного режима.

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

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

    у вас есть несколько вариантов подключения. У восьмиполюсного униполярного шагового двигателя по две катушки на фазу, и он дает вам доступ ко всем выводам катушки (в шестиконтактном униполярном двигателе вывод A ‘внутренне подключен к C’, а вывод B ‘внутренне подключен к D ‘). При работе с биполярным шаговым двигателем у вас есть возможность использовать две катушки для каждой фазы параллельно или последовательно. При их параллельном использовании вы уменьшаете индуктивность катушки, что может привести к повышению производительности, если у вас есть возможность подавать больший ток.Однако, поскольку A4988 активно ограничивает выходной ток по фазе, вы получите только половину фазного тока, протекающего через каждую из двух параллельных катушек. При их последовательном использовании это похоже на одну катушку на фазу (например, в биполярных шаговых двигателях с четырьмя выводами или однополярных шаговых двигателях с шестью выводами, используемых в качестве биполярных шаговых двигателей). Мы рекомендуем использовать последовательное соединение.

    Для параллельного соединения фазовых катушек подключите выводы шагового двигателя A, и C ‘ к выходу платы 1A , выводы шагового двигателя A’ и C к выходу платы 1B , выводы шагового двигателя B и D ‘ к выходу платы 2A , и шаговые выводы B’ и D к выходу платы 2B .

    Для последовательного соединения фазных катушек подключите шаговый вывод A ’ к C’ и шаговый вывод B ’ к D’ . Отводы шагового двигателя A, , C, , B, и D должны быть подключены к приводу шагового двигателя как обычно для биполярного шагового двигателя (см. Соединения биполярного шагового двигателя выше).

    .

    Шаговый двигатель: биполярный, 200 шагов / оборот, 28 × 32 мм, 3,8 В, 0,67 А / фаза

    Ответ на этот вопрос зависит от типа вашего шагового двигателя. При работе с шаговыми двигателями вы обычно будете сталкиваться с двумя типами: униполярными шаговыми двигателями и биполярными шаговыми двигателями. Униполярные двигатели имеют две обмотки на фазу, что позволяет реверсировать магнитное поле без необходимости менять направление тока в катушке, что упрощает управление униполярными двигателями по сравнению с биполярными шаговыми двигателями.Недостатком является то, что только половина фазы проходит ток в любой момент времени, что снижает крутящий момент, который вы можете получить от шагового двигателя. Однако, если у вас есть соответствующая схема управления, вы можете увеличить крутящий момент шагового двигателя, используя униполярный шаговый двигатель в качестве биполярного шагового двигателя (примечание: это возможно только с 6- или 8-выводными униполярными шаговыми двигателями, но не с 5- свинцовые униполярные шаговые двигатели). Униполярные шаговые двигатели обычно имеют пять, шесть или восемь выводов.

    Биполярные шаговые двигатели имеют по одной катушке на фазу и требуют более сложной схемы управления (обычно H-мост для каждой фазы).A4988 имеет схему, необходимую для управления биполярным шаговым двигателем. Биполярные шаговые двигатели обычно имеют четыре вывода, по два на каждую катушку.

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

    На приведенной выше диаграмме показан стандартный биполярный шаговый двигатель. Для управления этим с помощью A4988 подключите шаговые выводы A, и C к выходам платы 1A и 1B , соответственно, а шаговые выводы B и D к выводам платы 2A и 2B соответственно.Обратите внимание, что если вам случится поменять местами провода, подключенные к какой-либо катушке, шаговый двигатель будет вращаться в противоположном направлении, и если вы случайно соедините провода от разных катушек, двигатель будет заметно нестабильным, когда вы попытаетесь ступить. это, если оно вообще движется. Дополнительную информацию см. В таблице данных A4988.

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

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

    , вы можете подключить его к A4988 как биполярный шаговый двигатель, выполнив биполярные соединения, описанные в разделе выше, и оставив шаговые выводы A ’ и B’ отключенными. Эти выводы являются центральными отводами к двум катушкам и не используются для биполярного режима.

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

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

    у вас есть несколько вариантов подключения. У восьмиполюсного униполярного шагового двигателя по две катушки на фазу, и он дает вам доступ ко всем выводам катушки (в шестиконтактном униполярном двигателе вывод A ‘внутренне подключен к C’, а вывод B ‘внутренне подключен к D ‘). При работе с биполярным шаговым двигателем у вас есть возможность использовать две катушки для каждой фазы параллельно или последовательно. При их параллельном использовании вы уменьшаете индуктивность катушки, что может привести к повышению производительности, если у вас есть возможность подавать больший ток.Однако, поскольку A4988 активно ограничивает выходной ток по фазе, вы получите только половину фазного тока, протекающего через каждую из двух параллельных катушек. При их последовательном использовании это похоже на одну катушку на фазу (например, в биполярных шаговых двигателях с четырьмя выводами или однополярных шаговых двигателях с шестью выводами, используемых в качестве биполярных шаговых двигателей). Мы рекомендуем использовать последовательное соединение.

    Для параллельного соединения фазовых катушек подключите выводы шагового двигателя A, и C ‘ к выходу платы 1A , выводы шагового двигателя A’ и C к выходу платы 1B , выводы шагового двигателя B и D ‘ к выходу платы 2A , и шаговые выводы B’ и D к выходу платы 2B .

    Для последовательного соединения фазных катушек подключите шаговый вывод A ’ к C’ и шаговый вывод B ’ к D’ . Отводы шагового двигателя A, , C, , B, и D должны быть подключены к приводу шагового двигателя как обычно для биполярного шагового двигателя (см. Соединения биполярного шагового двигателя выше).

    .

    Добавить комментарий

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