Как управлять шаговым двигателем без контроллера

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

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

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

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


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

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

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

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

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

По конструкции ротора

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

Реактивный

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

С переменным магнитным сопротивлением

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

С постоянными магнитами

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

С постоянным магнитом

Гибридные

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

По виду обмоток

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

Униполярный

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

Униполярный ШД

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

Схема а) с различными, б) с одним выводом

Биполярный

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

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

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

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

Теперь рассмотрим различные способы подачи тока на обмотки и увидим, как в результате вращается вал мотора.

Волновое управление или полношаговое управление одной обмоткой

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

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

Полношаговый режим управления

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

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

Полушаговый режим

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

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

Режим микрошага

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

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

Метод микрошага является в действительности способом питания мотора, а не методом управления обмотками. Следовательно, микрошаг можно использовать и при волновом управлении и в полношаговом режиме управления. Ниже продемонстрирована работа этого метода:

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

Скетч Arduino — использование библиотеки AccelStepper

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

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

  • Ускорение и замедление.
  • Одновременное управление несколькими шаговыми двигателями с независимым шагом для каждого двигателя.

Эта библиотека не включена в IDE Arduino, поэтому вам необходимо сначала установить ее.

Установка библиотеки

Чтобы установить библиотеку, перейдите в Эскиз> Include Library> Manage Libraries… Подождите, пока диспетчер библиотек загрузит индекс библиотек и обновит список установленных библиотек.

Отфильтруйте результаты поиска, набрав «Accelstepper». Щелкните первую запись и выберите «Установить».

Скетч Arduino

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

// Подключаем библиотеку AccelStepper
#include <AccelStepper.h>

// Устанавливаем выводы
const int dirPin = 2;
const int stepPin = 3;

// Определение тип интерфейса двигателя
#define motorInterfaceType 1

// Создаем экземпляр
AccelStepper myStepper(motorInterfaceType, stepPin, dirPin);

void setup() {
  // Устанавливаем максимальную скорость, коэффициент ускорения,
  // начальную скорость и целевую позицию
  myStepper.setMaxSpeed(1000);
  myStepper.setAcceleration(50);
  myStepper.setSpeed(200);
  myStepper.moveTo(200);
}

void loop() {
  // Изменение направления вращения, когда двигатель достигнет целевого положения
  if (myStepper.distanceToGo() == 0) 
    myStepper.moveTo(-myStepper.currentPosition());

  // Передвинуть на 1 шаг
  myStepper.run();
}

Пояснение к скетчу:

Мы начинаем с подключения недавно установленной библиотеки AccelStepper.

#include <AccelStepper.h>

Определяем выводы Arduino, к которым подключаются выводы STEP и DIR A4988. Устанавливаем motorInterfaceType значение 1. (1 означает внешний шаговый драйвер с выводами Step и Direction).

const int dirPin = 2;
const int stepPin = 3;

#define motorInterfaceType 1

Затем мы создаем экземпляр библиотеки с именем myStepper.

AccelStepper myStepper(motorInterfaceType, stepPin, dirPin);

В функции setup() мы сначала устанавливаем максимальную скорость двигателя 1000. Затем мы устанавливаем коэффициент ускорения для двигателя, чтобы добавить ускорение и замедление к движениям шагового двигателя.

Затем мы устанавливаем обычную скорость 200 и количество шагов, например, 200 (поскольку NEMA 17 совершает 200 шагов за оборот).

void setup() {
  myStepper.setMaxSpeed(1000);
  myStepper.setAcceleration(50);
  myStepper.setSpeed(200);
  myStepper.moveTo(200);
}

В функции loop() мы используем оператор If, чтобы проверить, как далеко двигателю нужно проехать (путем чтения distanceToGo), пока он не достигнет целевой позиции (moveTo). Как только distanceToGo станет равен нулю мы переключаем двигатель в противоположное направление, изменив moveTo на противоположное значение относительно его текущего положения.

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

void loop() {
  if (myStepper.distanceToGo() == 0) 
    myStepper.moveTo(-myStepper.currentPosition());

  myStepper.run();
}

Схема шагового двигателя

Его схема обмоток выглядит примерно так:

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

  • Конденсатор емкостью 470-3300 мкФ.
  • Источник переменного тока 12 В.

Замыкаем обмотки последовательно.

Середину проводов скручиваем и запаиваем.

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

Подаем питание и двигатель начинает крутиться.

Если перекинуть вывод конденсатора с одного выхода питания на другой, то вал двигателя начнет вращаться в другую сторону.

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

Реактивный шаговый двигатель

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

Трехфазный реактивный шаговый двигатель (шаг 30°)

Четырехфазный реактивный шаговый двигатель (шаг 15°)

Ниже представлены осциллограммы управления для трехфазного шагового двигателя.

Униполярное волновое управление

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

Биполярное 6-шаговое управление

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

,

  • где NR — количество полюсов ротора;
  • NS – количество полюсов статора.

Осциллограммы управления 4-х фазным реактивным шаговым двигателем

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

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

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

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

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

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

Обычно, величина шага таких двигателей лежит в диапазоне 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° впереди, которые толкаются в направлении вращения. Задействованная обмотка всегда находится между положительным и отрицательным полюсами.

Принцип действия шаговых двигателей, разновидности

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

Конструкция шагового двигателя

Особенностью шагового двигателя назовем форму стального ротора. Снабжен полюсами, подчеркнутыми путем вынесения на кончик острого либо тупого зубца. Мертвый металл, притягиваемый катушками статора. Характеризуется некоторой намагниченностью остаточного рода, вызванной действием поля. Точное позиционирование полюсов статора обеспечивает шаговому двигателю уникальное свойство: точное позиционирование по углу поворота вала. Из правила встречаются исключения, рассмотренные ниже по тексту.

Шаговые двигатели используются промышленностью, цифровой техникой – где требуется обеспечить точное позиционирование вала. Некоторые источники датируют изобретение серединой XIX века, первые сведения просочились в специализированные журналы в 20-х годах XX века. Речь о трехфазном реактивном шаговом двигателе. Исходное применение традиционно стало военным: на кораблях королевского флота Великобритании узлы направляли в нужную сторону торпеды. Позже технология перекочевала, посетив армию США.

Первый открытый патент получен на прибор с ротором, статором на 32 зуба шотландским инженером Уолкером в 1919 году. Прибор рассчитан работать с трехфазным напряжением. Сегодня шаговые двигатели встречаются в жестких дисках персональных компьютеров, автоматизированных линиях сборки. Ключевыми достоинствами считают низкую стоимость, простоту позиционирования. Альтернатив не придумано. Устройства применяются приблизительно с 70-х годов XX века, формируют четыре основные группы:

  1. Шаговые двигатели на постоянных магнитах.
  2. Гибридные синхронные двигатели.
  3. Вентильные реактивные двигатели.
  4. Шаговые двигатели Лавета.

Мировой практикой принята стандартизированная маркировка указанных разновидностей устройств:

Унифилярные:

  1. Красный, желтый – первая обмотка.
  2. Черный, оранжевый – вторая обмотка.

Бифилярные:

  1. Обмотка с центральным общим выводом. Красный, черный, красный с белым – первая обмотка. Зеленый, белый, зеленый с белым – вторая обмотка.
  2. Двойная обмотка полюса. Красный, красный с белым – первая пара первой обмотки. Желтый, желтый с белым – вторая пара первой обмотки. Черный, черный с белым —первая пара второй обмотки. Оранжевый, оранжевый с белым – вторая пара второй обмотки.

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