Шаговый двигатель 6 проводов подключение
Шаговый двигатель 28BYJ-48
Товары
Обзор шагового двигателя 28BYJ-48
Шаговые двигатели применяют в механических системах точного позиционирования – ЧПУ станках, 3d-принтерах, принтерах, роботах-манипуляторах. Шаговые двигатели преобразуют электрические импульсы в перемещение вала на определенный угол. Минимально возможный угол перемещения шагового двигателя, называется шагом.
В любительской робототехнике очень часто используют бюджетный шаговый двигатель 28BYJ-48, в комплекте с которым продается драйвер двигателя на микросхеме ULN2003, необходимый для подключения шагового двигателя к плате Arduino.
Рисунок 1. Шаговый двигатель 28BYJ-48 с драйвером на микросхеме ULN2003.
Характеристики шагового двигателя 28BYJ-48:
Напряжение питания – 5В или 12В;
Коэффициент редукции – 1/63.68395;
Количество шагов ротора – 64;
Номинальная скорость вращения – 15 оборот/мин;
Крутящий момент – 450 г*см;
Размеры (диаметр,высота) –25×18 мм;
Принципиальная схема шагового двигателя 28BYJ-48 приведена на рис. 2.
Рисунок 2. Принципиальная схема шагового двигателя 28BYJ-48.
Режимы работы двигателя
Для управления шаговым двигателем 28BYJ 48 используют один из двух режимов подключения.
- полношаговый режим – 4 ступени импульсов на 1 шаг;
Подключение 28BYJ-48к плате Arduino
Драйвер двигателя состоит из 7 пар транзисторов Дарлингтона и является усилителем. Выводы IN1 – IN7 предназначены для подключения к микроконтроллеру, GND и VCC – для питания шагового двигателя. Схема подключения драйвера к плате Arduino показана на рисунке 3.
Рисунок 3. Подключение драйвера к плате Arduino.
Для управления шаговыми двигателями в Arduino IDE есть встроенная библиотека – Stepper. Данная библиотека осуществляет только полношаговый режим коммутации.
Рисунок 4. Библиотека Stepper
Загрузим на плату Arduino пример – скетч stepper_oneRevolution из Examples (см. листинг 1).
К сожалению, данный скетч отрабатывает неверно, двигатель движется только в одном направлении. Для правильной работы необходимо использовать альтернативные библиотеки, например Accel Stepper. Библиотека Accel Stepper поддерживает не только равномерное движение, но и замедление/ускорение двигателя и работу с несколькими двигателями. Загружаем на плату Arduino скетч из листинга 2.
Теперь скетч работает нормально, шаговый двигатель плавно.
Рисунок 5. Схема в сборе
Пример использования
В качестве примера создадим проект управления шаговым двигателем кнопками, подключенными к плате Arduino.
Будем использовать следующие компоненты:
Шаговый двигатель 28BYJ-48 с драйвером – 1;
Резистор 10 кОм – 3;
Схема соединения представлена на рисунке 6.
Рисунок 6. Схема соединений
Реакция на нажатие кнопок:
кнопка 3 – движение двигателя по часовой стрелке;
кнопка 1 – против часовой стрелки;
кнопка 2 – останов.
Скетч показан в листинге 3.
Загружаем скетч на плату Arduino и проверяем работу.
Рисунок 7. Схема в сборе.
Рисунок 8. Вывод данных в последовательный порт.
Часто задаваемые вопросы
1. Нет перемещения шагового двигателя
Проверьте правильность подключения драйвера к плате Arduino.
Проверьте наличие достаточного внешнего питания для шагового двигателя.
Мир микроконтроллеров
Популярное
- Устройство и программирование микроконтроллеров AVR для начинающих — 143
- Трехканальный термостат, терморегулятор, таймер на ATmega8 — 71
- Двухканальный термостат, терморегулятор на ATmega8 — 67
Подключение шагового двигателя к Arduino Uno
Шаговые двигатели с каждым годом находят все большее применение в мире электроники. Начиная от обычной камеры наблюдения до сложных станков с ЧПУ и роботов шаговые двигатели используются в качестве исполнительных механизмов, поскольку они обеспечивают точное управление. В этом проекте мы рассмотрим один из наиболее распространенных шаговых двигателей 28-BYJ48 и его подключение к плате Arduino с помощью модуля ULN2003.
Общие принципы работы шаговых двигателей
Внешний вид шагового двигателя 28-BYJ48 представлен на следующем рисунке:
Первый вопрос, который напрашивается при взгляде на этот рисунок – почему в отличие от обычного двигателя из этого шагового двигателя выходят 5 проводов различных цветов? Чтобы понять это давайте сначала разберемся с принципами работы шагового двигателя.
Начнем с того, что шаговые двигатели не вращаются, а “шагают”, поэтому они и называются шаговыми двигателями. То есть в один момент времени они будут передвигаться только на один шаг. Чтобы добиться этого в устройстве шаговых двигателей присутствует несколько катушек и на эти катушки нужно подавать питание в определенной последовательности чтобы двигатель вращался (шагал). При подаче питания на каждую катушку двигатель делает один шаг, при последовательной подаче питания на катушки двигатель будет совершать непрерывные шаги, то есть вращаться. Давайте более подробно рассмотрим катушки, присутствующие внутри шагового двигателя.
Как можно видеть из рисунка, двигатель имеет однополярную катушку с 5 выводами. Но фактически это 4 катушки, на которые нужно подавать питание в определенной последовательности. На красные провода необходимо подать +5V, на остальные 4 провода необходимо подать землю чтобы запустить в работу соответствующую катушку. Мы будем использовать плату Arduino чтобы подавать питание на эти катушки в определенной последовательности и тем самым заставлять двигатель вращаться. Более подробно ознакомиться с принципами работы шаговых двигателей можно в статье про подключение шагового двигателя к микроконтроллеру AVR.
Так почему же этот двигатель называется 28-BYJ48? Честно говоря, мы не знаем точного ответа на этот вопрос. Некоторые наиболее важные технические характеристики этого шагового двигателя приведены на следующем рисунке.
На первый взгляд от такого количества характеристик может закружиться голова, но давайте попробуем выделить из них самые важные, те, которые нам понадобятся для дальнейшей работы. Во-первых, мы знаем, что это шаговый двигатель 5V, поэтому необходимо подавать на красный провод 5V. Также мы знаем что это четырехфазный шаговый двигатель поскольку в нем четыре катушки. Передаточное число этого двигателя — 1: 64. Это означает, что вал, который вы видите снаружи, сделает одно полное вращение в том случае, когда двигатель внутри сделает 64 оборота. Это происходит благодаря шестерням, которые включены между двигателем и выходным валом. Эти шестерни помогают в увеличении крутящего момента.
Еще одним важным показателем, который нам следует знать, является угол шага: 5.625°/64. Это значит что когда двигатель сделает последовательность в 8 шагов он будет поворачиваться на 5.625° при каждом шаге и за один полный оборот он сделает 64 шага (5.625*64=360).
Расчет шагов на оборот для шагового двигателя
Важно знать, как рассчитать количество шагов за один оборот для вашего шагового двигателя, потому что только тогда вы можете эффективно его запрограммировать.
В Arduino для управления двигателем мы будем использовать 4-шаговую последовательность, поэтому угол шага будет составлять 11.25°. Поскольку изначально он равен 5.625°(приведен в даташите), то для 8 шаговой последовательности получим 11.25° (5.625*2=11.25).
Справедлива следующая формула:
Количество шагов за оборот = 360 / угол шага.
В нашем случае 360/11.25 = 32 шага за оборот.
Зачем нужен драйвер мотора для управления шаговым двигателем
Большинство шаговых двигателей будут работать только с помощью модуля драйвера мотора. Это связано с тем, что микроконтроллер (в нашем случае плата Arduino) не может обеспечить достаточный ток на своих контактах ввода/вывода для работы двигателя. Поэтому мы будем использовать внешний драйвер мотора для управления нашим шаговым двигателем — модуль ULN2003 (купить на AliExpress). В сети интернет можно найти рейтинги эффективности различных драйверов мотора, но эти рейтинги будут меняться в зависимости от типа используемого шагового двигателя. Основной принцип, которого следует придерживаться при выборе драйвера мотора – он должен обеспечивать достаточный ток для управления шаговым двигателем.
Работа схемы
Схема подключения шагового двигателя к плате Arduino представлена на следующем рисунке.
Мы использовали шаговый двигатель 28BYJ-48 и драйвер мотора ULN2003. Для подачи питания на 4 катушки шагового двигателя мы будем использовать контакты платы Arduino 8, 9, 10 и 11. Драйвер мотора запитывается от контакта 5V платы Arduino.
Но если вы будете подсоединять какую-нибудь нагрузку к шаговому двигателю, то вам потребуется внешний источник питания для драйвера мотора. Мы в нашем примере эксплуатируем шаговый двигатель без нагрузки, поэтому нам и хватило питания от платы Arduino. И не забудьте соединить землю платы Arduino с землей драйвера мотора.
Разработка программы для платы Arduino
Перед тем как начать писать программу для платы Arduino давайте разберемся что должно происходить внутри этой программы. Как мы уже говорили ранее, мы будем использовать метод 4-шаговой последовательности, то есть нам нужно будет сделать 4 шага чтобы выполнить один полный оборот двигателя.
Номер шага | Контакты, на которое подается питание | Катушки, на которое подается питание |
Шаг 1 | 8 и 9 | A и B |
Шаг 2 | 9 и 10 | B и C |
Шаг 3 | 10 и 11 | C и D |
Шаг 4 | 11 и 8 | D и A |
На драйвере мотора есть 4 светодиода, по свечению которых можно судить о том, на какую катушку подается питание в конкретный момент. Более подробно все эти процессы можно посмотреть в видео, приведенном в конце статьи.
Мы напишем программу, в которой необходимое количество шагов для двигателя мы будем вводить в мониторе последовательного порта (serial monitor) платы Arduino. Полный текст программы приведен в конце статьи, здесь же мы рассмотрим наиболее важные его фрагменты.
Как мы рассчитали ранее, полное число шагов для полного оборота нашего шагового двигателя, равно 32, пропишем это в следующей строчке кода:
#define STEPS 32
Далее мы должны сказать плате Arduino через какие ее контакты мы будем управлять шаговым двигателем (то есть к каким ее контактам подключен драйвер мотора).
Stepper stepper (STEPS, 8, 10, 9, 11);
Примечание : последовательность номеров контактов, указанная в приведенной команде (8,10,9,11) – специально упорядочена таким образом чтобы подавать питание на катушки шагового двигателя в правильном порядке. Если вы измените номера контактов, к которым подключен шаговый двигатель, то вы соответствующим образом должны их упорядочить для подачи в приведенную команду.
Мы будем использовать специальную библиотеку для работы с шаговыми двигателями, поэтому для задания скорости вращения шагового двигателя мы можем использовать команду вида:
Для двигателя 28-BYJ48 скорость вращения можно установить в диапазоне от 0 до 200.
Теперь, чтобы двигатель сделал один шаг, мы можем использовать следующую команду:
Количество шагов, которое должен сделать двигатель, определяется переменной “ val ”. Поскольку мы имеем 32 шага (для оборота) и передаточное число 64 мы должны сделать 2048 (32*64=2048) “шагов” в этой команде для совершения одного полного оборота двигателя.
Значение переменной “val” в нашей программе мы будем вводить из окна монитора последовательной связи.
Работа проекта
Когда вы сделаете все необходимые соединения в аппаратной части нашего проекта у вас должна получиться примерно следующая конструкция:
Теперь загрузите код программы в плату Arduino UNO и откройте окно монитора последовательной связи (serial monitor). Как мы уже указывали, мы должны сделать 2048 шагов для совершения одного полного оборота, то есть если мы в окне монитора последовательной связи введем 2048, то вал шагового двигателя совершит один полный оборот по часовой стрелке, а сам двигатель в это время сделает 2048 шагов. Для вращения против часовой стрелки просто вводите нужное число шагов со знаком “–“. То есть если вы введете -1024, то вал мотора совершит пол-оборота против часовой стрелки. Чтобы протестировать работу проекта вы можете вводить любые числа.
Исходный код программы
Код программы достаточно простой. Я надеюсь после успешной реализации данного проекта вы сможете управлять любыми шаговыми двигателями с помощью платы Arduino.
#include // заголовочный файл библиотеки для работы с шаговыми двигателями
// измените необходимое число шагов в зависимости от модели вашего шагового двигателя
#define STEPS 32
// создайте класс для шагового двигателя и запишите для него правильную последовательность контактов
Stepper stepper(STEPS, 8, 10, 9, 11);
int val = 0;
void setup() <
Serial.begin(9600);
stepper.setSpeed(200);
>
void loop() <
if (Serial.available()>0)
<
val = Serial.parseInt();
stepper.step(val);
Serial.println(val); //for debugging
>
>
Видео, демонстрирующее работу схемы
Подключение шагового двигателя к Arduino через драйвер L298
На втором месте рейтинга двигателей для роботов после сервоприводов, которые мы уже рассматривали, стоят шаговые двигатели. Сегодня мы научимся управлять ими при помощи Arduino!
Кроме шагового двигателя (ШД) и Arduino нам потребуется ещё плата драйвера L298, которую можно приобрести у нас в магазине.
Немного теории
Шаговый двигатель позволяет точно спозиционировать вал, поворачивая его на небольшой угол. Один такой поворот зовётся шаг. Соответственно, одной из важных характеристик привода является количество шагов на оборот, то есть «разрешение» поворота.
ШД способен удерживать свою позицию даже в случае внешнего крутящего момента! Шаговые двигатели делятся на униполярные и биполярные. Мы будем использовать униполярный ШД, так как биполярный требует специальный драйвер для управления, тогда как униполярным можно легко управлять даже при помощи сборки транзисторов. Обратите внимание – биполярные ШД имеют 4 провода на выходе, униполярные – не 4 (5 или более).
Количество выводов зависит от количества обмоток в двигателе, чаще всего их 4 –поэтому 5 проводов (4 обмотки и общий). Управление униполярным двигателем, в теории, сводится к перебору обмоток (подачи поочерёдно логической единицы). Задержка между переключением обмотки определяет скорость и ускорение двигателя.
Что такое драйвер шагового двигателя?
В отличие от приводов постоянного тока, на ШД нельзя вот так вот просто подать напряжение так, чтобы он крутился. Необходимо попеременно подавать напряжение на разные обмотки.
Но, так как ток двигателя явно больше, чем 20мА, которые может дать один пин микроконтроллера, то применяются различные драйверы, как и наш L298.
Для реализации проекта из этой статьи нам потребуются следующие компоненты:
Подключение к Arduino
Для управления шаговым двигателем сгодится любой контроллер Arduino, мы же используем Arduino UNO. От шаговика отходят две пары проводов и общий(GND). A, A+ подключаются к MA, MA+, также и B, B+ к MB, MB+.
Питание 12В подаётся на первый контакт разъёма питания, 5В – на второй, GND – на третий (см. фото ниже). Выводы IN1-IN4 подключаются по порядку к цифровым пинам с 8 по 11 – по ним передаются управляющие импульсы.
После подключения надо загрузить в контроллер программу-пример stepper_oneRevolution из библиотеки Stepper (включена в комплект поставки). Можете добавить ее либо с этой страницы, либо найти в Файл Примеры Stepper stepper_oneRevolution
Шаговые двигатели и моторы Ардуино 28BYJ-48 с драйвером ULN2003
В этой статье мы поговорим о шаговых двигателях в проектах Ардуино на примере очень популярной модели 28BYJ-48. Так же как и сервоприводы, шаговые моторы являются крайне важным элементом автоматизированных систем и робототехники. Их можно найти во многих устройствах рядом: от CD-привода до 3D-принтера или робота-манипулятора. В этой статье вы найдете описание схемы работы шаговых двигателей, пример подключения к Arduino с помощью драйверов на базе ULN2003 и примеры скетчей с использованием стандартной библиотеки Stepper.
Шаговый двигатель – принцип работы
Шаговый двигатель – это мотор, перемещающий свой вал в зависимости от заданных в программе микроконтроллера шагов и направления. Подобные устройства чаще всего используются в робототехнике, принтерах, манипуляторах, различных станках и прочих электронных приборах. Большим преимуществом шаговых двигателей над двигателями постоянного вращения является обеспечение точного углового позиционирования ротора. Также в шаговых двигателях имеется возможность быстрого старта, остановки, реверса.
Шаговый двигатель обеспечивает вращения ротора на заданный угол при соответствующем управляющем сигнале. Благодаря этому можно контролировать положение узлов механизмов и выходить в заданную позицию. Работа двигателя осуществляется следующим образом – в центральном вале имеется ряд магнитов и несколько катушек. При подаче питания создается магнитное поле, которое воздействует на магниты и заставляет вал вращаться. Такие параметры как угол поворота (шаги), направление движения задаются в программе для микроконтроллера.
Упрощенные анимированные схемы работы шагового двигателя
Основные виды шаговых моторов:
- Двигатели с переменными магнитами (применяются довольно редко);
- Двигатели с постоянными магнитами;
- Гибридные двигатели (более сложные в изготовлении, стоят дороже, но являются самым распространенным видом шаговых двигателей).
Где купить шаговый двигатель
Самые простые двигатели Варианты на сайте AliExpress:
Драйвер для управления шаговым двигателем
Драйвер – это устройство, которое связывает контроллер и шаговый двигатель. Для управления биполярным шаговым двигателем чаще всего используется драйверы L298N и ULN2003.
Работа двигателя в биполярном режиме имеет несколько преимуществ:
- Увеличение крутящего момента на 40% по сравнению с униполярными двигателями;
- Возможность применения двигателей с любой конфигурацией фазной обмотки.
Но существенным минусов в биполярном режиме является сложность самого драйвера. Драйвер униполярного привода требует всего 4 транзисторных ключа, для обеспечения работы драйвера биполярного привода требуется более сложная схема. С каждой обмоткой отдельно нужно проводить различные действия – подключение к источнику питания, отключение. Для такой коммутации используется схема-мост с четырьмя ключами.
Драйвер шагового двигателя на базе L298N
Этот мостовой драйвер управляет двигателем с током до 2 А и питанием до 46В. Модуль на основе драйвера L298N состоит из микросхемы L298N, системы охлаждения, клеммных колодок, разъемов для подключения сигналов, стабилизатора напряжения и защитных диодов.
Драйвер двигателя L298N
Драйвер шагового двигателя ULN2003
Шаговые двигателями с модулями драйверов на базе 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 градусов на это число.
- Set Speed(long rpms) – функция, в которой указывается скорость вращения. Аргументом является положительное целое число, в котором указано количество оборотов в минуту. Задается после функции Step().
- Step(Steps) –поворот на указанное количество шагов. Аргументом может быть либо положительное число – поворот двигателя по часовой стрелке, либо отрицательное – против часовой стрелки.
Пример скетча для управления
В наборе примеров библиотеки Stepper.h существует программа stepper_oneRevolution, в которой задаются все параметры для шагового двигателя – количество шагов, скорость, поворот.
Заключение
В этой статье мы с вами узнали, что такое шаговый двигатель, как можно его подключить к ардуино, что такое драйвер шагового двигателя. Мы также рассмотрели пример написания скетча, использующего встроенную библиотеку Stepper. Как видим, ничего особенно сложного в работе с шаговыми моторами нет и мы рекомендуем вам обязательно поэкспериментировать самостоятельно и попробовать включить его в своих проектах Arduino.
Принцип работы и управления униполярного шагового двигателя
Шаговым двигателем называют электромеханическое устройство, преобразующее электрические сигналы в дискретные угловые перемещения вала. Применение шаговых двигателей позволяет рабочим органам машин совершать строго дозированные перемещения с фиксацией своего положения в конце движения.
Применяются в станках с ЧПУ, робототехнике, где требуется дискретные движения, фиксация положения и небольшая скорость.
Отличие и разновидности шаговых двигателей
По принципу работы они ближе к двигателям постоянного тока. Конструкция электродвигателей постоянно совершенствуется для уменьшения трудозатрат при изготовлении, повышения КПД и увеличения количество оборотов. У них по сравнению с двигателем постоянного тока нет щёток, коллектора, а обмотки с меньшим количеством витков.
Среди первых двигателей был создан миниатюрный двигатель для ручных часов и назван в честь французского инженера Мариус Лавета. Статор расцеплен на краях или в районе ротора имеет небольшие сужения. Ротор диаметром 1.5 мм, магнитный на основе кобальта. Одна обмотка в один ряд питание 1.5 вольта. Угол поворота 90 градусов.
Моторчик лавета применяется также и в медицине для перекачки различной жидкости, а также часто используется в миксерах и блендерах.
В последнее время ведутся разработки пьезоэлектрических двигателей с использованием пьезомагнитного эффекта и применяя в конструкции ферромагнитные материалы. Совершенствуются линейные электродвигатели, у которых вал не вращается, а совершает линейные движения. Для оборудования точной механики российские производители выпускают двигатели с маркировкой серии:
ДШ.
- ДШР.
- ДШГ.
- ДШЛ.
- ШД.
- ДШЭ
В производстве их участвуют такие предприятия, как НПО «АТОМ», ZETEK, компания Электропривод, Stepmotor, Вексон, НПО РИФ, Саратовский эл. механический, корпорация ВНИИЭМ, ЗАО Уралэлектромаш, АРК «Энергосервис». Производством ШД FL 203, FL 28, FL 57, 35 HS, 57 HS, 17 HD занимаются зарубежные фирмы: Fulling motor, Autonics, Motionking YUHA motor, Jlangsu, Phytron и другие. Ассортимент выпускаемых ШД разнообразный: по типоразмерам, мощности, со встроенным редуктором и платой управления.
Конструкция и принцип работы
Шаговый двигатель состоит из статора и вращающегося ротора. Сердечник статора выполнен в виде набора листов электротехнической стали (штампованных). Это уменьшает вихревые токи и соответственно нагрев. Статор по окружности разбит на 4.6.8 продольных пазов. Применяется и больше. На выступах между пазами располагаются обмотки в виде катушек. Количество пазов соответствует количеству полюсов двигателя. Чем больше полюсов, тем меньше угол поворота ротора, то есть шаг.
Ротор состоит из одного или двух постоянных магнитов, с торцов, металлические пластины которого закреплены с зубьями. При этом плюса S и N постоянного магнита разбиваются на n полюсов, что соответствует количеству зубьев. Это также влияет на величину шага вращения. По конструкции ШД выпускаются трёх типов в зависимости от конструкции ротора:
- реактивный;
- ротор из постоянного магнита;
- гибридный.
Реактивный — ротор выполнен из ферромагнитного материала с продольными пазами, полюсами. Он используется редко, только для выполнения простых задач. В основном из-за того, что у него нет стопорящего момента. Гибридный — ротор изготовлен из двух половинок ферромагнитного материала, с продольными пазами и между ними расположен постоянный магнит. Пазы половинок относительно друг друга, сдвинуты на небольшой угол, для понижения шага. Они чаще всего применяются.
При подаче импульсного напряжения на обмотку статора образуется электромагнитное поле. Взаимодействуя, с ближайшим полюсом постоянного магнита создаётся крутящий момент. Вал двигателя поворачивается на определённый угол. Угол поворота в основном зависит от количества полюсов ротора.
Такой двигатель и будет называться шаговым. Благодаря небольшим размерам ШД серии Em 422 применяется в матричных принтерах.
Методы управления фазами
Управление в основном зависит от количества полюсов и конфигурации обмоток статора. ШД выпускаются в основном со следующими обмотками:
- Две обмотки с 4 выводами.
- Две обмотки с 6 проводами со средним выводом.
- Четыре обмотки — 8 выводов.
Управлять можно двумя методами, использовать однополярное напряжение — униполярное или двухполярное — биполярное. Униполярный шаговый двигатель имеет 4 полюса и 2 обмотки. У четырехфазного каждая обмотка разделена пополам и располагается на противоположных полюсах. Вращение осуществляется поочерёдной подачей напряжения на обмотки. При 6 выводах или 5 тоже 2 обмотки, но с отводом от середины. Обычно средние выводы катушки соединяются вместе на минусовой провод, а плюсовой через управляемые ключи подаётся на обмотки.
Двигатели с биполярным управлением имеют 4 обмотки, по 2 на каждую фазу. Управление происходит при смене полярности обмотки. При таком управлении усложняется схема подключения шагового двигателя, но крутящий момент при этом получается больше. Основные характеристики — напряжение питания, потребляемый ток фазы, шаг, мощность и размер фланца. Посадочные места стандартизированы и указываются как, например, Nema 23. Это соответствует расстоянию между отверстиями под крепление 57 мм.
Способы управления шаговым двигателем
Применение ШД в станках с ЧПУ конкурирует только с сервоприводами, например, в эрозионных станках или принтерах, они даже превосходят их по своим техническим возможностям, себестоимости и простым схемам управления. Управление можно осуществлять на цифровых микросхемах, специализированных — А3977, на программированной PIC16, через ключи или драйверы SMSD 1.5.
Большинство драйверов управляются компьютером через порты RS-232, USB и LPT. Они вырабатывают сигналы управления: шаг, направление, разрешение и обеспечивают дробление шага на ½ до 1/32 и работают с программами: MACH3, KCam, DeskCNC, Turbocnc и другими. Кабелем подключить двигатель к драйверу согласно описанию. Изучив работу программы, запустить в работу несложно. Для включения используется напряжение от 5 вольт до 48 вольт. Исключения составляют двигатели на 220/110 вольт.
Микрошаговый режим привода
Основное время работы ШД происходит в пошаговом или полушаговом режиме, а при пуске и остановке желательно использовать микрошаговый режим для точной фиксации. Пошаговый режим определён конструкцией и импульсным управлением. При микрошаговой работе на обмотки подаются синусоидальные напряжения с нужным сдвигом фаз.
Ротор фиксируется при определённом соотношении фаз токов в обмотках. Расчёт точки равновесия произвести по формуле x = S *pi/2*arctg a/b где:
- a — момент, создаваемый первой фазой и b — второй фазой;
- x — точка равновесия ротора или микрошаг в радианах;
- S — угол шага.
А также надо учитывать максимальную частоту управляющего сигнала, при которой нет потери или добавления лишнего шага в процессе работы. Она является основным показателем переходного режима шагового двигателя и обозначается в характеристиках, как частота приёмистости двигателя.
В процессе эксплуатации необходимо следить за чистотой вокруг привода и не допускать попадания металлической стружки, возможен выход из строя ШД. Найти способ защитить привод. Ремонт аналогичен ремонту коллекторного двигателя, требует аккуратности.
После разборки взять и продуть сжатым воздухом статор и ветошью протереть ротор. Проверить отсутствие биения подшипников.
УПРАВЛЕНИЕ ШАГОВЫМ ДВИГАТЕЛЕМ
Шаговые двигатели присутствуют в автомобилях, принтерах, компьютерах, стиральных машинах, электробритвах и многих других устройствах из повседневного быта. Однако многие радиолюбители до сих пор не знают, как заставить такой мотор работать и что он вообще из себя представляет. Итак, давайте узнаем, как использовать шаговый двигатель.
Шаговые двигатели являются частью класса моторов, известных как безщеточные двигатели. Обмотки шагового двигателя являются частью статора. На роторе расположен постоянный магнит или, для случаев с переменным магнитным сопротивлением, зубчатый блок из магнитомягкого материала. Все коммутации производятся внешними схемами. Обычно система мотор — контроллер разрабатывается так, чтобы была возможность вывода ротора в любую, фиксированную позицию, то есть система управляется по положению. Цикличность позиционирования ротора зависит от его геометрии.
Типы шаговых двигателей
Существуют три основных типа шаговых двигателей: переменной индуктивности, двигатели с постоянными магнитами, и гибридные двигатели.
Двигатели переменной индуктивности используют только генерируемое магнитное поле на центральном валу, заставляющее вращаться и находиться на одной линии с напряжением электромагнитов.
Двигатели с постоянными магнитами похожи на них, за исключением того, что центральный вал поляризован у северного и южного магнитных полюсов, которые будут соответствующим образом поворачивать его в зависимости от того, какие электромагниты включены.
Гибридный мотор — это сочетание двух предыдущих. У его намагниченного центрального вала имеется два набора зубов для двух магнитных полюсов, которые затем выстраиваются в линию с зубами вдоль электромагнитов. В связи с двойным набором зубов на центральном валу, гибридный двигатель имеет наименьший доступный размер шага и поэтому является одним из наиболее популярных типов шаговых двигателей.
Униполярные и биполярные шаговые двигатели
Также существует ещё два типа шаговых двигателей: униполярные и биполярные. На фундаментальном уровне, эти два типа работать точно так же; электромагниты включены в последовательном виде, заставляя центральный вал двигателя вращаться.
Но униполярный шаговый двигатель работает только с положительным напряжением, а биполярный шаговый двигатель имеет два полюса — положительный и отрицательный.
То есть фактическая разница между этими двумя типами заключается в том, что для однополярных требуется дополнительный провод в середине каждой катушки, что позволит току проходить либо к одному концу катушки, либо другому. Эти два противоположных направления производят две полярности магнитного поля, фактически имитируя как положительные, так и отрицательные напряжения.
Хотя оба они имеют общий уровень питающих напряжений 5V, биполярный шаговый двигатель будет иметь больший крутящий момент, потому что ток течет через всю катушку, производя более сильное магнитное поле. С другой стороны, униполярные шаговые двигатели используют только половину длины катушки из-за дополнительного провода в середине катушки, а значит меньший крутящий момент доступен для удержания вала на месте.
Подключение шаговых двигателей
Разные шаговые двигатели могут иметь разное количество проводов, как правило, 4, 5, 6, или 8. 4-х проводные линии могут поддержать только биполярные шаговые двигатели, поскольку у них нет центрального провода.
5-ти и 6-ти проводные механизмы могут быть использованы как для однополярного, так и биполярного шагового двигателя, в зависимости от того, используется центральный провод на каждой из катушек или нет. 5-ти проводная конфигурация подразумевает, что центральные провода на два комплекта катушек соединены внутри между собой.
Способы управления шаговыми двигателями
Есть несколько различных способов управления шаговыми двигателями — полный шаг, полушаг, и микрошаговый. Каждый из этих стилей предлагают различные крутящие моменты, шаги и размеры.
Полный шаг — такой привод всегда имеет два электромагнита. Для вращения вала, один из электромагнитов выключается и далее электромагнит включен, вызывая вращение вала на 1/4 зуба (по крайней мере для гибридных шаговых двигателей). Этот стиль имеет самый сильный момент вращения, но и самый большой размер шага.
Полшага. Для вращения центрального вала, первый электромагнит находится под напряжением, как первый шаг, затем второй также под напряжением, а первый все еще работает на второй шаг. При третьем шаге выключается первый электромагнит и четвертый шаг — поворот на третий электромагнит, а второй электромагнит по-прежнему работает. Этот метод использует в два раза больше шагов, чем полный шаг, но он также имеет меньший крутящий момент.
Микрошаговый имеет наименьший размер шага из всех этих стилей. Момент вращения, связанный с этим стилем, зависит от того, как много тока, протекает через катушки в определенное время, но он всегда будет меньше, чем при полном шаге.
Схема подключения шаговых двигателей
Чтобы управлять шаговым двигателем необходим контроллер. Контроллер — схема, которая подает напряжение к любой из четырех катушек статора. Схемы управления достаточно сложны, по сравнению с обычными электромоторчиками, и имеют много особенностей. Подробно рассматривать тут мы их не будем, а просто приведём фрагмент популярного контроллера на ULN2003A.
В общем шаговые двигатели являются отличным способом для того, чтобы повернуть что-то в точный размер угла с большим количеством крутящего момента. Другое преимущество их в том, что скорость вращения может быть достигнута почти мгновенно при изменении направления вращения на противоположное.
Originally posted 2018-11-23 11:47:42. Republished by Blog Post Promoter
Шаговые двигатели (подробный разбор 4 типов)
Общие сведения:
Шаговый двигатель — это бесколлекторный двигатель, ротор которого вращается не плавно, а шагами (дискретно). Полный оборот ротора состоит из нескольких шагов. Меняя форму сигнала, количество импульсов, их длительность и фазовый сдвиг, можно задавать скорость вращения, направление вращения и количество оборотов ротора двигателя.
Шаговые двигатели состоят из ротора (подвижная часть) и статора (неподвижная часть). На статоре устанавливают электромагниты, а части ротора взаимодействующие с электромагнитами выполняются из магнитотвердого (двигатель с постоянными магнитами) или магнитомягкого (реактивный двигатель) материала.
Виды шаговых двигателей по типу ротора:
По типу ротора, шаговые двигатели делятся на: двигатели с постоянными магнитами, реактивные двигатели и гибридные двигатели.
- Двигатель с постоянными магнитами (ротор из магнитотвердого материала). На роторе установлен один, или несколько, постоянных магнитов. Количество полных шагов в одном обороте таких двигателей, зависит от количества постоянных магнитов на роторе, и количества электромагнитов на статоре. Обычно в одном обороте от 4 до 48 шагов (один шаг от 7,5° до 90° ).
- Реактивный двигатель (ротор из магнитомягкого материала). Еще такие двигатели называют двигателями с переменным магнитным сопротивлением. Ротор не имеет постоянных магнитов, он выполнен из магнитомягкого материала в виде многоконечной звезды. Данные двигатели встречаются редко, так как у них наименьший крутящий момент, по сравнению с остальными, при тех же размерах. Количество полных шагов в одном обороте таких двигателей, зависит от количества зубцов на звезде ротора, и количества электромагнитов на статоре. Обычно в одном обороте от 24 до 72 шагов (один шаг от 5° до 15°.)
- Гибридный двигатель (совмещает технологии двух предыдущих двигателей). Ротор выполнен из магнитотвердого материала (как у двигателя с постоянными магнитами), но имеет форму многоконечной звезды (как у реактивного двигателя). Количество полных шагов в одном обороте таких двигателей, зависит от количества постоянных магнитов на звезде ротора, и количества электромагнитов на статоре. Количество шагов в одном обороте таких двигателей может доходить до 400 (один шаг от 0,9°).
Какой тип шагового двигателя у меня?
Если вручную покрутить ротор отключённого двигателя, то можно заметить, что он движется не плавно, а шагами. После того, как Вы покрутили ротор, замкните все провода двигателя и покрутите ротор повторно. Если ротор крутится также, значит у Вас реактивный двигатель. Если для вращения ротора требуется прикладывать больше усилий, значит у вас двигатель с постоянными магнитами или гибридный. Отличить двигатель с постоянными магнитами от гибридного можно подсчитав количество шагов в одном обороте. Для этого не обязательно считать все шаги, достаточно примерно понять, их меньше 50 или больше. Если меньше, значит у Вас двигатель с постоянными магнитами, а если больше, значит у Вас гибридный двигатель.
Виды шаговых двигателей по типу соединения электромагнитов статора:
По типу соединения электромагнитов, шаговые двигатели делятся на: униполярные и биполярные.
На рисунке представлено упрощённое, схематическое, представление обмоток.
На самом деле, каждая обмотка состоит из нескольких обмоток электромагнитов, соединённых последовательно или параллельно
- Биполярный двигатель имеет 4 вывода. Выводы A и A питают обмотку AA, выводы B и B питают обмотку BB. Для включения электромагнита, на выводы обмотки необходимо подать разность потенциалов (два разных уровня), поэтому двигатель называется биполярным. Направление магнитного поля зависит от полярности потенциалов на выводах.
- Униполярный двигатель имеет 5 выводов. Центральные точки его обмоток соединены между собой и являются общим (пятым) выводом, который, обычно, подключают к GND. Для включения электромагнита, достаточно подать положительный потенциал на один из выводов обмотки, поэтому двигатель называется униполярным. Направление магнитного поля зависит от того, на какой именно вывод обмотки подан положительный потенциал.
- 6-выводной двигатель имеет ответвление от центральных точек обмоток, но обмотка AA не соединена с обмоткой BB. Если не использовать выводы центральных точек обмоток, то двигатель будет биполярным, а если эти выводы соединить и подключить к GND, то двигатель будет униполярным.
- 8-выводной двигатель является наиболее гибким в плане подключения электромагнитов. Данный двигатель можно не только использовать как биполярный или униполярный, но и самим определять, как соединить электромагниты обмоток, последовательно или параллельно.
Какой тип шагового двигателя у меня?
Если у Вашего двигателя 4 вывода, значит он биполярный. Если у Вашего двигателя 5 выводов, значит он униполярный. Но если у Вашего двигателя 6 и более выводов, то это не значит что некоторые из них являются центральными выводами катушек электромагнитов. Дело в том, что есть двигатели, некоторые выводы которых (обычно крайние), электрически замкнуты, так биполярный двигатель может иметь 6 выводов. Точно определить тип соединений, для двигателей с 6 и более выводами, можно только измеряя сопротивление между выводами.
Режимы работы шаговых двигателей:
- Для работы шагового двигателя (вне зависимости от его вида) можно выбрать один из трех режимов работы:
- Полношаговый режим — ротор поворачивается на 1 шаг за 1 такт.
- Полушаговый режим — ротор поворачивается на ½ шага за 1 такт.
- Микрошаговый режим — ротор поворачивается на ¼, ⅛ и т.д. шагов за 1 такт.
Ниже рассмотрены режимы работы, на примере биполярного двигателя с постоянным магнитом и полным шагом 90°.
Полношаговый режим (одна фаза на полный шаг). Номинальные значения шагового двигателя указываются именно для этого режима.
Полношаговый режим (две фазы на полный шаг). Этот режим позволяет увеличить крутящий момент почти в половину от номинального.
Полушаговый режим. Этот режим позволяет увеличить количество шагов в полном обороте в два раза, при незначительном уменьшении крутящего момента.
Микрошаговый режим. Этот режим является наиболее распространённым, он позволяет увеличить количество шагов в полном обороте в четыре раза, благодаря неравномерному распределению токов в обмотках. Снижение токов можно достичь снижением напряжения (как показано на картинке) или подавать полное напряжение через подключаемую внешнюю нагрузку.
Если подавать уровни не «0» — «½» — «1» (как на картинке), а «0» — «¼» — «½» — «¾» — «1», то количество шагов в полном обороте увеличится не в 4 раза, а в 8 раз. Можно увеличить количество шагов в 16, 32, 64 раза и т.д., а если заменить дискретные уровни сигналов на синусоиды, то мотор будет вращаться плавно (без шагов).
Режимы пониженного энергопотребления — доступны только для 8-выводных двигателей. Эти режимы отличаются от обычных тем, что используют только половину фазы (половину электромагнитов). Данные режимы используются редко, так как они значительно снижают крутящий момент двигателя.
Пример работы шаговых двигателей с разными видами роторов:
Подключение шаговых двигателей к Arduino:
Электромоторы нельзя подключать к выводам Arduino напрямую, так как они потребляют значительные токи, шаговые двигатели не являются исключением, поэтому их подключают через драйверы.
Большинство драйверов работают либо с биполярными двигателями, либо с униполярными.
- Биполярный двигатель можно подключить только к драйверу биполярных двигателей.
- 6-выводной двигатель можно подключить к любому драйверу. Если не использовать выводы центральных точек обмоток, то двигатель будет биполярным, а если эти выводы соединить и подключить к GND, то двигатель будет униполярным.
- 8-выводной двигатель является наиболее гибким в плане подключения. Данный двигатель можно не только использовать как биполярный или униполярный, но и самим определять, как соединить электромагниты обмоток внутри двигателя, последовательно или параллельно.
- Униполярный двигатель, при необходимости, можно подключить и к драйверу биполярного двигателя по простой схеме из нескольких диодов (лучше использовать диоды Шоттки), но такое подключение гарантирует корректность работы униполярного двигателя только в полношаговом режиме.