Оглавление
- Объяснение программы для платы Arduino
- Типы шаговых двигателей
- Шаговый двигатель от CD-ROM — запуск на Arduino без драйвера
- Скетч Arduino — использование библиотеки AccelStepper
- Типы шаговых двигателей
- Использование
- Как подключить шаговый двигатель без контроллера
- Схема униполярных и биполярных шаговых двигателей
Объяснение программы для платы 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) – специально упорядочена таким образом чтобы подавать питание на катушки шагового двигателя в правильном порядке. Если вы измените номера контактов, к которым подключен шаговый двигатель, то вы соответствующим образом должны их упорядочить для подачи в приведенную команду.
Мы будем использовать специальную библиотеку для работы с шаговыми двигателями, поэтому для задания скорости вращения шагового двигателя мы можем использовать команду вида:
stepper.setSpeed(200);
Для двигателя 28-BYJ48 скорость вращения можно установить в диапазоне от 0 до 200.
Теперь, чтобы двигатель сделал один шаг, мы можем использовать следующую команду:
stepper.step(val);
Количество шагов, которое должен сделать двигатель, определяется переменной “val”. Поскольку мы имеем 32 шага (для оборота) и передаточное число 64 мы должны сделать 2048 (32*64=2048) “шагов” в этой команде для совершения одного полного оборота двигателя.
Соответственно, чтобы шаговый двигатель сделал один шаг по часовой стрелке, необходимо использовать команду:
stepper.step(1);
А один шаг против часовой стрелки:
stepper.step(-1);
В нашей программе мы будем считывать значение на аналоговом контакте A0 платы Arduino и сравнивать его с предыдущим значением (Pval). Если оно увеличилось, то мы будем делать 5 шагов двигателем по часовой стрелке, а если уменьшилось – то 5 шагов двигателем против часовой стрелки.
potVal = map(analogRead(A0),0,1024,0,500); if (potVal>Pval) stepper.step(5); if (potVal stepper.step(-5); Pval = potVal;
Типы шаговых двигателей
Существуют три основных типа шаговых двигателей: переменной индуктивности, двигатели с постоянными магнитами, и гибридные двигатели.
Двигатели переменной индуктивности
используют только генерируемое магнитное поле на центральном валу, заставляющее вращаться и находиться на одной линии с напряжением электромагнитов.
Двигатели с постоянными магнитами
похожи на них, за исключением того, что центральный вал поляризован у северного и южного магнитных полюсов, которые будут соответствующим образом поворачивать его в зависимости от того, какие электромагниты включены.
Гибридный мотор
— это сочетание двух предыдущих. У его намагниченного центрального вала имеется два набора зубов для двух магнитных полюсов, которые затем выстраиваются в линию с зубами вдоль электромагнитов. В связи с двойным набором зубов на центральном валу, гибридный двигатель имеет наименьший доступный размер шага и поэтому является одним из наиболее популярных типов шаговых двигателей.
Также существует ещё два типа шаговых двигателей: униполярные
и биполярные
. На фундаментальном уровне, эти два типа работать точно так же; электромагниты включены в последовательном виде, заставляя центральный вал двигателя вращаться.
Но униполярный шаговый двигатель работает только с положительным напряжением, а биполярный шаговый двигатель имеет два полюса — положительный и отрицательный.
То есть фактическая разница между этими двумя типами заключается в том, что для однополярных требуется дополнительный провод в середине каждой катушки, что позволит току проходить либо к одному концу катушки, либо другому. Эти два противоположных направления производят две полярности магнитного поля, фактически имитируя как положительные, так и отрицательные напряжения.
Хотя оба они имеют общий уровень питающих напряжений 5V, биполярный шаговый двигатель будет иметь больший крутящий момент, потому что ток течет через всю катушку, производя более сильное магнитное поле. С другой стороны, униполярные шаговые двигатели используют только половину длины катушки из-за дополнительного провода в середине катушки, а значит меньший крутящий момент доступен для удержания вала на месте.
Разные шаговые двигатели могут иметь разное количество проводов, как правило, 4, 5, 6, или 8. 4-х проводные линии могут поддержать только биполярные шаговые двигатели, поскольку у них нет центрального провода.
5-ти и 6-ти проводные механизмы могут быть использованы как для однополярного, так и биполярного шагового двигателя, в зависимости от того, используется центральный провод на каждой из катушек или нет. 5-ти проводная конфигурация подразумевает, что центральные провода на два комплекта катушек соединены внутри между собой.
Есть несколько различных способов управления шаговыми двигателями — полный шаг, полушаг, и микрошаговый. Каждый из этих стилей предлагают различные крутящие моменты, шаги и размеры.
Полный шаг
— такой привод всегда имеет два электромагнита. Для вращения вала, один из электромагнитов выключается и далее электромагнит включен, вызывая вращение вала на 1/4 зуба (по крайней мере для гибридных шаговых двигателей). Этот стиль имеет самый сильный момент вращения, но и самый большой размер шага.
Полшага
. Для вращения центрального вала, первый электромагнит находится под напряжением, как первый шаг, затем второй также под напряжением, а первый все еще работает на второй шаг. При третьем шаге выключается первый электромагнит и четвертый шаг — поворот на третий электромагнит, а второй электромагнит по-прежнему работает. Этот метод использует в два раза больше шагов, чем полный шаг, но он также имеет меньший крутящий момент.
Микрошаговый
имеет наименьший размер шага из всех этих стилей. Момент вращения, связанный с этим стилем, зависит от того, как много тока, протекает через катушки в определенное время, но он всегда будет меньше, чем при полном шаге.
Шаговый двигатель от CD-ROM — запуск на Arduino без драйвера
Добрый вечер ребята. У меня такой вопрос. Как правильно подключить и запустить на ардуино шаговый двигатель от дисковода без драйвера и как урправлять реверсом? Заранее всем откликнувшимся большое спасибо за помощь.
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Там нет шагового двигателя. Там три других двигателя: один обычный коллекторный моторчик, который открывает/закрывает каретку. И два трёхфазных бесколлекторных двигателя: один крутит диск (побольше), другой двигает лазерную головку (поменьше).
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Хмм . А я видел привод каретки и от коллекторного и от шагового движков.
шаговый был обычный биполярный. Подключение много раз обсуждалось
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Меня значит интересует тот который двигает лазерную головку ( у него 4 контакта). Как его можно подключить без драйвера к ардуино и сделать реверс программно??
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Похоже я ошибся и двигатель, который двигает головку всё-таки биполярный шаговый.
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Спасибо за ролики я первый смотрел уже, там через драйвер. Можно ли обойтись без драйвера?
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
А как можно реализовать через ардуино реверс обычного постоянного мотора (например от лотка дисковода)? Мотор собираюсь запускать через транзистор подавая на базу сигнал с ардуино. Спасибо за вашу помощь заранее.
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Через транзистор реверсить не получится надо или мост или полумост.
вообщетто непонятно , как Вы нашли этот форум, если не умеете пользоваться поиском?
а если умеете то почему не ищете сами?
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Поиском я умею пользоваться но там советуют в других форумах через драйвер. Как вот можно обычный постоянный мотор реверсить без драйвера . Подключать хочу его к ардуино и задавать реверс цифровым выходом (пинами)
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Спасибо вам. через Н-мост попробую Но я так понимаю если случайно запусить оба транзистора то будет короткое замыкание цепи (например нажал на пульте две кнопки Вперед и Назад одновременно).
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Да, будет коротыш. Именно роэтому лучше применить мелкосхему, там есть защита.
откуда такой антагонизм к драйверам? Драйвер на мелкосхеме — тот же Нмост с защитами и в одном корпусе. Очень удобно.
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Да не антагонизм к драйверам. Просто нет в наличии пока. А так понимаю что очень удобно
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Хмм. L293 достаточно распрострненная и недорогая. На ебээ вообще копейки стоит.
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Заказать собираюсь либо на алике или а ебее
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Спасибо за совет вам. Вопрос такой L293 может управлять 12В моторами? Какое количество моторов можно задействовать максимально. Я так понимаю он служит вроде ключа для открывания (пропукскания) питания на моторы, а также реверсы делать.
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
В даташите всё написано:
Wide Supply-Voltage Range: 4.5 V to 36 V Output Current 1 A Per Channel (600 mA for L293D) Peak Output Current 2 A Per Channel (1.2 A for L293D)
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
БЛАГОДАРЮ ВСЕХ ЗА ОКАЗАННУЮ ВАМИ МНЕ ПОМОЩЬ))))))))))))))))))))))))))))))))))
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Там нет шагового двигателя. Там три других двигателя: один обычный коллекторный моторчик, который открывает/закрывает каретку. И два трёхфазных бесколлекторных двигателя: один крутит диск (побольше), другой двигает лазерную головку (поменьше).
Не будьте столь категоричны: недавно разбирал CD-Drive, так там головку двигает мотор, к которому идет ровно 2 провода — красный и черный. Вы уверены, что это трехфазный бесколлекторный?
Источник
Скетч 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(); }
Типы шаговых двигателей
Для обеспечения различных параметров работы важна как величина шага, на который будет смещаться вал, так и момент, прилагаемый для перемещения. Вариации данных параметров достигаются за счет конструкции самого ротора, способа подключения и конструкции обмоток.
По конструкции ротора
Вращаемый элемент обеспечивает магнитное взаимодействие с электромагнитным полем статора. Поэтому его конструкция и технические особенности напрямую определяют режим работы и параметры вращения шагового агрегата. Чтобы на практике определить тип шагового мотора, при обесточенной сети необходимо провернуть вал, если ощущаете сопротивление, то это свидетельствует о наличии магнита, в противном случае, это конструкция без магнитного сопротивления.
Реактивный
Реактивный шаговый двигатель не оснащается магнитом на роторе, а выполняется из магнитомягких сплавов, как правило, его набирают из пластин для уменьшения потерь на индукцию. Конструкция в поперечном разрезе напоминает шестерню с зубцами. Полюса статорных обмоток запитываются противоположными парами и создают магнитную силу для перемещения ротора, который двигается от попеременного протекания электрического тока в обмоточных парах.
С переменным магнитным сопротивлением
Весомым плюсом такой конструкции шагового привода является отсутствие стопорящего момента, образуемого полем по отношению к арматуре. По факту это тот же синхронный двигатель, в котором поворот ротора идет в соответствии с полем статора. Недостатком является снижение величины вращающего момента. Шаг для реактивного двигателя колеблется от 5 до 15°.
С постоянными магнитами
В этом случае подвижный элемент шагового двигателя собирается из постоянного магнита, в котором может быть два и большее количеством полюсов. Вращение ротора обеспечивается притяжением или отталкиванием магнитных полюсов электрическим полем при подаче напряжения в соответствующие обмотки. Для этой конструкции угловой шаг составляет 45-90°.
С постоянным магнитом
Гибридные
Был разработан с целью объединения лучших качеств двух предыдущих моделей, за счет чего агрегат обладает меньшим углом и шагом. Его ротор выполнен в виде цилиндрического постоянного магнита, который намагничен по продольной оси. Конструктивно это выглядит как два круглых полюса, на поверхности которых расположены зубцы ротора из магнитомягкого материала. Такое решение позволило обеспечить отличный удерживающий и крутящий момент.
По виду обмоток
На практике шаговый двигатель представляет собой многофазный мотор. Плавность работы в котором напрямую зависит от количества обмоток – чем их больше, тем плавне происходит вращение, но и выше стоимость. При этом крутящий момент от числа фаз не увеличивается, хотя для нормальной работы их минимальное число на статоре электродвигателя должно составлять хотя бы две. Количество фаз не определяет числа обмоток, так двухфазный шаговый двигатель может иметь четыре и более обмотки.
Униполярный
Униполярный шаговый двигатель отличается тем, что в схеме подключения обмотки имеется ответвление от средней точки. Благодаря чему легко меняются магнитные полюса. Недостатком такой конструкции является использование только одной половины доступных витков, из-за чего достигается меньший вращающий момент. Поэтому они отличаются большими габаритами.
Униполярный ШД
Для использования всей мощности катушки средний вывод оставляют не подключенным. Рассмотрите конструкции униполярных агрегатов, они могут содержать 5 и 6 выводов. Их количество будет зависеть от того, выводится срединный провод отдельно от каждой обмотки двигателя или они соединяются вместе.
Схема а) с различными, б) с одним выводом
Биполярный
Биполярный шаговый двигатель подключается к контроллеру через 4 вывода. При этом обмотки могут соединяться внутри как последовательно, так и параллельно. Рассмотрите пример его работы на рисунке.
Биполярный шаговый двигатель
В конструктивной схеме такого двигателя вы видите с одной обмоткой возбуждения в каждой фазе. Из-за этого смена направления тока требует использовать в электронной схеме специальные драйверы (электронные чипы, предназначенные для управления). Добиться подобного эффекта можно при помощи включения Н-моста. В сравнении с предыдущим, биполярное устройство обеспечивает тот же момент при гораздо меньших габаритах.
Использование
В машиностроении наибольшее распространение получили высокомоментные двухфазные гибридные шаговые электродвигатели с угловым перемещением 1,8°/шаг (200 шагов/оборот) или 0,9°/шаг (400 шаг/об). Точность выставления шага определяется качеством механической обработки ротора и статора электродвигателя. Производители современных шаговых электродвигателей гарантируют точность выставления шага без нагрузки до 5 % от величины шага.
Дискретность шага создаёт существенные вибрации, которые в ряде случаев могут приводить к снижению крутящего момента и возбуждению механических резонансов в системе. Уровень вибраций удаётся снижать при использовании режима дробления шага или при увеличении количества фаз.
Режим дробления шага (микрошаг) реализуется при независимом управлении током обмоток шагового электродвигателя. Управляя соотношением токов в обмотках можно зафиксировать ротор в промежуточном положении между шагами. Таким образом можно повысить плавность вращения ротора и добиться высокой точности позиционирования. Качество изготовления современных шаговых двигателей позволяет повысить точность позиционирования в 10—20 раз.
Шаговые двигатели стандартизованы (NEMA) по посадочным размерам и размеру фланца: NEMA 17, NEMA 23, NEMA 34 и др. — размер фланца 42, 57, 86 и 110 мм соответственно. Шаговые электродвигатели NEMA 23 могут создавать крутящий момент до 30 кгс⋅см, NEMA 34 до 120 кгс⋅см и до 210 кгс⋅см для двигателей с фланцем 110 мм.
Шаговый электродвигатель с интегрированным контроллером
Шаговые двигатели создают сравнительно высокий момент при низких скоростях вращения. Момент существенно падает при увеличении скорости вращения. Однако, динамические характеристики двигателя могут быть существенно улучшены при использовании драйверов со стабилизацией тока на основе ШИМ.
Шаговые электродвигатели применяются в приводах машин и механизмов, работающих в старт-стопном режиме, или в приводах непрерывного движения, где управляющее воздействие задаётся последовательностью электрических импульсов, например, в станках с ЧПУ. В отличие от сервоприводов, шаговые приводы позволяют получать точное позиционирование без использования обратной связи от датчиков углового положения.
Шаговые двигатели применяются в устройствах компьютерной памяти — НГМД, НЖМД, устройствах чтения оптических дисков.
Датчик поворота
Шаговые двигатели с постоянными магнитами могут использоваться в качестве датчиков угла поворота благодаря возникновению ЭДС на обмотках при вращении ротора. При этом, несмотря на удобство пользования и хорошую точность и повторяемость, необходимо учитывать, что:
- без вращения вала нет ЭДС; определить положение стоящего вала нельзя;
- возможна остановка вала в зоне неустойчивого равновесия (промежуточно между полюсами) ШД. Последующий пуск вала приведёт к тому, что, в зависимости от чувствительности компаратора, будет пропуск этого полюса, или два импульса вместо одного. В обоих случаях все дальнейшие отсчёты будут с ошибкой на один шаг. Для практически полного, но не 100 %, устранения такого поведения необходимо применить муфту с соответствующим гистерезисом (угловым люфтом).
Как подключить шаговый двигатель без контроллера
Шаговые двигатели присутствуют в автомобилях, принтерах, компьютерах, стиральных машинах, электробритвах и многих других устройствах из повседневного быта. Однако многие радиолюбители до сих пор не знают, как заставить такой мотор работать и что он вообще из себя представляет. Итак, давайте узнаем, как использовать шаговый двигатель.
Шаговые двигатели являются частью класса моторов, известных как безщеточные двигатели. Обмотки шагового двигателя являются частью статора. На роторе расположен постоянный магнит или, для случаев с переменным магнитным сопротивлением, зубчатый блок из магнитомягкого материала. Все коммутации производятся внешними схемами. Обычно система мотор — контроллер разрабатывается так, чтобы была возможность вывода ротора в любую, фиксированную позицию, то есть система управляется по положению. Цикличность позиционирования ротора зависит от его геометрии.
Схема униполярных и биполярных шаговых двигателей
Вначале рассмотрим униполярный шаговый двигатель, ввиду простоты управления. В таком моторе ток в обмотке всегда течет в одном направлении. Это упрощает метод управления, в отличие от биполярного, где управление должно обеспечивать изменение полярности катушек шагового двигателя путем изменения направления тока через обмотку на противоположное.
Двух переключателей достаточно, чтобы построить простейший драйвер шагового двигателя, как показано на рисунке. Здесь используем 6-проводный униполярный двигатель. Также можно сказать, что двигатель в этом случае управляется однополярно, за счет использования средней обмотки катушки и постоянного напряжения питания на нее.
Переключая данные переключатели в последовательности S1, S2, S1, S2, S1, S2… заметим, что двигатель вращается. Рисунок выше иллюстрирует важный принцип управления: обе обмотки не могут питаться от одной пары одновременно. Каждое изменение переключателя поворачивает ротор на один шаг. Чем быстрее начнем переключать переключатели в последовательности S1, S2, S1, S2…, тем быстрее начнет вращаться ротор.
Подключение переключателей к катушкам шагового двигателя
Скорость шагового двигателя зависит не от величины напряжения, а от скорости подключения питания к отдельным обмоткам. Чтобы добиться полного вращения ротора с 200-шаговым двигателем, надо изменить положение каждого переключателя 100 раз, то есть выполнить до 200 последовательностей для двух переключателей. Это уже говорит о том, что шаговые двигатели не могут работать на высокой скорости. Из этого следует, что шаговые двигатели можно назвать «цифровыми двигателями», поскольку для вращения ротора необходимо переключать переключатели в соответствующей последовательности.
В нашем случае последовательность переключений также определяет направление вращения шагового двигателя. Когда меняем последовательность включения переключателей, то меняем и направление вращения, например S2, S1, S2, S1, S2, S1… влево, S1, S2, S1, S2, S1, S2… вправо. В этом примере есть двухпозиционные переключатели, которые всегда обеспечивают питание двух из четырех обмоток шагового двигателя в данный момент. Но использование трехпозиционных переключателей дает гораздо больше возможностей.
Опять же, обе обмотки никогда не питаются от одной пары, что является обязательным принципом управления шаговым двигателем. Благодаря трехпозиционным переключателям можно реализовать, например, полушаговое управление, благодаря разнообразию переключений. Одновременно могут быть под напряжением две, одна или ни одной из обмоток.
Упрощенная схема управления униполярным шаговым двигателем
Чтобы управлять таким мотором, надо обеспечить соответствующую последовательность импульсов. Например, только одна из четырех обмоток шагового двигателя находится под напряжением одновременно (это своего рода волновое управление). На каждый цикл двигателя подается питание на одну из четырех катушек униполярного шагового двигателя. Вращение его будет выглядеть так:
Вращение униполярного шагового двигателя в последовательных тактах цикла управления волной
Управляющая последовательность A +, B +, A-, B- повторяется каждые четыре импульса тактового генератора. Этот тип управления называется однофазным или волновым. Это полный шаг управления, потому что двигатель выполняет один полный ход (шаг) с одним импульсом генератора.
Самый простой способ изменить направление — поменять местами одну пару проводов катушки (поменять местами, например, B + с B — и B — с B +), затем дадим последовательность A +, B -, A -, B + импульсы, он вращает двигатель в противоположном направлении. Так управление направлением реализовано в некоторых контроллерах шаговых двигателей. Самый простой способ изменить последовательность импульсов — использовать, например, реле.
Форма волны (однофазная) импульсная последовательность драйвера
Упрощенная схема однофазного (волнового) регулятора с изменением направления вращения
Несомненное преимущество униполярных шаговых двигателей — простота управления. Но это связано с волновым управлением, с использованием только половины обмотки за раз, одна из них всегда не используется. Используется только 1/4 всех обмоток шагового двигателя, что значительно снижает максимальную производительность.