В этой статье мы поговорим о шаговых двигателях в проектах Ардуино на примере очень популярной модели 28BYJ-48. Так же как и сервоприводы, шаговые моторы являются крайне важным элементом автоматизированных систем и робототехники. Их можно найти во многих устройствах рядом: от CD-привода до 3D-принтера или Pin-Up В этой статье вы найдете описание схемы работы шаговых двигателей, пример подключения к Arduino с помощью драйверов на базе ULN2003 и примеры скетчей с использованием стандартной библиотеки Stepper.
Содержание
Шаговый двигатель - принцип работы

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



Основные виды шаговых моторов:
- Двигатели с переменными магнитами (применяются довольно Pin-Up
- Двигатели с постоянными магнитами;
- Гибридные двигатели (более сложные в изготовлении, стоят дороже, но являются самым распространенным видом шаговых Pin-Up
Где купить шаговый двигатель
Самые простые Pin-Up Варианты на сайте AliExpress:
Драйвер для управления шаговым двигателем
Драйвер - это устройство, которое связывает контроллер и шаговый двигатель. Для управления биполярным Pin-Up двигателем чаще всего используется драйверы L298N и ULN2003.
Работа Pin-Up в биполярном режиме имеет несколько преимуществ:
- Увеличение крутящего момента на 40% по сравнению с униполярными двигателями;
- Возможность Pin-Up двигателей с любой конфигурацией фазной обмотки.
Но существенным минусов в биполярном режиме является сложность самого драйвера. Драйвер униполярного привода требует всего 4 Pin-Up ключа, для обеспечения работы драйвера биполярного привода требуется более сложная схема. С каждой обмоткой отдельно нужно проводить различные действия - подключение к источнику питания, отключение. Для такой коммутации используется схема-мост с четырьмя ключами.
Драйвер шагового двигателя на Pin-Up L298N
Этот мостовой драйвер управляет двигателем с током до 2 А и питанием до 46В. Модуль на основе драйвера L298N состоит из микросхемы L298N, системы охлаждения, клеммных колодок, разъемов для подключения сигналов, стабилизатора напряжения и защитных Pin-Up

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

Шаговые двигателями с модулями драйверов на базе Pin-Up - частые гости в мастерских Ардуино благодаря своей дешевизне и доступности. Как правило, за это приходится платить не очень высокой надежностью и точностью.
Другие драйвера
Существует другой вид драйверов - STEP Это аппаратные Pin-Up которые работают по протоколу STEP/DIR для связи с микроконтроллероDIR драйверы расширяют возможности:
- Они позволяют стабилизировать фазные токи;
- Возможность установки микрошагового режима;
- Обеспечение защиты ключа от замыкания;
- Защита от перегрева;
- Оптоизоляция сигнала управления, Pin-Up защищенность от помех.
В STEP/DIR драйверах используется 3 Pin-Up
- STEP - импульс, Pin-Up инициирует поворот на шаг От частоты следования импульсов будет определяться скорость вращения двигателя.
- DIR - сигнал, который задает направление вращения. Обычно при подаче высокого сигнала производится Pin-Up по часовой стрелке. Этот тип сигнала формируется перед импульсом STEP.
- ENABLE - разрешение С Pin-Up этого сигнала можно остановить работу двигателя в режиме без тока удержания.
Одним из Pin-Up недорогих STEP Этот драйвер обеспечивает все необходимые функции и режимы.
Подключение шагового двигателя к Ардуино
Подключение будет рассмотрено на примере униполярного двигателя 28BYj-48 и драйверов L298 и ULN2003. В качестве платы будет использоваться Arduino Uno.

Еще один Pin-Up схемы с использованием L298:

Схема подключения на базе ULN2003 Pin-Up на рисунке ниже. Управляющие выходы с драйвера IN1-IN4 подключаются к любым цифровым контактам на Ардуино. В данном случае используются цифровые контакты 8-11. Питание подключается к 5В. Также для двигателя желательно использовать отдельный источник питания, чтобы не перегрелась плата Ардуино.

Принципиальная схема подключения.

Еще одна схема подключения биполярного шагового двигателя Pin-Up через драйвер L298 выглядит следующим образом.
Обзор основных моделей шаговых Pin-Up для ардуино
Nema 17 - биполярный шаговый двигатель, который чаще всего используется в 3D принтерах и ЧПУ станках. Серия 170хHSхххА Pin-Up является универсальной.
Основные характеристики двигателя:
- Угловой шаг 1,8°, то есть на 1 оборот приходится 200 Pin-Up
- Двигатель - двухфазный;
- Рабочие температуры от -20С до Pin-Up
- Номинальный ток 1,7А;
- Момент Pin-Up 2,8 кг х см;
- Оснащен фланцем 42 мм для легкого и качественного Pin-Up
- Pin-Up крутящий момент - 5,5 кг х см.
28BYJ-48 - Pin-Up шаговый двигатель. Используется в небольших проектах роботов, сервоприводных устройствах, радиоуправляемых приборах.
Характеристики двигателя:
- Номинальное питание - 5В;
- 4-х фазный двигатель, 5 проводов;
- Число шагов: 64;
- Угол шага 5,625°;
- Скорость вращения: 15 Pin-Up в секунду
- Крутящий момент 450 г/сантиметр;
- Сопротивление Pin-Up тока 50Ω ± 7% (25 ℃).
Pin-Up библиотеки для работы с шаговым двигателем
В среде Pin-Up Ардуино IDE существует стандартная библиотека Strepper.h для написания программ шаговых двигателей. Основные функции в этой библиотеке:
- Stepper(количество шагов, номера контактов). Эта Pin-Up создает объект Stepper, которая соответствует подключенному к плате Ардуино двигателю. Аргумент - контакты на плате, к которым подключается двигатель, и количество шагов, которые совершаются для полного оборота вокруг своей оси. Информацию о количестве шагов можно посмотреть в документации к мотору. Вместо количества шагов может быть указан угол, который составляет один шаг. Для определения числа шагов, нужно разделить 360 градусов на это число.
- Set Speed(long rpms) - Pin-Up в которой указывается скорость вращения. Аргументом является положительное целое число, в котором указано количество оборотов в минуту. Задается после функции Step().
- Step(Steps) -поворот на указанное количество шагов. Аргументом может быть либо положительное число - поворот двигателя по часовой стрелке, либо отрицательное - против Pin-Up стрелки.
Пример скетча для управления
В Pin-Up примеров библиотеки Stepper.h существует программа stepper_oneRevolution, в которой задаются все параметры для шагового двигателя - количество шагов, скорость, поворот.
#include <Stepper.h> const int stepsPerRevolution = 200; Stepper myStepper(stepsPerRevolution, 8,9,10,11); /setSpeed(60); /begin(9600); } void Pin-Up { / Serial.println("Move right"); /step(stepsPerRevolution); delay(1000); Serial.println("Move left"); /step(-stepsPerRevolution); delay(1000); }Заключение
В этой статье мы с вами узнали, что такое шаговый двигатель, как можно его подключить к ардуино, что такое драйвер шагового двигателя. Мы также рассмотрели пример написания скетча, использующего встроенную библиотеку Stepper. Как видим, ничего особенно сложного в работе с шаговыми моторами нет и мы рекомендуем вам обязательно поэкспериментировать самостоятельно и попробовать включить его в своихпроектах Arduino.


















круто!
Вращается Pin-Up в одну сторону 🙁 все сделал как у вас по статье.
Подключение шагового двигателя 28BYJ-48 с Pin-Up на микросхеме ULN2003 к Arduino Uno
https:/be/8b-9drmBPTY