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

Автор работы: Пользователь скрыл имя, 20 Декабря 2013 в 03:21, доклад

Краткое описание

Существуют три основных типа шаговых двигателей: двигатели с переменным магнитным сопротивлением; двигатели с постоянными магнитами; гибридные двигатели.
Определить тип двигателя можно даже на ощупь: при вращении вала обесточенного двигателя с постоянными магнитами (или гибридного) чувствуется переменное сопротивление вращению, двигатель вращается как бы щелчками. В то же время вал обесточенного двигателя с переменным магнитным сопротивлением вращается свободно. Гибридные двигатели являются дальнейшим усовершенствованием двигателей с постоянными магнитами и по способу управления ничем от них не отличаются.

Прикрепленные файлы: 1 файл

Виды шаговых двигателей.doc

— 983.00 Кб (Скачать документ)

 

Как простые ключи, так и H-мосты  могут составлять часть ключевого  стабилизатора тока. Схема управления ключами может быть выполнена  на дискретных компонентах или в виде специализированной микросхемы. Довольно популярной микросхемой, реализующей ШИМ-стабилизацию тока, является L297 фирмы SGS-Thomson. Совместно с микросхемой мостового драйвера L293 или L298 они образуют законченную систему управления для шагового двигателя (рис. 28).

Рис. 28. Типовая схема включения  микросхем L297 и L298N.

 

Микросхема L297 сильно разгружает управляющий  микроконтроллер, так как от него требуется только тактовая частота CLOCK (частота повторения шагов) и  несколько статических сигналов: DIRECTION – направление (сигнал внутренне синхронизирован, переключать можно в любой момент), HALF/FULL – полушаговый/полношаговый режим, RESET – устанавливает фазы в исходное состояние (ABCD = 0101), ENABLE – разрешение работы микросхемы, V ref – опорное напряжение, которое задает пиковую величину тока при ШИМ-регулировании. Кроме того, имеется несколько дополнительных сигналов. Сигнал CONTROL задает режим работы ШИМ-регулятора. При его низком уровне ШИМ-регулирование происходит по выходам INH1, INH2, а при высоком – по выходам ABCD. SYNC – выход внутреннего тактового генератора ШИМ. Он служит для синхронизации работы нескольких микросхем. Также может быть использован как вход при тактировании от внешнего генератора. HOME – сигнал начального положения (ABCD = 0101). Он используется для синхронизации переключения режимов HALF/FULL. В зависимости от момента перехода в полношаговый режим микросхема может работать в режиме с одной включенной фазой или с двумя включенными фазами.

 

Ключевое регулирование реализуют и многие другие микросхемы.  Некоторые микросхемы обладают теми или иными особенностями, например драйвер LMD18T245 фирмы National Semiconductor не требует применения внешнего датчика тока, так как он реализован внутри на основе одной ячейки ключевого МОП-транзистора.

 

Некоторые микросхемы предназначены  специально для работы в микрошаговом режиме. Примером может служить микросхема A3955 фирмы Allegro. Она имеет встроенный 3-битный нелинейный ЦАП для задания  изменяющегося по синусоидальному закону тока фазы.

Рис. 29. Ток и вектор смещения ротора.

 

Смещение ротора в зависимомти  от токов фаз, которые сформированы этим 3-битным ЦАПом, показано на рис. 29. Микросхема A3972 имеет встроенный 6-битный линейный ЦАП.

 

Выбор типа драйвера

 

Максимальный момент и мощность, которую может обеспечить на валу шаговый двигатель, зависит от размеров двигателя, условий охлаждения, режима работы (отношения работа/пауза), от параметров обмоток двигателя и  от типа применяемого драйвера. Тип  применяемого драйвера сильно влияет на мощность на валу двигателя. При одной и той же рассеиваемой мощности драйвер с импульсной стабилизацией тока обеспечивает выигрыш в моменте на некоторых скоростях до 5 – 6 раз, по сравнению с питанием обмоток номинальным напряжением. При этом также расширяется диапазон допустимых скоростей.

 

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

 

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

 

Практический пример контроллера шагового двигателя на основе микроконтроллера семейства AVR

 

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

 

Предлагаемый контроллер предназначен для управления униполярным шаговым  двигателем со средним током каждой обмотки до 2.5А. Контроллер может использоваться с распространенными шаговыми двигателями типа ДШИ-200-1, -2, -3. Его также можно использовать и для управления менее мощными двигателями, например теми, что применялись для позиционирования головок в 5-дюймовых дисководах. При этом схему можно упростить, отказавшись от параллельного включения ключевых транзисторов и от ключевой стабилизации тока, так как для маломощных двигателей достаточно простого L/R-питания.

Рис. 30. Принципиальная схема контроллера шагового двигателя.

 

Основой устройства (рис. 30) является микроконтроллер U1 типа AT90S2313 фирмы Atmel. Сигналы управления обмотками двигателя  формируются на портах PB4 – PB7 программно. Для коммутации обмоток используются по два включенных параллельно полевых транзистора типа КП505А, всего 8 транзисторов (VT1 – VT8). Эти транзисторы имеют корпус TO-92 и могут коммутировать ток до 1.4А, сопротивление канала составляет около 0.3 ома. Для того, чтобы транзисторы оставались закрытыми во время действия сигнала «сброс» микроконтроллера (порты в это время находятся в высокоимпедансном состоянии), между затворами и истоками включены резисторы R11 – R14. Для ограничения тока перезарядки емкости затворов установлены резисторы R6 – R9. Данный контроллер не претендует на высокие скоростные характеристики, поэтому вполне устраивает медленный спад тока фаз, который обеспечивается шунтированием обмоток двигателя диодами VD2 – VD5. Для подключения шагового двигателя имеется 8-контактный разъем XP3, который позволяет подключить двигатель, имеющий два отдельных вывода от каждой обмотки (как, например, ДШИ-200). Для двигателей с внутренним соединением обмоток один или два общих контакта разъема останутся свободными.

 

Необходимо отметить, что контроллер может быть использован для управления двигателем с большим средним током фаз. Для этого только необходимо заменить транзисторы VT1 – VT8 и диоды VD2 – VD5 более мощными. Причем в этом случае параллельное включение транзисторов можно не использовать. Наиболее подходящими являются МОП-транзисторы, управляемые логическим уровнем. Например, это КП723Г, КП727В и другие.

 

Стабилизация тока осуществляется с помощью ШИМ, которая тоже реализована  программно. Для этого используются два датчика тока R15 и R16. Сигналы, снятые с датчиков тока, через ФНЧ R17C8 и R18C9 поступают на входы компараторов U3A и U3B. ФНЧ предотвращают ложные срабатывания компараторов вследствие действия помех. На второй вход каждого компаратора должно быть подано опорное напряжение, которое и определяет пиковый ток в обмотках двигателя. Это напряжение формируется микроконтроллером с помощью встроенного таймера, работающего в режиме 8-битной ШИМ. Для фильтрации сигнала ШИМ используется двухзвенный ФНЧ R19C10R22C11. Одновременно резисторы R19, R22 и R23 образуют делитель, который задает масштаб регулировки токов фаз. В данном случае максимальный пиковый ток, соответствующий коду 255, выбран 5.11А, что соответствует напряжению 0.511В на датчиках тока. Учитывая тот факт, что постоянная составляющая на выходе ШИМ меняется от 0 до 5В, необходимый коэффициент деления равен примерно 9.7. Выходы компараторов подключены к входам прерываний микроконтроллера INT0 и INT1.

 

Для управления работой двигателя  имеются два логических входа: FWD (вперед) и REW (назад), подключенных к разъему XP1. При подаче НИЗКОГО логического уровня на один из этих входов, двигатель начинает вращаться на заданной минимальной скорости, постепенно разгоняется с заданным постоянным ускорением. Разгон завершается, когда двигатель достигает заданной рабочей скорости. Если подается команда изменения направления вращения, двигатель с тем же ускорением тормозится, затем реверсируется и снова разгоняется.

 

 

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

 

Командные входы и входы концевых выключателей защищены от перенапряжений цепочками R1VD6, R2VD7, R3VD8 и R4VD9, состоящими из резистора и стабилитрона.

 

Питание микроконтроллера формируется  с помощью микросхемы стабилизатора 78LR05, которая одновременно выполняет функции монитора питания. При понижении напряжения питания ниже установленного порога эта микросхема формирует для микроконтроллера сигнал «сброс». Питание на стабилизатор подается через диод VD1, который вместе с конденсатором C6 уменьшает пульсации, вызванные коммутациями относительно мощной нагрузки, которой является шаговый двигатель. Питание на плату подается через 4-контактный разъем XP4, контакты которого задублированы.

 

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

 

Главной задачей программы является формирование импульсных последовательностей  для 4-х обмоток двигателя. Поскольку  для этих последовательностей временные соотношения являются критичными, формирование выполняется в обработчике прерывания таймера 0. Можно сказать, основную работу программа делает именно в этом обработчике. Блок-схема обработчика приведена на рис. 31.

Рис. 31. Блок-схема обработчика прерывания таймера 0.

 

Несомненно, было бы удобнее использовать таймер 1, так как он 16-разрядный  и способен вызывать периодические  прерывания по совпадению с автоматическим обнулением. Однако он занят формированием  с помощью ШИМ опорного напряжения для компараторов. Поэтому приходится перезагружать таймер 0 в прерывании, что требует некоторой корректировки загружаемой величины и вызывает некоторый джиттер, который, однако, на практике не мешает. В качестве основной временной базы выбран интервал 25мкс, который и формируется таймером. С такой дискретностью могут формироваться временные последовательности фаз, такой же период имеет и ШИМ стабилизации тока в фазах двигателя.

 

Для формирования периода повторения шагов используется программный 16-разрядный  таймер STCNT. В отличие от таймера 0, его загрузочная величина не является константой, так как именно она определяет скорость вращения двигателя. Таким образом, переключение фаз происходит только при переполнении программного таймера.

 

Последовательность чередования фаз задана таблично. В памяти программ микроконтроллера имеются три разных таблицы: для полношагового режима без перекрытия фаз, полношагового с перекрытием и для полушагового режима. Все таблицы имеют одинаковую длину 8 байт. Нужная таблица в начале работы загружается в ОЗУ, что позволяет наиболее просто переходить между разными режимами работы двигателя. Выборка значений из таблицы происходит с помощью указателя PHASE, поэтому переключение направления вращения двигателя тоже осуществляется очень просто: для вращения вперед требуется инкрементировать указатель, а для вращения назад – декрементировать.

 

Самая «главная» переменная в программе  – это 24-битная знаковая переменная VC, которая содержит значение текущей  скорости. Знак этой переменной определяет направление вращения, а значение – частоту следования шагов. Нулевое значение этой переменной говорит о том, что двигатель остановлен. Программа в этом случае выключает ток всех фаз, хотя во многих приложениях в этой ситуации требуется оставить включенными текущие фазы и лишь несколько уменьшить их ток, обеспечив этим удержание положения двигателя. При необходимости такое изменение логики работы программы  сделать очень просто.

 

Таким образом, в случае переполнения программного таймера STCNT происходит анализ значения переменной VC, в случае положительного значения указатель PHASE инкрементируется, а в случае отрицательного – декрементируется. Затем из таблицы выбирается очередная комбинация фаз, которая выводится в порт. В случае нулевого значения VC указатель PHASE не изменяется, и в порт выводятся все нулевые значения.

 

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

 

Для осуществления ШИМ-стабилизации тока фазы должны периодически включаться, а затем, при достижении током  заданного уровня, выключаться. Периодическое  включение производится в прерывании таймера 0, для чего даже в случае отсутствия переполнения программного таймера STCNT в порт выводится текущая комбинация фаз. Происходит это с периодом 25мкс (что соответствует частоте ШИМ 40кГц). Выключением фаз управляют компараторы, выходы которых подключены к входам прерывания INT0 и INT1. Прерывания разрешаются после того, как ток фаз включается, и запрещаются сразу после переключения компараторов. Это исключает их повторную обработку. В обработчиках прерываний происходит только отключение соответствующих фаз (рис. 32).

Рис. 32. Блок-схема обработчика прерываний INT0 и INT1.

 

Процессы, происходящие при ШИМ-стабилизации тока, показаны на рис. 33. Особо следует  отметить, что ток в датчике  тока имеет прерывистый характер даже в том случае, если ток обмотки  не прерывается. Это связано тем, что во время спада тока его путь не проходит через датчик тока (а проходит через диод).

Рис. 33. Процесс ШИМ-стабилизации тока.

 

Нужно сказать, что аналоговая часть  системы ШИМ-стабилизации тока фаз  двигателя является довольно «капризной». Дело в том, что сигнал, снимаемый  с датчика тока, содержит большое количество помех. Помехи возникают в основном в моменты коммутации обмоток двигателя, причем как «своей», так и «чужой» фазы. Для правильной работы схемы требуется корректная разводка печатной платы, особенно это касается земляных проводников. Возможно, придется подобрать номиналы ФНЧ на входе компаратора или даже ввести в компаратор небольшой гистерезис. Как уже отмечалось выше, при управлении маломощными двигателями от ШИМ-стабилизации тока можно вовсе отказаться, применив обычную L/R-схему питания обмоток. Для исключения ШИМ-стабилизации достаточно просто не подключать входы INT0 и INT1 микроконтроллера, естественно, при этом можно вообще не устанавливать компаратор и датчики тока.

Информация о работе Виды шаговых двигателей