Рис. 25. Пример реализации быстрого спада тока для униполярного двигателя.
При ключевом регулировании величина пульсаций тока зависит от скорости его спада. Здесь возможны разные вырианты. Если обеспечить закорачивание обмотки диодом, будет реализован медленный спад тока. Это приводит к уменьшению амплитуды пульсаций тока, что является весьма желательным, особенно при работе двигателя в микрошаговом режиме. Для данного уровня пульсаций медленный спад тока позволяет работать на более низких частотах ШИМ, что уменьшает нагрев двигателя. По этим причинам медленный спад тока широко используется. Однако существует несколько причин, по которым медленное нарастание тока не всегда является оптимальным: во-первых, из-за отрицательной обратной ЭДС, ввиду малого напряжения на обмотке во время спада тока, реальный средний ток обмотки может оказаться завышенным; во-вторых, когда требуется резко уменьшить ток фазы (например, в полушаговом режиме), медленный спад не позволит сделать это быстро; в-третьих, когда требуется установить очень низкое значение тока фазы, регулирование может нарушиться ввиду существования ограничения на минимальное время включенного состояния ключей.
Высокая скорость спада тока, которая реализуется путем замыкания обмотки на источник питания, приводит к повышенным пульсациям. Вместе с тем, устраняются недостатки, свойственные медленному спаду тока. Однако при этом точность поддержания среднего тока меньше, также больше потери. Наиболее совершенные микросхемы драйверов имеют возможность регулировать скорость спада тока.
Практическая реализация драйверов
Драйвер шагового двигателя должен решать две основные задачи: это формирование необходимых временных последовательностей сигналов и обеспечение необходимого тока в обмотках. В интегральных реализациях иногда эти задачи выполняются разными микросхемами. Примером может служить комплект микросхем L297 и L298 фирмы SGS-Thomson. Микросхема L297 содержит логику формирования временных последовательностей, а L298 представляет собой мощный сдвоенный H-мост. К сожалению, существует некоторая путаница в терминологии относительно подобных микросхем. Понятие «драйвер» часто применяют ко многим микросхемам, даже если их функции сильно различаются. Иногода микросхемы логики называют «трансляторами». В этой статье далее будет использоваться следующая терминология: «контроллер» - микросхема, ответственная за формирование временных последовательностей; «драйвер» - мощная схема питания обмоток двигателя. Однако термины «драйвер» и «контроллер» могут также обозначать законченное устройство управления шаговым двигателем. Необходимо отметить, что в последнее время все чаще контроллер и драйвер объединяются в одной микросхеме. На практике можно обойтись и без специализированных микросхем. Например, все функции контроллера можно реализовать программно, а в качестве драйвера применить набор дискретных транзисторов. Однако при этом микроконтроллер будет сильно загружен, а схема драйвера может получится громоздкой. Несмотря на это, в некоторых случаях такое решение будет экономически выгодным.
Самый простой драйвер требуется для управления обмотками униполярного двигателя. Для этого подходят простейшие ключи, в качестве которых могут быть использованы биполярные или полевые транзисторы. Достаточно эффективны мощные МОП-транзисторы, управляемые логическим уровнем, такие как IRLZ34, IRLZ44, IRL540. У них сопротивление в открытом состоянии менее 0.1ом и допустимый ток порядка 30А. Эти транзисторы имеют отечественные аналоги КП723Г, КП727В и КП746Г соответственно. Существуют также специальные микросхемы, которые содержат внутри несколько мощных транзисторных ключей. Примером может служить микросхема ULN2003 фирмы Allegro (наш аналог К1109КТ23), которая содержит 7 ключей с максимальным током 0.5 А. Принципиальная схема одной ячейки этой микросхемы приведена на рис. 26.
Рис. 26. Принципиальная схема одной ячейки микросхемы ULN2003.
Аналогичные микросхемы выпускаются многими фирмами. Необходимо отметить, что эти микросхемы пригодны не только для питания обмоток шаговых двигателей, но и для питания любых других нагрузок. Кроме простых микросхем драйверов существуют и более сложные микросхемы, имеющие встроенный контроллер, PWM-регулировку тока и даже ЦАП для микрошагового режима. Как уже отмечалось ранее, для управления биполярными двигателями требуются более сложные схемы, такие как H-мосты. Такие схемы тоже можно реализовать на дискретных элементах, хотя в последнее время все чаще они реализуются на интегральных схемах. Пример дискретной реализации показан на рис. 27.
Рис. 27. Реализация мостового драйвера на дискретных компонентах.
Такой H-мост управляется с помощью двух сигналов, поэтому он не позволяет обеспечить всех возможных комбинаций. Обмотка запитана, когда уровни на входах разные и закорочена, когда уровни одинаковые. Это позволяет получить только медленный спад тока (динамическое торможение). Мостовые драйверы в интегральном исполнении выпускаются многими фирмами. Примером могут служить L293 (КР1128КТ3А) и L298 фирмы SGS-Thomson. До недавнего времени большое количество микросхем для управления шаговыми двигателя выпускала фирма Ericsson. Однако 11 июня 1999 года она передала производство своих микросхем индустриального назначения фирме New Japan Radio Company (New JRC). При этом обозначения микросхем помянялись с PBLxxxx на NJMxxxx. Как простые ключи, так и 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.
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9