Подключение шагового двигателя к Ардуино (видео)
Микроконтроллеры и их сложные алгоритмы работы хороши лишь в тех случаях, когда они не только виртуально выполняют поставленные перед ними задачи, но и в состоянии управлять какими-то физическими процессами. Ведь сами посудите, какой смысл в пустых вычислениях, разве что жечь электричество и греть комнату.
Но это больше похоже на действия криптовалютчиков и безумцев, нас же интересует исключительно прагматический подход. Так вот, в сегодняшней статье мы поговорим о том, как сигналы с Ардуино преобразовать в управляющие сигналы для шагового двигателя. То есть, проще говоря, как подключить шаговый двигатель к Ардуино.
Начнем!
Для того чтобы все работала необходимо подключить Ардуино физически к двигателю, — это раз. И второе, это прошить Ардуино, чтобы все работала так, как нам надо, то есть как раз выполнялись те самые алгоритмы, про которые мы начинали наш разговор. Начнем с подключений.
Аппаратное подключение шагового двигателя к Ардуино
Собственно подключение будет впоследствии еще определяться и программно, так что скажем так На необходимо обеспечить питание для Ардуино и определиться с выходами для шагового двигателя. Так как в нашем шаговом двигателе 28byj-48 всего 4 обмотки, то и выхода будет 4. То есть мы будем по определенному плану, а еще вернее точнее в сторону вращения вала, питать обмотки одна за другой и тем самым двигатель будет вращаться.
Для того чтобы наш Ардуино не сгорел с шаговым двигателем обычно используется микросхема UNL 2003APG, блок — ключей на транзисторах Дарлингтона. По идее это блок, который позволяет работать с высокими токами обмотки не на прямую, а через транзисторы. Что сможет сберечь нашу Ардуинку от возможных поломок, то есть простого сгорания, от высоких и индукционных токов. Однако некоторые умельцы умудряются подключить шаговый двигатель к Ардуино и напрямую. Что не рекомендуем, но это работает.
Итак, в итоге взгляните на схему, на первый вариант.
Здесь X113647 и есть та самая плата, где установлен блок — ключей.
Заметьте, что питание обеспечивается именно для блока ключей мощным и отдельным источником. Само собой еще есть питание и для Ардуино, но не через Ардуино. То есть с Ардуино идут лишь управляющие сигналы на x113647, а силовые исполнительные сигналы формируются уже от платы x113647, которая запитана от источника питания.
Иногда питают плату x113647 сразу от Ардуино. В этом случае получается задействован штатный ардуиновский стабилизатор. Вроде как ничего страшного, но до поры до времени. Если двигатель работает урывками и если он не мощный.
В общем, вторая схема тоже имеет право на жизнь, но так скажем в случае периодического подключения двигателя, а не его постоянной работы. Смотрим.
Ну и самый варварски вариант, который тоже работает и о котором я говорил, так это подключение шагового двигателя напрямую к управляющим сигналам Ардуино, то есть вот так.
Сколько это все проработает известно одному богу, но так лучше не делайте!
Впрочем, теперь зато можно с полной уверенностью сказать, что мы до вас довели все варианты возможных подключений. Теперь переходим к скетчам под шаговый двигатель для Ардуино.
Программное обеспечение для подключения шагового двигателя к Ардуино
Здесь как и с подключением возможно несколько вариантов того, как же можно оживить наш шаговый двигатель через Ардуинку. Самое простое это выбрать любые 4 ножки и на них подавать сигналы. То есть сделать все максимально просто, без привлечения библиотек и всего такого. Будет вот такой код.
int in1 = 2; int in2 = 3; int in3 = 4; int in4 = 5; const int dl = 1000; void setup() { pinMode(in1, OUTPUT); pinMode(in2, OUTPUT); pinMode(in3, OUTPUT); pinMode(in4, OUTPUT); } void loop() { digitalWrite( in1, LOW ); digitalWrite( in2, LOW ); digitalWrite( in3, HIGH ); digitalWrite( in4, HIGH ); delay(dl); digitalWrite( in1, LOW ); digitalWrite( in2, LOW ); digitalWrite( in3, HIGH ); digitalWrite( in4, LOW ); delay(dl); digitalWrite( in1, LOW ); digitalWrite( in2, HIGH ); digitalWrite( in3, HIGH ); digitalWrite( in4, LOW ); delay(dl); digitalWrite( in1, HIGH ); digitalWrite( in2, HIGH ); digitalWrite( in3, LOW ); digitalWrite( in4, LOW ); delay(dl); digitalWrite( in1, HIGH ); digitalWrite( in2, LOW ); digitalWrite( in3, LOW ); digitalWrite( in4, LOW ); delay(dl); digitalWrite( in1, HIGH ); digitalWrite( in2, LOW ); digitalWrite( in3, LOW ); digitalWrite( in4, HIGH ); delay(dl); digitalWrite( in1, LOW ); digitalWrite( in2, LOW ); digitalWrite( in3, LOW ); digitalWrite( in4, HIGH ); delay(dl); }
Собственно его описывать то особо нечего. По порядку подается напряжение на выбранные ножки (2,3,4,5), при этом для dl можно задать другое время от 1 и выше, в этом случае изменить скорость вращения.
Второй же вариант с программами подразумевает использование библиотеки.
Библиотека эта не та, куда мы привыкли ходить за книжками, а можно сказать некое программное облако, которое содержит в себе определенные режимы работы для определенных устройств. В частности для нашего шагового двигателя.
Так вот, чтобы менять режимы работа оперативно, то есть скажем скорость вращения или направление, здесь достаточно будет поменять 1 строчку или цифру, а не переписывать почти все, как в первом примере. Но здесь эту библиотеку еще надо будет установить. Фактически вы просто скачиваете папку у нас ЗДЕСЬ (архив) для шагового двигателя, разархивируете его и скинете на ваш компьютер где у вас стоит программа Arduino.
В моем случае это — C:\Program Files (x86)\Arduino\libraries\Stepper
Собственно все, у вас появиться теперь возможность перейти в примеры, потом в stepper и вы можете выбрать готовый скетч. Мы даже приводить скетч не будем, так как он все равно не будет работать без библиотеки, а при ее установке все примеры у вас появятся сами собой.
Собственно всю эту информацию можно считать полной. И если вы все выполните, то ваш шаговый двигатель оживет.
Возможные проблемы при подключении шагового двигателя к Ардуино
1 Проблема.
Если при заливке скетча выскочет ошибка типа Неверная библиотека найдена в C:\Program Files (x86)\Arduino\libraries\biblioteka-i-primery-stepper_28byj-stepper_28byj: C:\Program Files (x86)\Arduino\libraries\biblioteka-i-primery-stepper_28byj-stepper_28byj То у вас значит не установлена библиотека. 2 Проблема
Микросхема UNL 2003APG вполне может накрыться, если вы перепутаете полярность при питании. Если она накроется, то светодиоды на плате x113647 перестанут мигать в определенной последовательности и двигатель может немного подергиваться, но не будет вращаться.
Придется менять микросхему, не зря она установлена (как правило) в съемные колодки. Видимо у нее это бывает часто.
о том, как подключить шаговый двигатель к Ардуино
Источник: http://xn-----7kcglddctzgerobebivoffrddel5x.xn--p1ai/kommunikatsii/elektronika/arduino/888-podklyuchenie-shagovogo-dvigatelya-k-arduino
Шаговые двигатели: виды, принцип работы, система управления
Шаговые двигатели широко используются в бытовых приборах, транспортных средствах, фрезерных и шлифовальных станках и других производственных механизмах. Устройство представляет собой движок постоянного тока, один оборот которого разделен на несколько одинаковых шагов (это обеспечивается благодаря контроллеру). Главное его отличие от моторов других типов – отсутствие щеточного механизма. Шаговый двигатель оснащен блоком управления (приборной панелью), передатчиками и сигнализаторами.
Как работает шаговый электродвигатель
Зная принцип работы шагового двигателя, вы сможете самостоятельно установить его или произвести ремонт. Он функционирует следующим образом:
- После подачи напряжения на клеммы начинается непрерывное вращение специальных щеток. Входные импульсы устанавливают ведущий вал в положение, которое заранее определено.
- Под воздействием импульсов вал перемещается под фиксированным углом.
- Внешняя цепь управления, чаще всего представленная микроконтроллером, возбуждает электромагниты зубчатого типа. Один из них (тот, к которому приложена энергия) притягивает к себе зубья шестерни, вследствие чего вал движка делает поворот.
- Будучи выровнены по отношению к ведущему электромагниту, остальные магниты смещаются по направлению к следующей магнитной детали.
- Вращение шестеренки обеспечивается отключением первого электромагнита и включением следующего.
- Шестеренка выравнивается по отношению к предыдущему колесу, после чего весь процесс повторяется столько раз, сколько необходимо.
Данные вращения являются постоянным шагом. Для определения скорости мотора нужно подсчитать количество шагов, требуемых для его полного оборота. Точность работы обеспечивается благодаря микропроцессорным системам управления шаговых двигателей.
Виды шаговых двигателей
Существует несколько разных моделей шаговых двигателей. Если конструкция устройства предусматривает наличие постоянного магнита, принцип работы основан на притяжении или отталкивании статором и ротором электромагнитного мотора. В переменно-шаговом движке ротор изготавливается из железа.
Минимально допустимое отталкивание в нем происходит при наименьшем зазоре, что обеспечивает притяжение точек ротора к полюсам магнитного статора. В механизмах гибридного типа оба вышеприведенных принципа сочетаются и дополняют друг друга.
Из-за сложности конструкции и изготовления такие приборы стоят дороже, чем остальные модели.
Чаще всего в быту и на производстве применяются двухфазные шаговые двигатели. В зависимости от типа обмотки электромагнитных катушек они подразделяются на:
Механизмы первого типа оснащены одной обмоткой. Каждая фаза определяется центральным магнитным краном. При включении определенной секции обмотки обеспечивается нужное направление магнитного поля.
Такая конструкция предусматривает работу магнитного полюса без дополнительного переключения, что обеспечивает предельно простую коммутацию цепи, равно как и направления тока. Для работы движка (с учетом фазного переключения) обычно достаточно трех проводов на фазу и шести для выходного сигнала.
Микроконтроллер используется для активирования транзистора в нужной последовательности (она определяется программой).
Для подключения обмоток соединительные провода должны прикасаться к постоянным магнитам двигателя. При соединении клемм катушки вал проворачивается с трудом. Поскольку общий провод длиннее, чем провод, соединяющий катушки, сопротивление между торцами проводов и торцами катушек в два раза больше сопротивления между торцом катушки и общим проводом.
В механизмах второго типа есть только одна фазовая обмотка. Управляющая схема такого движка обычно сложнее, так как ток в обмотку поступает при помощи магнитного полюса переломным образом. Два провода на фазу не являются общими.
Трехфазный шаговый двигатель устанавливается на фрезерных станках с ЧПУ, запускаемых с компьютера, и транспортных средствах, в которых используется дроссельная заслонка.
Подключение шагового двигателя
Выбор схемы подключения шагового двигателя зависит от:
- количества проводов в приводе;
- способа запуска механизма.
Существующие модели движков имеют 4, 5, 6 или 8 проводов. Прибор с четырьмя проводами можно подключать только к биполярным устройствам. Он оснащен двумя фазными обмотками, каждая из которых имеет два провода. Для пошагового подключения драйвера необходимо определить пары проводов с непрерывной связью с помощью метра.
В механизме с шестью проводами каждая обмотка имеет два провода и центральный кран. Движки этой модели характеризуются высокой мощностью и подключаются как к биполярным, так и к однополярным исполнительным устройствам. В первом случае используется один центр-кран каждой обмотки и один конец провода. Во втором случае используются все шесть проводов. Разделение провода осуществляется с помощью измерительного прибора.
Отличие пятипроводного мотора от шестипроводной модели заключается в том, что соединение центральных клемм представляет собой сплошной кабель, который выходит к центральному проводу.
Поскольку отделение одной обмотки от другой без разрывов не представляется возможным, необходимо определить центр провода, после чего соединять его с другими проводниками. Это будет самым безопасным и максимально эффективным решением.
Затем движок подключается к сети и проводится проверка его работоспособности.
Для успешной эксплуатации механизма нужно иметь в виду следующие нюансы:
- Номинальное напряжение производится первичной обмоткой при постоянном токе.
- Изменение начальной скорости крутящего момента прямо пропорционально изменению тока.
- Скорость понижения линейного момента на последующих высоких скоростях зависит от индуктивности обмоток и схемы привода.
Благодаря высокой степени защиты шаговые двигатели успешно работают в тяжелых условиях.
Источник: https://www.szemo.ru/press-tsentr/article/shagovye-dvigateli-vidy-printsip-raboty-sistema-upravleniya/
Как работают шаговые двигатели
Прежде всего, шаговый двигатель — это двигатель. Это означает, что он преобразует электрическую энергию в механическую. Основное отличие между ним и всеми остальными типами двигателей состоит в способе, благодаря которому происходит вращение. В отличие от других моторов, шаговые двигатели вращаются НЕ непрерывно! Вместо этого, они вращаются шагами (отсюда и их название). Каждый шаг представляет собой часть полного оборота.
Эта часть зависит, в основном, от механического устройства мотора и от выбранного способа управления им. Шаговые двигатели также различаются способами питания. В отличие от двигателей переменного или постоянного тока, обычно они управляются импульсами. Каждый импульс преобразуется в градус, на который происходит вращение. Например, 1.8º шаговый двигатель, поворачивает свой вал на 1.8° при каждом поступающем импульсе.
Часто, из-за этой характеристики, шаговые двигатели еще называют цифровыми.
Основы работы шагового двигателя
Как и все моторы, шаговые двигатели состоят из статора и ротора. На роторе установлены постоянные магниты, а в состав статора входят катушки (обмотки). Шаговый двигатель, в общем случае, выглядит следующим образом:
Здесь мы видим 4 обмотки, расположенные под углом 90° по-отношению друг к другу, размещенные на статоре. Различия в способах подключения обмоток в конечном счете определяют тип подключения шагового двигателя. На рисунке выше, обмотки не соединяются вместе.
Мотор по такой схеме имеет шаг поворота равный 90°. Обмотки задействуются по кругу — одна за другой. Направление вращения вала определяется порядком, в котором задействуются обмотки. Ниже показана работа такого мотора. Ток через обмотки протекает с интервалом в 1 секунду.
Вал двигателя поворачивается на 90° каждый раз, когда через катушку протекает ток.
Режимы управления
Теперь рассмотрим различные способы подачи тока на обмотки и увидим, как в результате вращается вал мотора.
Волновое управление или полношаговое управление одной обмоткой
Этот способ описан выше и называется волновым управлением одной обмоткой. Это означает, что только через одну обмотку протекает электрический ток. Этот способ используется редко. В основном, к нему прибегают в целях снижения энергопотребления. Такой метод позволяет получить менее половины вращающего момента мотора, следовательно, нагрузка мотора не может быть значительной.
У такого мотора будет 4 шага на оборот, что является номинальным числом шагов.
Полношаговый режим управления
Вторым, и наиболее часто используемым методом, является полношаговый метод. Для реализации этого способа, напряжение на обмотки подается попарно. В зависимости от способа подключения обмоток (последовательно или параллельно), мотору потребуется двойное напряжение или двойной ток для работы по отношению к необходимым при возбуждении одной обмотки. В этом случае мотор будет выдавать 100% номинального вращающего момента.
Такой мотор имеет 4 шага на полный оборот, что и является номинальным числом шагов для него.
Полушаговый режим
Это очень интересный способ получить удвоенную точность системы позиционирования, не меняя при этом ничего в «железе»! Для реализации этого метода, все пары обмоток могут запитываться одновременно, в результате чего, ротор повернется на половину своего нормального шага. Этот метод может быть также реализован с использованием одной или двух обмоток. Ниже показано, как это работает.
Однообмоточный режим
Двухобмоточный режим
Используя этот метод, тот же самый мотор сможет дать удвоенное число шагов на оборот, что означает двойную точность для системы позиционирования. Например, этот мотор даст 8 шагов на оборот!
Режим микрошага
Микрошаговый режим наиболее часто применяемый способ управления шаговыми двигателями на сегодняшний день. Идея микрошага состоит в подаче на обмотки мотора питания не импульсами, а сигнала, по своей форме, напоминающего синусоиду.
Такой способ изменения положения при переходе от одного шага к другому позволяет получить более гладкое перемещение, делая шаговые моторы широко используемыми в таких приложениях как системы позиционирования в станках с ЧПУ. Кроме этого, рывки различных деталей, подключенных к мотору, также как и толчки самого мотора значительно снижаются.
В режиме микрошага, шаговый мотор может вращаться также плавно как и обычные двигатели постоянного тока.
Форма тока, протекающего через обмотку похожа на синусоиду. Также могут использоваться формы цифровых сигналов. Вот некоторые примеры:
Метод микрошага является в действительности способом питания мотора, а не методом управления обмотками. Следовательно, микрошаг можно использовать и при волновом управлении и в полношаговом режиме управления. Ниже продемонстрирована работа этого метода:
Хотя кажется, что в режиме микрошага шаги становятся больше, но, на самом деле, этого не происходит. Для повышения точности часто используются трапецевидные шестерни. Этот метод используется для обеспечения плавного движения.
Шаговый двигатель с постоянным магнитом
Ротор такого мотора несет постоянный магнит в форме диска с двумя или большим количеством полюсов. Работает точно также как описано выше. Обмотки статора будут притягивать или отталкивать постоянный магнит на роторе и создавать тем самым крутящий момент. Ниже представлена схема шагового двигателя с постоянным магнитом.
Обычно, величина шага таких двигателей лежит в диапазоне 45-90°.
Шаговый двигатель с переменным магнитным сопротивлением
У двигателей этого типа на роторе нет постоянного магнита. Вместо этого, ротор изготавливается из магнитомягкого металла в виде зубчатого диска, типа шестеренки. Статор имеет более четырех обмоток. Обмотки запитываются в противоположных парах и притягивают ротор. Отсутствие постоянного магнита отрицательно влияет на величину крутящего момента, он значительно снижается. Но есть и большой плюс. У этих двигателей нет стопорящего момента.
Стопорящий момент — это вращающий момент, создаваемый постоянными магнитами ротора, которые притягиваются к арматуре статора при отсутствии тока в обмотках. Можно легко понять, что это за момент, если попытаться повернуть рукой отключенный шаговый двигатель с постоянным магнитом. Вы почувствуете различимые щелчки на каждом шаге двигателя. В действительности то, что вы ощутите и будет фиксирующим моментом, который притягивает магниты к арматуре статора.
Ниже показана работа шагового двигателя с переменным магнитным сопротивлением.
Шаговые двигатели с переменным магнитным сопротивлением обычно имеют шаг, лежащий в диапазоне 5-15°.
Гибридный шаговый двигатель
Данный тип шаговых моторов получил название «гибридный» из-за того, что сочетает в себе характеристики шаговых двигателей и с постоянными магнитами и с переменным магнитным сопротивлением.
Они обладают отличными удерживающим и динамическим крутящим моментами, а также очень маленькую величину шага, лежащую в пределах 0.9-5°, обеспечивая великолепную точность. Их механические части могут вращаться с большими скоростями, чем другие типы шаговых моторов.
Этот тип двигателей используется в станках ЧПУ high-end класса и в роботах. Главный их недостаток — высокая стоимость.
Обычный мотор с 200 шагами на оборот будет иметь 50 положительных и 50 отрицательных полюсов с 8-ю обмотками (4-мя парами). Из-за того, что такой магнит нельзя произвести, было найдено элегантное решение. Берется два отдельных 50-зубых диска. Также используется цилиндрический постоянный магнит. Диски привариваются один с положительному, другой к отрицательному полюсам постоянного магнита. Таким образом, один диск имеет положительный полюс на своих зубьях, другой — отрицательный.
Два 50-зубых диска помещены сверху и снизу постоянного магнита
Фокус в том, что диски размещаются таким образом, что если посмотреть на них сверху, то они выглядят как один 100-зубый диск! Возвышения на одном диске совмещаются со впадинами на другом.
Впадины на одном диске выровнены с возвышениями на другом
Ниже показана работа гибридного шагового двигателя, имеющего 75 шагов на оборот (1.5° на шаг). Стоит заметить, что 6 обмоток спарены, каждая имеет обмотку с противоположной стороны. Вы наверняка ожидали, что катушки расположены под углом в 60° следом друг за другом, но, на самом деле, это не так.
Если предположить, что первая пара — это самая верхняя и самая нижняя катушки, тогда вторая пара смещена под углом 60+5° по отношению к первой, и третья смещена на 60+5° по отношению ко второй. Угловая разница и является причиной вращения мотора. Режимы управления с полным и половинным шагом могут использоваться, впрочем как и волновое управление для снижения энергопотребления.
Ниже продемонстрировано полношаговое управление. В полушаговом режиме, число шагов увеличится до 150!
Не пытайтесь следовать за обмотками, чтобы понаблюдать, как это работает. Просто сфокусируйтесь на одной обмотке и ждите. Вы заметите, что всякий раз, когда обмотка задействована, есть 3 положительных полюса (красный) в 5° позади, которые притягиваются по направлению вращения и другие 3 отрицательных полюса (синий) в 5° впереди, которые толкаются в направлении вращения. Задействованная обмотка всегда находится между положительным и отрицательным полюсами.
Подключение обмоток
Шаговые двигатели относятся к многофазным моторам. Больше обмоток, значит, больше фаз. Больше фаз, более гладкая работа мотора и более выокая стоимость. Крутящий момент не связан с числом фаз. Наибольшее распространение получили двухфазные двигатели. Это минимальное количество необходимых для того, чтобы шаговый мотор функционировал.
Здесь необходимо понять, что число фаз не обязательно определяет число обмоток. Например, если каждая фаза имеет 2 пары обмоток и мотор является двухфазным, то количество обмоток будет равно 8. Это определяет только механические характеристики мотора. Для упрощения, я рассмотрю простейший двухфазный двигатель с одной парой обмоток на фазу.
Существует три различных типа подключения для двухфазных шаговых двигателей. Обмотки соединяются между собой, и, в зависимости от подключения, используется различное число проводов для подключения мотора к контроллеру.
Биполярный двигатель
Это наиболее простая конфигурация. Используются 4 провода для подключения мотора к контроллеру. Обмотки соединяются внутри последовательно или параллельно. Пример биполярного двигателя:
Мотор имеет 4 клеммы. Два желтых терминала (цвета не соответствуют стандартным!) питают вертикальную обмотку, два розовых — горизонтальную обмотку. Проблема такой конфигурации состоит в том, что если кто-то захочет изменить магнитную полярность, то единственным способом будет изменение направления электрического тока. Это означает, что схема драйвера усложнится, например это будет H-мост.
Униполярный двигатель
В униполярном двигателе общий провод подключен к точке, где две обмотки соединены вместе:
Используя этот общий провод, можно легко изменить магнитные полюса. Предположим, например, что мы подключили общий провод к земле. Запитав сначала один вывод обмотки, а затем другой — мы изменяем магнитные полюса. Это означает, что схема для использования биполярного двигателя очень простая, как правило, состоит только из двух транзисторов на фазу. Основным недостатком является то, что каждый раз, используется только половина доступных катушечных обмоток.
Это как при волновом управлении двигателем с возбуждением одной обмотки. Таким образом, крутящий момент всегда составляет около половины крутящего момента, который мог быть получен, если бы обе катушки были задействованы. Другими словами, униполярные электродвигатели должны быть в два раза более габаритными, по сравнению с биполярным двигателем, чтобы обеспечить такой же крутящий момент. Однополярный двигатель может использоваться как биполярный двигатель.
Для этого нужно оставить общий провод неподключенным.
Униполярные двигатели могут иметь 5 или 6 выводов для подключения. На рисунке выше продемонстрирован униполярный мотор с 6 выводами. Существуют двигатели, в которых два общих провода соединены внутри. В этом случае, мотор имеет 5 клемм для подключения.
8-выводной шаговый двигатель
Это наиболее гибкий шаговый мотор в плане подключения. Все обмотки имеют выводы с двух сторон:
Этот двигатель может быть подключен любым из возможных способов. Он может быть подключен как:
- 5 или 6-выводной униполярный,
- биполярный с последовательно соединенными обмотками,
- биполярный с параллельно соединенными обмотками,
- биполярный с одним подключением на фазу для приложений с малым потреблением тока
Источник: http://www.electronica52.in.ua/proekty-arduino/kak-rabotaut-shagovye-dvigateli
Шаговые двигатели и моторы Ардуино 28BYJ-48 с драйвером ULN2003
В этой статье мы поговорим о шаговых двигателях в проектах Ардуино на примере очень популярной модели 28BYJ-48. Так же как и сервоприводы, шаговые моторы являются крайне важным элементом автоматизированных систем и робототехники.
Их можно найти во многих устройствах рядом: от CD-привода до 3D-принтера или робота-манипулятора.
В этой статье вы найдете описание схемы работы шаговых двигателей, пример подключения к Arduino с помощью драйверов на базе ULN2003 и примеры скетчей с использованием стандартной библиотеки Stepper.
Шаговый двигатель – принцип работы
Схема шагового двигателя
Шаговый двигатель – это мотор, перемещающий свой вал в зависимости от заданных в программе микроконтроллера шагов и направления.
Подобные устройства чаще всего используются в робототехнике, принтерах, манипуляторах, различных станках и прочих электронных приборах.
Большим преимуществом шаговых двигателей над двигателями постоянного вращения является обеспечение точного углового позиционирования ротора. Также в шаговых двигателях имеется возможность быстрого старта, остановки, реверса.
Шаговый двигатель обеспечивает вращения ротора на заданный угол при соответствующем управляющем сигнале. Благодаря этому можно контролировать положение узлов механизмов и выходить в заданную позицию.
Работа двигателя осуществляется следующим образом – в центральном вале имеется ряд магнитов и несколько катушек. При подаче питания создается магнитное поле, которое воздействует на магниты и заставляет вал вращаться.
Такие параметры как угол поворота (шаги), направление движения задаются в программе для микроконтроллера.
Упрощенные анимированные схемы работы шагового двигателя
Основные виды шаговых моторов:
- Двигатели с переменными магнитами (применяются довольно редко);
- Двигатели с постоянными магнитами;
- Гибридные двигатели (более сложные в изготовлении, стоят дороже, но являются самым распространенным видом шаговых двигателей).
Где купить шаговый двигатель
Самые простые двигатели Варианты на сайте AliExpress:
Драйвер для управления шаговым двигателем
Драйвер – это устройство, которое связывает контроллер и шаговый двигатель. Для управления биполярным шаговым двигателем чаще всего используется драйверы L298N и ULN2003.
Работа двигателя в биполярном режиме имеет несколько преимуществ:
- Увеличение крутящего момента на 40% по сравнению с униполярными двигателями;
- Возможность применения двигателей с любой конфигурацией фазной обмотки.
Но существенным минусов в биполярном режиме является сложность самого драйвера. Драйвер униполярного привода требует всего 4 транзисторных ключа, для обеспечения работы драйвера биполярного привода требуется более сложная схема. С каждой обмоткой отдельно нужно проводить различные действия – подключение к источнику питания, отключение. Для такой коммутации используется схема-мост с четырьмя ключами.
Драйвер шагового двигателя на базе L298N
Этот мостовой драйвер управляет двигателем с током до 2 А и питанием до 46В. Модуль на основе драйвера L298N состоит из микросхемы L298N, системы охлаждения, клеммных колодок, разъемов для подключения сигналов, стабилизатора напряжения и защитных диодов.
Драйвер двигателя L298N
Драйвер шагового двигателя ULN2003
Описание драйвера шаговых двигателей UNL2003
Шаговые двигателями с модулями драйверов на базе ULN2003 – частые гости в мастерских Ардуино благодаря своей дешевизне и доступности. Как правило, за это приходится платить не очень высокой надежностью и точностью.
Другие драйвера
Существует другой вид драйверов – STEP/DIR драйверы. Это аппаратные модули, которые работают по протоколу STEP/DIR для связи с микроконтроллером. STEP/DIR драйверы расширяют возможности:
- Они позволяют стабилизировать фазные токи;
- Возможность установки микрошагового режима;
- Обеспечение защиты ключа от замыкания;
- Защита от перегрева;
- Оптоизоляция сигнала управления, высокая защищенность от помех.
В STEP/DIR драйверах используется 3 сигнала:
- STEP – импульс, который инициирует поворот на шаг/часть шага в зависимости от режима. От частоты следования импульсов будет определяться скорость вращения двигателя.
- DIR – сигнал, который задает направление вращения. Обычно при подаче высокого сигнала производится вращение по часовой стрелке. Этот тип сигнала формируется перед импульсом STEP.
- ENABLE – разрешение/запрет работы драйвера. С помощью этого сигнала можно остановить работу двигателя в режиме без тока удержания.
Одним из самых недорогих STEP/DIR драйверов является модуль TB6560-V2. Этот драйвер обеспечивает все необходимые функции и режимы.
Подключение шагового двигателя к Ардуино
Подключение будет рассмотрено на примере униполярного двигателя 28BYj-48 и драйверов L298 и ULN2003. В качестве платы будет использоваться Arduino Uno.
Подключение шагового двигателя к Ардуино
Еще один вариант схемы с использованием L298:
Подключение шагового двигателя к Ардуино на базе L298
Схема подключения на базе ULN2003 изображена на рисунке ниже. Управляющие выходы с драйвера IN1-IN4 подключаются к любым цифровым контактам на Ардуино. В данном случае используются цифровые контакты 8-11. Питание подключается к 5В. Также для двигателя желательно использовать отдельный источник питания, чтобы не перегрелась плата Ардуино.
Подключение шагового двигателя к Ардуино
Принципиальная схема подключения.
Принципиальная схема подключения шагового двигателя
Еще одна схема подключения биполярного шагового двигателя Nema17 через драйвер L298 выглядит следующим образом.
Обзор основных моделей шаговых двигателей для ардуино
Nema 17 – биполярный шаговый двигатель, который чаще всего используется в 3D принтерах и ЧПУ станках. Серия 170хHSхххА мотора является универсальной.
Основные характеристики двигателя:
- Угловой шаг 1,8°, то есть на 1 оборот приходится 200 шагов;
- Двигатель – двухфазный;
- Рабочие температуры от -20С до 85С;
- Номинальный ток 1,7А;
- Момент удержания 2,8 кг х см;
- Оснащен фланцем 42 мм для легкого и качественного монтажа;
- Высокий крутящий момент – 5,5 кг х см.
28BYJ-48 – униполярный шаговый двигатель. Используется в небольших проектах роботов, сервоприводных устройствах, радиоуправляемых приборах.
Характеристики двигателя:
- Номинальное питание – 5В;
- 4-х фазный двигатель, 5 проводов;
- Число шагов: 64;
- Угол шага 5,625°;
- Скорость вращения: 15 оборотов в секунду
- Крутящий момент 450 г/сантиметр;
- Сопротивление постоянного тока 50Ω ± 7% (25 ℃).
Описание библиотеки для работы с шаговым двигателем
В среде разработки Ардуино IDE существует стандартная библиотека Strepper.h для написания программ шаговых двигателей. Основные функции в этой библиотеке:
- Stepper(количество шагов, номера контактов). Эта функция создает объект Stepper, которая соответствует подключенному к плате Ардуино двигателю. Аргумент – контакты на плате, к которым подключается двигатель, и количество шагов, которые совершаются для полного оборота вокруг своей оси. Информацию о количестве шагов можно посмотреть в документации к мотору. Вместо количества шагов может быть указан угол, который составляет один шаг. Для определения числа шагов, нужно разделить 360 градусов на это число.
Источник: https://arduinomaster.ru/motor-dvigatel-privod/shagovye-dvigateli-i-motory-arduino/
Как подключить шаговый двигатель к Arduino Uno?
На производстве иногда применяют станки ЧПУ (Числовое Программное Управление). Агрегаты позволяют вырезать плоские детали, делать красивую резьбу по дереву и многое другое. На сегодняшний день в моде 3D-принтер, и он всё больше и больше набирает популярность.
Я недавно узнал, что ученые в США впервые в мире напечатали человеческий позвоночник из биоматериалов. Вот технологии быстро растут. И во всех этих аппаратов невозможно без шагового двигателя (ШД). Правда, связка — шаговый двигатель и Ардуино — это далеко не идеальный вариант (не для серьёзных объектов).
Но всё-таки призываю обратить внимание.
Из этой статьи вы узнаете:
Работа шагового двигателя и описание драйвера
Схема сборки на Fritzing
Описание библиотеки myStep и AccelStep
Описание кода программы
Доброго дня уважаемые друзья, коллеги, будущие партнёры и гости. Я снова на связи. С вами Гридин Семён. Сегодня мы рассмотрим интересную тему. Это соединение шагового двигателя с популярной электронной платой Arduino. Так что готовьте чай и читайте статью.
Как работает шаговик?
Для практических задач с точным перемещением объекта обязательно требуется ШД. Это мотор, который перемещает свой вал в зависимости от заданных шагов в программе контроллера. Чаще всего их применяют в станках ЧПУ, робототехнике, манипуляторах, 3D-принтерах.
Мы же с вами рассмотрим конкретный двигатель 28BYj-48 с драйвером управления ULN2003. Он достаточно дешёвый, прост в сборке и легко писать программу.
В 4-шаговом режиме он может совершать 2048 шагов, в 8-шаговом 4096 шагов. Питание 5 В, ток потребления 160 мА. Передаточное число 1:64 , то есть один шаг он совершит на 5,625 градусов. Крутящий момент составляет 34 мН.м. Средняя скорость 15 об/мин, с помощью программного кода можно ускорить до 35 об/мин, но вы должны понимать, что мы при этом теряем мощность и точность.
Размеры двигателя указаны из первоисточника — даташита производителя Kiatronics.
А вот таким образом он выглядит изнутри:
Для небольших технических проектов — 28BYj-48 идеальный вариант. Его главным преимуществом является дешевизна и простота. Прилагаю спецификацию:
Тип мотора | Униполярный шаговый двигатель |
Число фаз | 4 |
Рабочее напряжение | 5-12 вольт |
Частота | 100 Гц |
Частота под нагрузкой | > 600 Гц |
Крутящий момент | > 34.3 мН*м (120 Гц) |
Режим шага | рекомендуется полушаговый режим (8-шаговая управляющая сигнальная последовательность) |
Угол шага | 8-шаговая управляющая сигнальная последовательность — 5.625º/шаг4-шаговая управляющая сигнальная последовательность — 11.25º/шаг |
Передаточное отношение редуктора | Производителем заявлено 64:1 |
Вес | 30 г |
ШД имеет четыре обмотки, которые запитываются последовательно:
Для того, чтобы заставить мотор двигаться по часовой стрелке, нужно попеременно подавать на обмотки напряжение. Движок работает в двух режимах в шаговом и полушаговом, чем они отличаются, мы сейчас разберём.
1.Шаговый режим — это когда две из четырех обмоток запитываются на каждом шаге. Смотрите карту включения обмоток: Для этого способа используется библиотека myStepper.h.
Провод | Фазы для шагового режима | ||
1 | 2 | 3 | 4 |
4 оранжевый | |||
3 желтый | |||
2 розовый | |||
1 синий |
2.Полушаговый режим — это когда запитывается первая обмотка, потом вторая и третья вместе, потом четвёртая и т.д. В Даташите разработчика указано, что предпочтительнее режим полушага для мотора. Подробно изображено на карте подключений:
Провод | Фазы для полушагового режима | ||||||
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
4 оранжевый | |||||||
3 желтый | |||||||
2 розовый | |||||||
1 синий |
Описание драйвера ULN2003
Плата представляет собой силовой модуль, который содержит в себе семь независимых транзисторов Дарлингтона. Каждая пара представляет собой каскад из двух биполярных транзисторов. ULN2003 является неким усилителем с током нагрузки 500 мА и напряжением 50 В. На изображении отображена сама плата и описание выводов к ней.
Управляющие входы IN1,IN2,IN3,IN4 подключаются к любым дискретным выводам Arduino Uno. Если кому интересно, можете прочитать статью здесь. Светодиоды отображают, какой шаг совершил двигатель. Выводы для подключения внешнего источника питания. Рекомендую запитывать отдельной батареей, так как нагрузка может возрастать до 1 А. Только не забудьте переставить джампер на внешнее питание двигателя.
Схема сборки на Fritzing
Для использования в учебных проектах я рекомендую Arduino Uno. Схему подключений я представляю в двух вариантах: принципиальной и визуальной схеме.
Описание библиотеки AccelStepper
Давайте мы перейдём к интересной части нашей статьи. Это описание двух библиотек для работы с двигателями myStepper и AccelStepper. Больше буду обращать внимание на библиотеку AccelStepper, так как у нее больше функции, а именно:
- есть возможность управлять скоростью,
- поддержка различных шаговиков
- поддержка одновременно работающих двигателей
Определение конфигурации моторов
AccelStepper mystepper (1, pinStep, pinDirection);
Для управления шаговым двигателем.
AccelStepper mystepper (2, pinA, pinB);
Биполярный ШД, управляемый Н-мостом.
AccelStepper mystepper (4, pinA1, pinA2, pinB1, pinB2);
Униполярный мотор, управляемый четырмя транзисторами.
Источник: https://kip-world.ru/kak-podklyuchit-shagovyj-dvigatel-k-arduino-uno.html
Как подключить шаговый двигатель без контроллера — Станки, сварка, металлообработка
Доброго дня уважаемые друзья, коллеги, будущие партнёры и гости. Я снова на связи. С вами Гридин Семён. Сегодня мы рассмотрим интересную тему. Это соединение шагового двигателя с популярной электронной платой Arduino. Так что готовьте чай и читайте статью.
Как подобрать шаговый двигатель для станка ЧПУ. ШД из принтера
Любая разработка начинается с выбора компонентов. При разработке ЧПУ станка очень важно правильно подобрать шаговые двигателя . Если у вас есть деньги на покупку новых двигателей, в таком случае нужно определить рабочее напряжения и мощность двигателя. Я купил себе для второго ЧПУ станка шаговые двигателя вот такие: Nema17 1.7 А.
Если у вас нет достаточно денег или вы просто пробуете свои силы в данной сфере. То вы скорее всего будите использовать двигателя из принтеров . Это самый недорогой вариант. Но тут Вы столкнетесь с рядом проблем. У двигателя может быть 4, 5, 6, 8 — проводов для подключения. Как их подключить к драйверам L298n и СNC shield.
Давайте разберемся по порядку. Какие шаговые двигателя бывают. Если вы видите четное количество выводов это биполярный шаговый двигатель . Расположение обмотки для данного двигателя вот такое.
Если у двигателя 5 выводов, это униполярный шаговый двигатель . Вот так выгладит его схема.
Наши драйвера рассчитаны на двигателя с 4 выводами . Как быть? Как их подключить?
Биполярные ШД с 6-ю выводами подключаются к драйверу двумя способами:
В данном случае ШД имеет момент в 1.4 раза больше. Момент более стабилен на низких частотах.
При таком типе подключения нужно уменьшить ток, подаваемый на обмотки двигателя в √2 раз. Например, если номинальный рабочий ток двигателя составляет 2 А, то при последовательном включении обмоток требуемый ток — 1.4 А, то есть в 1.4 раза меньше.
Это можно легко понять из следующих рассуждений.
Номинальный рабочий ток, указанный в каталоге, рассчитан на сопротивление одной обмотки (R — именно оно приведено в каталоге). При последовательном включении обмоток сопротивление объединенной обмотки возрастает в два раза (2R).
Потребляемая мощность ШД — I*2 * R
При последовательном включении обмоток потребляемая мощность становится Iпосл.*2 * 2 * R
Потребляемая мощность не зависит от типа подключения, поэтому I*2 * R = Iпосл.*2 * 2* R, откуда
Iпосл.= I/ √2, т.е.
Iпосл.= 0.707 *I.
Так как крутящий момент двигателя прямо пропорционален величине магнитного поля, создаваемого обмотками статора, то он возрастает с увеличением числа витков обмотки и убывает с уменьшением ток, пропускаемого через обмотки. Но так как ток уменьшился в √2 раз, а число витков обмотки увеличилось в 2 раза, то крутящий момент возрастет в √2 раз.
Tпосл. = 1.4 * T.
Во втором случае момент более стабилен на высоких частотах. Параметры ШД при таком подключении соответствуют заявленным в datasheet, (момент, ток), момент более стабилен на высоких частотах .
Униполярный шаговый двигатель можно переделать.
Для этого нужно разобрать шаговый двигатель и перерезать провод соединяющий центр обмоток. И при подключении общий провод подключать ни куда не нужно.
В итоге у нас получается биполярный двигатель с 4 выводами.
Шаговые двигателя с 8-ю выводами можно подключить тремя способами.
Подключение А — шаговик работает с характеристиками, заявленными в описании (момент, ток), момент более стабилен на высоких частотах.
Подключение B – момент 1.4 раза, момент более стабилен на низких частотах (относительно А).
Подключение C – момент 1.96 раза, момент более стабилен на высоких частотах (относительно А).
Вот мы и решили проблему подключения шаговых двигателей. Но не все двигателя у нас заработают. Нужно еще определить рабочее напряжение двигателей. Самый правильный способ это найти datasheet. Так все параметры есть. Но не ко все двигателя из принтера можно найти datasheet. В таких случаях я пользуюсь вот такой таблицой.
Сопротивление обмотки, Ом | Рабочее напряжение, В |
5-15 | 5 |
30-60 | 12 |
60-120 | 24 |
Не знаю на сколько данная таблица верная но у меня все сходиться и работает как надо.
Двигателя я выбираю чтобы рабочее напряжение было меньше или равно напряжению источника питания. Для двигателей рассчитанных на меньшее напряжения необходимо настроить ток ниже.
Настраивать СNC shield будем в следующей статье. Не пропустите!
Источник: https://portal-pk.ru/news/111-kak-podobrat--shagovyi-dvigatel-dlya-stanka-chpu-shd-iz.html
Что такое шаговый двигатель, зачем он нужен и как работает
Шаговые двигатели постоянного тока получили широкое распространение в станках с числовым программным управлением и робототехнике. Основным отличием данного электромотора является принцип его работы. Вал шагового электродвигателя не вращается длительное время, а лишь поворачивается на определенный угол. Этим обеспечивается точное позиционирование рабочего элемента в пространстве. Электропитание такого двигателя дискретное, то есть осуществляются импульсами.
Эти импульсы и поворачивают вал на определенный угол, каждый такой поворот называется шагом, отсюда и пошло название. Зачастую данные электромоторы работают в тандеме с редуктором для повышения точности установки и момента на валу, и с энкодером для отслеживания положения вала в текущий момент. Эти элементы необходимы для передачи и преобразования угла вращения.
В этой статье мы расскажем читателям сайта Сам Электрик об устройстве, принципе работы и назначении шаговых двигателей.
Как устроен шаговый двигатель
По своему типу это бесколлекторный синхронный электродвигатель. Состоит из статора и ротора. На роторе обычно расположены секции, набранные из листов электротехнической стали (на фотографии это «зубчатая» часть), а те, в свою очередь, разделены постоянными магнитами. На статоре расположены обмотки, в виде отдельных катушек.
Принцип действия
Как работает шаговый электродвигатель можно рассмотреть на условной модели. В положении 1 на обмотки А и В подается напряжение определенной полярности. В результате в статоре образуется электромагнитное поле.
Так как разные магнитные полюса притягиваются, ротор займет свое положения по оси магнитного поля. Более того, магнитное поле мотора будет препятствовать попыткам изменения положения ротора извне.
Если говорить простыми словами, то магнитное поле статора будет работать на то, чтобы удержать ротор от изменения заданного положения (например, при механических нагрузках на вал).
Если напряжение той же полярности подается на обмотки D и C, электромагнитное поле сместится. Это заставит повернуться ротор с постоянным магнитом в положение 2. В этом случае угол поворота равен 90°. Этот угол и будет шагом поворота ротора.
Положение 3 достигается подачей напряжения обратной полярности на обмотки А и В. В этом случае электромагнитное поле станет противоположным положению 1, ротор двигатели сместится, и общий угол будет 180°.
При подаче напряжения обратной полярности на обмотки D и C, ротор повернется на угол до 270° относительно начальной позиции. При подключении положительного напряжения на обмотки А и В ротор займет первоначальное положение — закончит оборот на 360°.
Следует учитывать, что передвижение ротора происходит по наименьшему пути, то есть из положения 1 в положение 4 по часовой стрелке ротор повернется только после прохождения промежуточных 2 и 3 положения.
При подключении обмоток после 1 положения сразу в 4 положение ротор повернется против часовой стрелки.
Виды и типы по полярности или типу обмоток
В шаговых двигателях применяются биполярные и униполярные обмотки. Принцип работы был рассмотрен на базе биполярной машины. Такая конструкция предусматривает использование разных фаз для питания обмоток. Схема очень сложна и требует дорогостоящих и мощных плат управления.
Более простая схема управления в униполярных машинах. В такой схеме начало обмоток подключены к общему «плюсу». На вторые выводы обмоток поочередно подается «минус». Тем самым обеспечивается вращение ротора.
Биполярные шаговые двигатели более мощные, крутящий момент у них на 40% больше чем в униполярных. Униполярные электромоторы гораздо более удобны в управлении.
Типы двигателей по конструкции ротора
По типу исполнения ротора шаговые электродвигатели подразделяются на машины:
- с постоянным магнитом;
- с переменным магнитным сопротивлением;
- гибридные.
ШД с постоянными магнитами на роторе устроен также, как и в рассмотренных выше примерах. Единственным отличием является то, что в реальных машинах количество магнитов гораздо больше. Распределены они обычно на общем диске. Количество полюсов в современных моторах доходит до 48. Один шаг в таких электромоторах составляет 7,5°.
Электромоторы с переменным магнитным сопротивлением. Ротор данных машин изготавливается из магнитомягких сплавов, их также называют «реактивный шаговый двигатель». Ротор собирается из отдельных пластин и в разрезе выглядит как зубчатое колесо. Такая конструкция необходима для того, чтобы через зубцы замыкался магнитный поток.
Основным достоинством такой конструкции является отсутствие стопорящего момента. Дело в том, что ротор с постоянными магнитами притягивается к металлическим деталям электромотора. И провернуть вал при отсутствии напряжения на статоре достаточно тяжело. В шаговом двигателе с переменным магнитным сопротивлением такой проблемы нет.
Однако существенным минусом является небольшой крутящий момент. Шаг подобных машин обычно составляет от 5° до 15°.
Гибридный ШД был разработан для объединения лучших характеристик двух предыдущих типов. Такие двигатели имеют маленький шаг в пределах от 0,9 до 5°, обладают высоким моментом и удерживающей способностью.
Самым важным плюсом является высокая точность работы устройства. Такие электромоторы применяются в самом современном высокоточном оборудовании. К минусам можно отнести только их высокую стоимость.
Конструктивно ротор данного устройства представляет собой намагниченный цилиндр, на котором расположены магнитомягкие зубцы.
Для примера в ШД на 200 шагов используются два зубчатых диска с числом зубцов 50 штук на каждом. Диски смещены относительно друг друга на ползуба так, что впадина положительного полюса совпадает с выступом отрицательного и наоборот. Благодаря этому у ротора есть 100 полюсов с обратной полярностью.
То есть и южный, и северный полюс может сместиться относительно статора в 50 различных положений, а в сумме 100. А смещение фаз на четверть дает еще 100 позиций, производится это за счет последовательного возбуждения.
Управление ШД
Управление производится следующими методами:
- Волновой. В данном методе напряжение подается только на одну катушку, к которой и притягивается ротор. Так как задействована только одна обмотка крутящий момент ротора небольшой, и не подходит для передачи больших мощностей.
- Полношаговый. В данном варианте возбуждаются сразу две обмотки, благодаря чему обеспечивается максимальный момент.
- Полушаговый. Объединяет первые два метода. В данном варианте напряжение подается сначала на одну из обмоток, а затем на две. Таким образом реализуется большее количество шагов, и максимальная удерживающая сила, которая останавливает ротор при больших скоростях.
- Микрошаговое регулирование производится подачей микроступенчатых импульсов. Такой метод обеспечивает плавное вращение ротора и снижает рывки при работе.
Достоинства и недостатки шаговых электродвигателей
К достоинствам данного типа электрических машин можно отнести:
- высокие скорости пуска, остановки, реверса;
- вал поворачивается в соответствии с командой управляющего устройства на заданный угол;
- четкая фиксация положения после остановки;
- высокая точность позиционирования, без жестких требований к наличию обратной связи;
- высокая надежность за счет отсутствия коллектора;
- поддержание максимального крутящего момента на низких скоростях.
Недостатки:
- возможно нарушение позиционирования при механической нагрузке на вал выше допустимой для конкретной модели двигателя;
- вероятность резонанса;
- сложная схема управления;
- невысокая скорость вращения, но это нельзя отнести к весомым недостаткам, поскольку шаговые двигатели не используются для простого вращения чего-либо, как бесколлекторные, например, а для позиционирования механизмов.
Шаговый двигатель также называют «электродвигатель с конечным числом положений ротора». Это и есть наиболее ёмкое и в то же время краткое определение таких электромашин. Они активно применяются в ЧПУ-станках, 3D-принтерах и роботах. Главным конкурентом шагового двигателя является сервопривод, но у каждого из них есть свои преимущества и недостатки, которые определяют уместность использования одного или другого в каждом конкретном случае.
Материалы по теме:
Источник: https://samelectrik.ru/chto-takoe-shagovyj-dvigatel-zachem-on-nuzhen-i-kak-rabotaet.html
Управление шаговым двигателем
Шаговые двигатели присутствуют в автомобилях, принтерах, компьютерах, стиральных машинах, электробритвах и многих других устройствах из повседневного быта. Однако многие радиолюбители до сих пор не знают, как заставить такой мотор работать и что он вообще из себя представляет. Итак, давайте узнаем, как использовать шаговый двигатель.
Шаговые двигатели являются частью класса моторов, известных как безщеточные двигатели. Обмотки шагового двигателя являются частью статора.
На роторе расположен постоянный магнит или, для случаев с переменным магнитным сопротивлением, зубчатый блок из магнитомягкого материала. Все коммутации производятся внешними схемами.
Обычно система мотор — контроллер разрабатывается так, чтобы была возможность вывода ротора в любую, фиксированную позицию, то есть система управляется по положению. Цикличность позиционирования ротора зависит от его геометрии.
Униполярные и биполярные шаговые двигатели
Также существует ещё два типа шаговых двигателей: униполярные и биполярные. На фундаментальном уровне, эти два типа работать точно так же; электромагниты включены в последовательном виде, заставляя центральный вал двигателя вращаться.
Но униполярный шаговый двигатель работает только с положительным напряжением, а биполярный шаговый двигатель имеет два полюса — положительный и отрицательный.
То есть фактическая разница между этими двумя типами заключается в том, что для однополярных требуется дополнительный провод в середине каждой катушки, что позволит току проходить либо к одному концу катушки, либо другому. Эти два противоположных направления производят две полярности магнитного поля, фактически имитируя как положительные, так и отрицательные напряжения.
Хотя оба они имеют общий уровень питающих напряжений 5V, биполярный шаговый двигатель будет иметь больший крутящий момент, потому что ток течет через всю катушку, производя более сильное магнитное поле. С другой стороны, униполярные шаговые двигатели используют только половину длины катушки из-за дополнительного провода в середине катушки, а значит меньший крутящий момент доступен для удержания вала на месте.
Подключение шаговых двигателей
Разные шаговые двигатели могут иметь разное количество проводов, как правило, 4, 5, 6, или 8. 4-х проводные линии могут поддержать только биполярные шаговые двигатели, поскольку у них нет центрального провода.
5-ти и 6-ти проводные механизмы могут быть использованы как для однополярного, так и биполярного шагового двигателя, в зависимости от того, используется центральный провод на каждой из катушек или нет. 5-ти проводная конфигурация подразумевает, что центральные провода на два комплекта катушек соединены внутри между собой.
Способы управления шаговыми двигателями
Есть несколько различных способов управления шаговыми двигателями — полный шаг, полушаг, и микрошаговый. Каждый из этих стилей предлагают различные крутящие моменты, шаги и размеры.
Полный шаг — такой привод всегда имеет два электромагнита. Для вращения вала, один из электромагнитов выключается и далее электромагнит включен, вызывая вращение вала на 1/4 зуба (по крайней мере для гибридных шаговых двигателей). Этот стиль имеет самый сильный момент вращения, но и самый большой размер шага.
Полшага. Для вращения центрального вала, первый электромагнит находится под напряжением, как первый шаг, затем второй также под напряжением, а первый все еще работает на второй шаг. При третьем шаге выключается первый электромагнит и четвертый шаг — поворот на третий электромагнит, а второй электромагнит по-прежнему работает. Этот метод использует в два раза больше шагов, чем полный шаг, но он также имеет меньший крутящий момент.
Микрошаговый имеет наименьший размер шага из всех этих стилей. Момент вращения, связанный с этим стилем, зависит от того, как много тока, протекает через катушки в определенное время, но он всегда будет меньше, чем при полном шаге.
Схема подключения шаговых двигателей
Чтобы управлять шаговым двигателем необходим контроллер. Контроллер — схема, которая подает напряжение к любой из четырех катушек статора. Схемы управления достаточно сложны, по сравнению с обычными электромоторчиками, и имеют много особенностей. Подробно рассматривать тут мы их не будем, а просто приведём фрагмент популярного контроллера на ULN2003A.
В общем шаговые двигатели являются отличным способом для того, чтобы повернуть что-то в точный размер угла с большим количеством крутящего момента. Другое преимущество их в том, что скорость вращения может быть достигнута почти мгновенно при изменении направления вращения на противоположное.
Источник: https://el-shema.ru/publ/ehlektrika/upravlenie_shagovym_dvigatelem/10-1-0-328
Шаговый двигатель 42STH60-1206A
Униполярный двухфазный шаговый двигатель (stepper motor) 42STH60-1206A — привод, который способен поворачиваться на заданное количество шагов. Один полный оборот разбит на 200 шагов. Таким образом, вы можете заставить повернуться вал мотор на произвольный угол, кратный 1,8°.
Двигатель имеет стандартный в промышленности размер фланца 42 мм, известный как типоразмер Nema 17. Такие двигатели часто используются для создания координатных станков с ЧПУ, 3D-принтеров и других механизмов, где необходимо точное позиционирование.
Выводы мотора — 6 проводов со свободными концами, где каждая тройка подведена к концам и центру обмотки, отвечающей за свою фазу. Таким образом, вы можете подключить двигатель как в униполярном, так и в биполярном режиме. Для управления мотором с помощью микроконтроллера понадобится драйвер-посредник, такой как драйвер шагового двигателя (Troyka-модуль), сборка Дарлингтона ULN2003 или H-мост L293D. Для контроля с помощью Arduino также подойдёт плата расширения Motor Shield.
Подробнее о подключении шаговых моторов к Arduino вы можете прочитать в статье на официальной вики.
Для крепления колёс, шкивов и других элементов на валу мотора удобно использовать специальную втулку-переходник.
Рекомендованное напряжение питания мотора — 7,2 В. При этом ток через обмотки составит 1200 мА. Если в вашем устройстве сложно получить указанный режим питания, вы можете вращать мотор и с помощью меньшего напряжения. В этом случае пропорционально снизится потребляемый ток и крутящий момент.
Характеристики
- Шаг: 1,8°±5% (200 на оборот)
- Номинальное напряжение питания: 7,2 В
- Номинальный ток фазы: 1200 мА
- Крутящий момент (holding torque): не менее 6,5 кг·см
- Крутящий момент покоя (detent torque): 0,28 кг·см
- Максимальная скорость старта: 2500 шагов/сек
- Диаметр вала: 5 мм
- Длина вала: 24 мм
- Габариты корпуса: 42×42×60 мм (Nema 17)
- Вес: 500 г
Ссылки
Источник: https://amperka.ru/product/stepper-motor-nema17-42sth60-1206a
Советы для начинающих. Arduino и шаговый двигатель Nema 17
Перед началом очередного проекта на Arduino, было решено использовать шаговый двигатель Nema 17.
Почему именно Nema 17? В первую очередь, из-за отличного соотношения цена/качество.
Перед подключением Nema 17, за плечами был определенный опыт работы с шаговиком 24byj48 (даташит). Управлялся он и с помощью Arduino, и с помощью Raspberry pi, проблем не возникало. Основная прелесть этого двигателя — цена (около 3 долларов в Китае). Причем, за эту сумму вы приобретаете двигатель с драйвером в комплекте. Согласитесь, такое можно даже и спалить, не особо сожалея о содеянном.
Теперь появилась задача поинтереснее. Управлять шаговым двигателем Nema 17 (даташит). Данная модель от оригинального производителя реализуется по цене около 40 долларов. Китайские копии стоят раза в полтора-два дешевле — около 20-30 долларов. Очень удачная модель, которая часто используется в 3D принтерах и CNC-проектах. Первая возникшая проблема — как подобрать драйвер для этого двигателя. Силы тока на пинах Arduino для питания не хватит.
Google подсказал, что для оживления Nema 17 можно использовать драйвер A4988 от Poulou (даташит).
Кроме того, есть вариант использования микросхем L293D. Но A4988 считается более подходящим вариантом, так что на нем и остановились во избежание потенциальных проблем.
Как уже упоминалось выше, использовались двигатель и драйвер, заказанные из Китая. Ссылки ниже.
Ссылки для заказа необходимого оборудования из Китая
Подключение Nema 17 через A4988
Подключение было реализовано на основании этой темы на Arduino форуме. Рисунок приведен ниже.
Собственно, данная схема присутствует практически на каждом блоге-сайте, посвященном Arduino. Плата была запитана от 12 вольтового источника питания. Но двигатель не вращался. Проверили все соединения, еще раз проверили и еще раз
Первая проблема
Наш 12 вольтовый адаптер не выдавал достаточной силы тока. В результате адаптер был заменен на 8 батареек АА. И двигатель начал вращаться! Что ж, тогда захотелось перескочить с макетной платы на прямое подключение. И тут возникла
Вторая проблема
Когда все было распаяно, двигатель опять перестал двигаться. Почему? Не понятно до сих пор. Пришлось вернуться к макетной плате. И вот тут возникла вторая проблема. Стоит предварительно было посидеть на форумах или внимательно почитать даташит. Нельзя подключать-отключать двигатель когда на контроллер подано питание! В результате контроллер A4988 благополучно сгорел.
Эта проблема была решена покупкой нового драйвера на eBay. Теперь, уже с учетом накопленного грустного опыта, Nema 17 был подключен к A4988и запущен, но
Шаговый двигатель сильно вибрирует
Во время вращения ротора двигатель сильно вибрировал. О плавном движении не было и речи. Гугл вновь в помощь. Первая мысль — неправильное подключение обмоток. Ознакомление с даташитом шагового двигателя и несколько форумов убедили, что проблема не в этом. При неправильном подключении обмоток двигатель просто не будет работать. Решение проблемы крылось в скетче.
Программа для Arduino
Оказалось, что есть замечательная библиотека для шаговых двигателей, написанная ребятами из Adafruit. Используем библиотеку AcclStepper и шаговый двигатель начинает работать плавно, без чрезмерных вибраций.
Основные выводы
- Никогда не подключайте/отключайте двигатель, когда на контроллер подано питание.
- При выборе источника питания, обратите внимание не только на вольтаж, но и на мощность адаптера.
- Не расстраивайтесь, если контроллер A4988 вышел из строя. Просто закажите новый
- Используйте библиотеку AcclStepper вместо голого кода Arduino. Шаговый двигатель с использованием этой библиотеки будет работать без лишних вибраций.
Скетчи для управления шаговым двигателем
Простой Arduino-код для проверки шагового двигателя
//простое подключение A4988
//пины reset и sleep соединены вместе
//подключите VDD к пину 3.3 В или 5 В на Arduino
//подключите GND к Arduino GND (GND рядом с VDD)
//подключите 1A и 1B к 1 катушке шагового двигателя
//подключите 2A и 2B к 2 катушке шагового двигателя
//подключите VMOT к источнику питания (9В источник питания + term)
//подключите GRD к источнику питания (9В источник питания — term)
int stp = 13; //подключите 13 пин к step
int dir = 12; //подключите 12 пин к dir
int a = 0;
void setup()
{
pinMode(stp, OUTPUT);
pinMode(dir, OUTPUT);
}
void loop()
{
if (a < 200) // вращение на 200 шагов в направлении 1
{
a++;
digitalWrite(stp, HIGH);
delay(10);
digitalWrite(stp, LOW);
delay(10);
}
else { digitalWrite(dir, HIGH);
a++;
digitalWrite(stp, HIGH);
delay(10);
digitalWrite(stp, LOW);
delay(10);
if (a>400) // вращение на 200 шагов в направлении 2
{
a = 0;
digitalWrite(dir, LOW);
}
}
}
Второй код для Arduino для обеспечения плавного вращения двигателя. Используется библиотека AccelStepper library.
#include
AccelStepper Stepper1(1,13,12); //использует пин 12 и 13 для dir и step, 1 — режим «external driver» (A4988)
int dir = 1; //используется для смены направления
void setup() {
Источник: http://arduino-diy.com/arduino-sovety-dlya-nachinayushchikh-shagovyy-dvigatel-Nema-17