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

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

УПРАВЛЕНИЕ ШАГОВЫМ ДВИГАТЕЛЕМ

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

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

Типы шаговых двигателей

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

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

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

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

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

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

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

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

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

Подключение шаговых двигателей

Разные шаговые двигатели могут иметь разное количество проводов, как правило, 4, 5, 6, или 8. 4-х проводные линии могут поддержать только биполярные шаговые двигатели, поскольку у них нет центрального провода.

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

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

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

Полный шаг — такой привод всегда имеет два электромагнита. Для вращения вала, один из электромагнитов выключается и далее электромагнит включен, вызывая вращение вала на 1/4 зуба (по крайней мере для гибридных шаговых двигателей). Этот стиль имеет самый сильный момент вращения, но и самый большой размер шага.

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

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

Схема подключения шаговых двигателей

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

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

Электроника для всех

Блог о электронике

Шаговый двигатель это, как понятно из его названия, двигатель который вращается дискретными перемещениями. Достигается это за счет хитрой формы ротора и двух (реже четырех) обмоток. В результате чего, путем чередования направления напряжения в обмотках можно добиться того, что ротор будет по очереди занимать фиксированные значения.
В среднем, у шагового двигателя на один оборот вала, приходится около ста шагов. Но это сильно зависит от модели двигателя, а также от его конструкции. Кроме того, существуют полушаговый и микрошаговый режим, когда на обмотки двигателя подают ШИМованное напряжение, заставляющее ротор встать между шагами в равновесном состоянии, которое поддерживается разным уровнем напряжения на обмотках. Эти ухищрения резко улучшают точность, скорость и бесшумность работы, но снижается момент и сильно увеличивается сложность управляющей программы — надо ведь расчитывать напряжения для каждого шага.

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

Типы шаговых двигателей
Если не углубляться во внутреннюю конструкцию, число шагов и прочие тонкости, то с пользовательской точки зрения существует три типа:

  • Биполярный — имеет четыре выхода, содержит в себе две обмотки.
  • Униполярный — имеет шесть выходов. Содержит в себе две обмотки, но каждая обмотка имеет отвод из середины.
  • Четырехобмоточный — имеет четыре независимые обмотки. По сути дела представляет собой тот же униполярник, только обмотки его разделены. Вживую не встречал, только в книжках.

Униполярный отличается от биполярного только тем, что ему нужна куда более простая схема управления, а еще у него значительно слабее момент. Так как работает он только половинами обмоток. НО! Если оторвать нафиг средний вывод униполярника, то мы получим обычный биполярный. Определить какой из выводов средний не сложно, достаточно прозвонить сопротивление тестером. От среднего до крайних сопротивление будет равно ровно половине сопротивления между крайних выводов. Так что если тебе достался униполярник, а схема подключения для биполярного, то не парься и отрывай средний провод.

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

Схема управления шаговым двигателем
Я разжился контроллерами шаговиков L297 и мощным сдвоенным мостом L298N.

Post navigation

201 thoughts on “Управление шаговым двигателем”

А можешь посоветовать шаговик из тех, которые сейчас можно купить?
Я не знаю как у всех, но я д аже двухдюймовые флопики повыкидывал лет пять назад, а 5-ти дюймовых и в помине не было.

По продаваемым не в курсе. В нашей деревне их в продаже нету, а что там в Московии я даже не знаю.

Оппа, теперь самое время разбираться, что за шаговики у меня имеются по результатам годового потрошения CD-DVD ROM’ов. 🙂

А в сидюках/дивдюках вроде бы стоят обычные коллекторники+синхронный на шпиндель. Хотя могут быть и шаговики, но я не встречал ни разу.

Шаговики во многих CD/DVD приводах стоят — для таскания каретки с лазером (у меня минимум 3 таких экземпляра валяются). Но конструкция двигателя — как в трехдюймовых дисководах, для практического применения неудачная.

ну когда я расотрошил сиди ром там был безколлекторник + еще какойто на шпиндель
для безколлекторника я думаю применение в моделизме
http://forum.rcdesign.ru/index.php?showtopic=12183&st=560
может пригодится кому

http://forum.rcdesign.ru/index.php?showtopic=12183&st=560
может чем пригодится там модельный регултор хода
может управлять сдромным безколлекторником

работал с шаговыми движками на своей фирме.
ещё с нашими совеццкими и руссийскими.

сколько раз коротыш верещал на источниках — не счесть ) единственное оправдание — я про них ещё тогда ничего не знал и доков не имел. работал методом тыка…

всё хорошо, но нету обратной связи.

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

. в смысле от постоянных замыкани? Как ты умудрялся его коротнуть? Одновременным замыканием ключей верхнего и нижнего плеча? Так там Dead Time надо ставить!

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

Долгая подача напруги на обмотки это его нормальный рабочий режим. Главное чтобы напряжение было номинальным.

Полезно, спасибо. Мне в свое время довелось раскурочить 8″ дисковод. Два шаговика лежат дожидаются своего часа. Так, что информация может пригодиться.

У меня этих дисководов полтора десятка штук!

Есть интересная статья по использованию шаговых двигателей
Журнал Современная электроника Октябрь 2004 г. стр. 46-47
Автор: Олег Пушкарев, Омск, конструкция на базе PIC16F84 и
драйвера — ULN2003A. (WWW.SOEL.RU)
Журнал очень рульный, советую почитать, статьи высылают
по почте, по запросу или подписка (в том числе бесплатная).

Еще одна задача — управление двигателем
постоянного тока на 24 в (12В), реверс,
управление скоростью. Есть буржуйская схема,
но без регулятора, могу тиснуть, схема из
стриммера, реверс-технология схемы.

кто знаком с драйвером шины ULN2804a b ULN2004a , какая разници между ними.

Кажется, один для КМОП, другой — для ТТЛ. Схема отличается только номиналом сопротивления от входного штырька до базы транзистора. В одном случае — 10ком (для КМОП), в другом — кажется, 1,5 ком, точно не помню. Ну, и входные уровни соответственно разные. В остальном — одинаково. Я сам года три назад выбирал, какие брать. А использую все же чаще ULN2003 (привычка, чтоли)…

У меня есть движок от древнего лазерного принтера. Двигатель фирмы CANON PM60-H418Z21B можно ли запустить таку вещь? Торчат из него по 3 провода с каждой обмотки. P.S. С шаговиками я делов не имел пока, но очень интересно.

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

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

Шаговые двигатели используют для управления положением чего-либо, или для вращения рабочего узла с заданной скорости и на заданный угол. Такие особенности сделали возможным его применение в робототехнике, станках с числовым программным управлением (ЧПУ), и других системах автоматизации. В этой статье мы рассмотрим ряд вопросов связанных с устройством шаговых двигателей и способами их управления с помощью микроконтроллера Arduino.

Шаговый двигатель отличия от обычного

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

В принципе, таких базовых сведений достаточно для понимания общей картины работы электрических двигателей. Однако на самом деле промышленность производит различные варианты электродвигателя, среди которых:

1. Асинхронный двигатель с короткозамкнутым или с фазным ротором.

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

3. Двигатель постоянного тока.

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

5. Бесщеточные двигатели постоянного тока (BLDC).

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

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

Определение

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

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

Шаговый двигатель иногда называют двигателем с конечным количеством положений ротора. Звучит не совсем понятно, давайте разберемся. Представим обычный двигатель – положение его ротора никак не фиксируется, то есть он просто вращается пока подключено питание, а когда оно отключается, то останавливается через какое-то время, зависящее от его инерции. Положений ротора может быть сколько угодно много, а отличаться они могут на мельчайшие доли градуса.

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

Конструкция

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

Поэтому выделяют магнитотвердые роторы (они же на постоянных магнитах) и магнитомягкие (реактивные) роторы, кроме них есть и гибридные роторы.

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

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

Виды шаговых двигателей ШД по конструкции обмоток делят на три основных группы по схеме подключения обмоток:

3. С четырьмя обмотками.

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

Униполярные напоминают соединение обмоток по схеме звезды. Другими словами, у вас есть 5 выводов – 4 из них это концы обмоток, а 1 – точка соединения всех обмоток.

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

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

Режимы управления

Различают 4 основных режима управления шаговым двигателем:

1. Волновое управление.

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

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

Полношаговое управление является наиболее часто используемым. Здесь напряжение подается не на одну обмотку, а на две сразу. Если обмотки соединены параллельно – то ток удваивается, а если последовательно, то удваивается напряжение питания соответственно. С одной стороны в таком методе управления двигатель потребляет больше энергии, с другой – крутящий момент 100%, в отличие от предыдущего.

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

Стоит учесть, что момент на валу плавает от 50 до 100% в зависимости от того 1 или 2 две обмотки задействованы в данный момент.

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

Где взять шаговый двигатель

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

1. Принтера. Шаговые двигатели могут стоять на вращении вала подачи бумаги (но может быть и двигатель постоянного тока с датчиком перемещения).

2. Сканеры и МФУ. В сканерах часто устанавливают шаговый двигатель и механическую часть, направляющую вдоль которой ходит каретка, эти детали также могут стать полезны при разработке самодельного ЧПУ станка.

3. CD и DVD приводы. В них также можно достать и штанги и винтовые валы для самоделок и различных ЧПУ.

4. Floppy-дисководы. В дискетниках также есть шаговые двигатели, особо ценятся флопики формата 5.25”.

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

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

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

1. Платы на базе L293D. Их множество, одна из таких продается под отечественной маркой «Амперка» под название Troyka Stepper, пример его использования в реальном проекте приведен на видео ниже. Преимущество конкретно этой платы в том, что на ней расположены микросхемы логики которые позволяют сократить количество используемых для управления пинов.

Сама по себе микросхема работает под напряжение 4.5-36В и выдает ток до 600мА-1А в зависимости от корпуса ИМС.

2. Драйвер на базе A4988. Питается напряжением до 35В, выдерживает ток до 1А без радиатора, а с радиатором до 2А. Может управлять двигателем, как целыми шагами, так и частями – от 1/16 шага до 1 шага, всего 5 вариантов. Содержит два H-моста. С помощью подстроечного резистора (видно на правом фото) можно задавать выходной ток.

Размер шага задается сигналами на входах MS1, MS2, MS3.

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

3. Драйвер на базе ULN2003 работает с двигателями на 5 и на 12В и выдаёт ток до 500 мА. На большинстве плат расположены 4 светодиода индицирующих работу каждого из каналов.

Также на плате вы можете видеть клеммную колодку для подключения двигателей, кстати, многие из них продаются именно с таким разъёмом. Примером такого двигателя является 5В модель – 28BYJ-48.

И это не все варианты драйверов для шаговых двигателей, на самом деле их еще больше.

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

В большинстве случаев нужно использовать микроконтроллер в паре с драйвером для шагового двигателя. Давайте рассмотрим схему подключения и примеры программного кода. Рассмотрим подключение на базе последнего приведенного драйвера – ULN2003 к плате Arduino. И так у него есть 4 входа, они подписаны, как IN1, IN2 и т.д. Их нужно соединить с цифровыми пинам платы ардуино, а к драйверу подсоединить моторчик как показано на рисунке ниже.

Далее в зависимости от способа управления вы должны подавать на входы 1 или 0 с этих пинов включая 1 или 2 обмотки в нужно последовательности. Код программы полношагового управления выглядит примерно так:

Управление шаговым двигателем с помощью Arduino

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

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

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

Но есть ещё один из распространенных типов двигателей — это шаговые электродвигатели.

Вы могли их встречать, если разбирали CD-DVD привода, жёсткие диски, принтеры или другие электронные устройства, в механической части которых нужно чётко контролировать обороты, перемещения или другие необходимые кинематические движения.

Вот так выглядит шаговый электродвигатель с винтовым валом из оптического привода:

Как видно — здесь уже больше, чем 2 провода и напрямую подключить такой мотор к источнику питания просто так не получиться из-за совсем другой конструкции самого двигателя. Если для нашего первого моторчика достаточно было подать «+» и «-» на соответственные клемы и он начинал вращаться, то для шагового электродвигателя нужно подавать цифровые электронные сигналы управления, которые будут сообщать двигателю на сколько и в какую сторону ему необходимо вращаться. Это возможно осуществить с помощью устройства, которое будет генерировать и отправлять эти сигналы на драйвер, а он, в свою очередь, напрямую управлять обмотками двигателя.

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

Я взял мотор формата Nema 17 — это гибридный шаговый двигатель, который часто встречается в 3Д принтерах, ЧПУ системах, робототехнике и т.д.

Фото двигателя в разрезе:

Драйвер на микросхеме TB6600 — это довольно неплохой контроллер, который можно использовать с двигателями до 4.5 А, 50 В. Для домашних 3Д принтеров и ЧПУ систем его полностью достаточно.

Чтобы драйвер работал, необходим внешний источник питания с напряжением 8-50 В (рекомендуется 36 В). Именно с него наш двигатель будет получать энергию для своей работы. А логические сигналы Dir — направление вращения и Pulse — сигнал шага, драйвер будет получать от ардуино.

У данного двигателя 4 обмотки: A+, A-, B+, B-, их нужно соединить с соответствующими выходами на плате драйвера.

Для управления шаговым двигателем можно использовать различные библиотеки, которые упрощают жизнь, если необходимо как-то динамически управлять двигателем, например «AccelStepper» и тому подобные. Также есть различные программные комплексы для управления 3Д принтерами или ЧПУ станками.

Мы же рассмотрим простой пример вращения двигателя с постоянной скоростью, который не сложно будет повторить всем желающим. Также, так ещё удобно проверять общее состояние двигателя.

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

Примерно так всё работает:

P.S. Сильно в теорию я не вдавался, потому что на это нужен не один пост, да и не всем она понравится 🙂

P.S. Сильно в теорию я не вдавался, потому что на это нужен не один пост, да и не всем она понравится 🙂

Почему хотя бы не рассказать об отличиях униполярного от биполярного двигателя? Почему не привести схему модуля(хотя бы из даташита на микросхему)?
Ладно упущен режим микрошага, но основу то можно было скопипастить написать.
Зачем было использовать ардуину? Много нагляднее было бы пару кнопок повесить.

Спасибо за совет, в будущем буду стараться поместить всё в один пост.

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

Не совсем понял вопрос

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

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

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

В чем может быть проблема?

а будет электрическая схема? =) мотор гудит когда не крутится?

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

@BesttseB , проверь код, а именно повнимательнее, где задается частота импульсов. Возможно слишком большая частота импульсов, движок просто ахреневает. Попробуй отдельно протетстить шаговик+МК+твой код, без обвеса. У меня было, что движок сначала разгонялся, потом из-за большой частоты стопорился и когда уменьшалась, то он снова продолжал крутиться.

Автор показывает, как быстро и равномерно крутится шаговый двигатель. Ясно. Понятно. Тема раскрыта на 10 из 10.

а обязательно покупать эту здоровую мандулу? DRV8825 прекрасно справляется с шаговиками до NEMA17 включительно и стоит в несколько раз дешевле + под них на ардуины есть такиеже дешманские шилды — например ардуино 2560 + шилд + 5 драйверов = 1050рублей на али

4988 не то, чтобы хуже, но в DRV8825 можно микрошаг поменьше поставить(актуально для станков с ременнойзубчатой передачей и 3D принтеров) и, как мне кажется, на DRV8825 шаговики звучат благороднее =)

Не конечно, для каждой цели целесообразен тот или иной драйвер. Просто у меня был в наличии только этого формата (остался после ЧПУ системы: https://youtu.be/N3xBpIMORf4 )

Точно, две обмотки А и Б, соответственно + и — на каждой обмотке.

Спасибо, что нашёл ошибку, она как-то автоматически получилась — вижу четыре буквы на плате — пишу, что четыре обмотки)

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

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

т.е., допустим, мне надо,чтобы после нажатия кнопки на компе, двигатель совершал серию поворотов. как это программируется?

Serial гугли. С компа посылаешь строку на ардуину, она разбирает её и выполняет команду по аргументам.

а с компа в зависимости от языка просто посылаешь в серийный порт строку.

Аргументы придумать не сложно.

Можно заморочиться с wi-fi или ethernet shield, там поднять веб-сервер и из браузера делать запросы. Например, NodeMCU умеет из коробки это, т.к. на ней встроен в-ф

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

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

Похоже, этим драйвером мотор от сидюка не запустишь — напряжение слишком высокое. У мотора +5в, а питание драйвера от 8 в начинается.

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

. ну т.е. у меня на одном таком движке было по маркировке до 38V и 3А максимальная подача (оптимальное 12V & 1.5A), где то около 30V&3A подавал. Как бы я не крепил это сверло, болтами, суперклеем, и тем и тем, эпоксидкой также вместе взятой и т.д. и т.п. в т.ч. и резал/сверлил это чертову маленькую ось, чтоб хоть как в неё вцепиться (по сути надо было его в таком режиме использовать весьма недолго, так что должно было быть норм), всё срывало! . если застревало хоть в мало-мальски не протачиваемом проёме, т.к. крутилось бешено, то даже небольшое торможение со временем всё равно давало срыв и приходилось монтажить заново. Да конечно я и искал напряжение оптимальное, но это либо получалось дико долгое сверление, которое добивало, либо срывало.

Вот как вы за такую ось цепляетесь нормально? . такая ж мелкая сволочь.

..Эпоксидка блин, ну ты даёшь)

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

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

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

Есть ещё один вариант — запрессовка шестерней.

Держит намертво, промышленный стандарт

Вот тут можно увидеть пример, показывают два стандарта установки шестерней на вал —

2)посадочное место (щлиц на валу)

Ну вот посадочное место само то, его мне по сути только и оставалось сделать, только надо будет, если начну опять такое делать, не напильником, а молотком квадратик с оси набить и потом уже болтами хвататься.

Но это хорошо, когда еще ось хоть как то нормально торчит, а есть у меня еще одно, даже для меня, исключение (вот там прям с кулак моторчики были) мелочь 2,5-3 см с осью на 1,2 в диаметре убийца до 50 вольт можно подрубать — это жесть! Я на обычные по 20 вольт выставляю и потом руки трясутся после них (ну бывает в руках держишь тестируешь, что будет если зажать шестеренку или еще что или тупо смотришь на его работу, зависнешь или любуешься или и то и то:D). А на того зверя дал 50 вольт, да у меня чуть зубы не повыпадали! 😀

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

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

К двигателям с нормальными осями обычно бывают цанги типа ERxx, напримем ER11 на шпиндели с валом 6мм

Шаговики как шпиндель использовать некорректно — у них крутящий момент сильно падает с увеличением скорости

ну увы ( я ж говорю, что было тогда под рукой

ну как сказать =) на 2500-3500 обмин его не хватает даже чтобы мотор без нагрузки крутить(если мы говорим про «обычные» шаговики)

Подключение шагового двигателя к Ардуино

Шаговый двигатель Arduino ► предназначен для перемещения объекта на заданное количество шагов вала. Рассмотрим устройство и схему подключения шагового двигателя.

Шаговый двигатель (stepper motor) предназначен для точного позиционирования или перемещения объекта на заданное количество шагов вала. Плата Arduino может управлять шаговым двигателем с помощью драйвера и библиотеки stepper.h или accelstepper.h. Рассмотрим принцип работы и схему подключения шагового двигателя к Arduino Uno / Nano, а также разберем скетч для управления шаговым мотором.

Принцип работы шагового двигателя

В зависимости от конструкции, сегодня применяются три вида шаговых двигателей: с постоянным магнитом, с переменным магнитным сопротивлением и гибридные двигатели. У двигателей с постоянным магнитом число шагов на один оборот вала доходит до 48, то есть один шаг соответствует повороту вала на 7,5°. Гибридные двигатели обеспечивают не меньше 400 шагов на один оборот (угол шага 0,9°).

Фото. Устройство шагового мотора в разрезе

Подсчитав количество сделанных шагов, можно определить точный угол поворота ротора. Таким образом, шаговый двигатель является сегодня идеальным приводом в 3D принтерах, станках с ЧПУ и в другом промышленном оборудовании. Это лишь краткий обзор устройства и принципа работы stepper motor, нас больше интересует, как осуществляется управление шаговым двигателем с помощью Ардуино.

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

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

Фото. Виды драйверов для управления шаговым двигателем

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

Схема подключения шагового двигателя 28BYJ-48 к Arduino Uno через драйвер ULN2003 изображена на рисунке ниже. Основные характеристики мотора 28BYJ-48: питание от 5 или 12 Вольт, 4-х фазный двигатель, угол шага 5,625°. Порты драйвера IN1 — IN4 подключаются к любым цифровым выводам платы Arduino Mega или Nano. Светодиоды на модуле служат для индикации включения катушек двигателя.

Как подключить шаговый двигатель к Ардуино

Для занятия нам понадобятся следующие детали:

  • плата Arduino Uno / Arduino Nano / Arduino Mega;
  • драйвер шагового двигателя ULN2003;
  • шаговый двигатель 28BYJ-48;
  • провода «папа-мама».

Схема подключения шагового двигателя к Arduino UNO

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

Скетч для управления шаговым двигателем

Пояснения к коду:

  1. вместо портов 8,9,10,11 можно использовать любые цифровые порты;
  2. время задержки в миллисекундах int dl = 5; можно изменять, чем меньше задержка в программе, тем быстрее будет вращаться вал мотора;
  3. алгоритм работы программы, представлен на следующей картинке.

Последовательность включения обмоток шагового мотора

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

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

Скетч для шагового двигателя на Ардуино (Stepper.h)

Пояснения к коду:

  1. вместо портов 8,9,10,11 можно использовать любые цифровые порты;
  2. библиотека Stepper.h имеет маленький функционал, поэтому подходит только для тестирования шагового двигателя и проверки подключения драйвера.

Скетч для шагового мотора с библиотекой AccelStepper.h

Пояснения к коду:

  1. библиотеку AccelStepper.h можно использовать при подключении шагового двигателя к Motor Shield L293D совместно с библиотекой AFMotor.h;
  2. в программе можно задавать не только максимальную скорость, но и ускорение и замедление вала шагового двигателя.

Описание команд библиотеки AccelStepper.h

AccelStepper mystepper(DRIVER, step, direction); // Шаговый двигатель, управляемый платой
AccelStepper mystepper(FULL2WIRE, pinA, pinB); // Шаговый двигатель, управляемый Н-мостом
AccelStepper mystepper(FULL4WIRE, pinA1, pinA2, pinB1, pinB2); // Униполярный двигатель

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

в Управление 0 28 Просмотров

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

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

Типы шаговых двигателей

Существуют три основных типа шаговых двигателей:

  1. Двигатель с постоянным магнитом
  2. Двигатель с переменным магнитным сопротивлением
  3. Гибридный двигатель

Шаговый двигатель с постоянными магнитами

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

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

Шаговый двигатель с переменным магнитным сопротивлением

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

Гибридный шаговый двигатель

Гибридный двигатель, на сегодняшний день, является самым популярным двигателем в промышленной сфере. Его название происходит от того, что он сочетает в себе принципы работы двух других типов двигателя (с постоянными магнитами и переменным магнитным сопротивлением). Большинство гибридных двигателей имеют две фазы.

Как работает гибридный двигатель

Работу гибридного шагового двигателя легко понять, глядя на очень простую модель, которая производит 12 шагов за один оборот.

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

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

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

Изменяя ток первой до второй обмотки (В), магнитное поле статора поворачивается на 90 градусов и притягивает новую пару полюсов ротора. В результате этого ротор поворачивается на 30 градусов, что соответствует полному шагу. Возвращение к первому набору обмоток статора, но с питанием обратной полярности, изменяет магнитное поле статора еще на 90 градусов, и ротор поворачивается на 30 градусов (С).

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

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

Режим полшага

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

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

Биполярные и униполярные шаговые двигатели

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

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

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

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

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

В качестве примера управления шаговым двигателем возьмем униполярный шаговый двигатель ШД-1ЕМ, имеющий характеристики: количество шагов — 200/об., ток обмотки – 0,5А, мощность — 12 Ватт.

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

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

Вывод 9 микросхемы ULN2003A подведен к источнику питания через стабилитрон, который защищает схему от ЭДС самоиндукции, появляющейся в момент выключения блока питания схемы. Управление шаговым двигателем производится с помощью компьютера через LPT порт при помощи программы:

Читать еще:  Лада 2109 Резонатор
Ссылка на основную публикацию
Adblock
detector