Электропривод с шаговым двигателем
Система управления с шаговыми двигателями, контроллер шагового двигателя. Двигатели с переменным магнитным сопротивлением. Двигатели с постоянными магнитами. Гибридные двигатели. Биполярные и униполярные модификации. Режимы работы и питание обмоток.
Рубрика | Физика и энергетика |
Вид | лекция |
Язык | русский |
Дата добавления | 20.11.2010 |
Размер файла | 1,5 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Разогнать!
Для того, чтобы работать на большой скорости из области разгона (рис. 17), необходимо стартовать на низкой скорости из области старта, а затем выполнить разгон. При остановке нужно действовать в обратном порядке: сначала выполнить торможение, и только войдя в область старта можно прекратить подачу управляющих импульсов. В противном случае произойдет потеря синхронности и положение ротора будет утеряно. Использование разгона и торможения позволяет достичь значительно больших скоростей - в индустриальных применениях используются скорости до 10000 полных шагов в секунду. Необходимо отметить, что непрерывная работа шагового двигателя на высокой скорости не всегда допустима ввиду нагрева ротора. Однако высокая скорость кратковременно может быть использована при осуществлении позиционирования. При разгоне двигатель проходит ряд скоростей, при этом на одной из скоростей можно столкнуться с неприятным явлением резонанса. Для нормального разгона желательно иметь нагрузку, момент инерции которой как минимум равен моменту инерции ротора. На ненагруженном двигателе явление резонанса проявляется наиболее сильно. Подробно методы борьбы с этим явлением будут описаны ниже.
При осуществлении разгона или торможения важно правильно выбрать закон изменения скорости и максимальное ускорение. Ускорение должно быть тем меньше, чем выше инерционность нагрузки. Критерий правильного выбора режима разгона - это осуществление разгона до нужной скорости для конкретной нагрузки за минимальное время. На практике чаще всего применяют разгон и торможение с постоянным ускорением. Реализация закона, по которому будет производится ускорение или торможение двигателя, обычно производится программно управляющим микроконтроллером, так как именно микроконтроллер обычно является источником тактовой частоты для драйвера шагового двигателя. Хотя раньше для этих целей применялись управляемые напряжением генераторы или пограммируемые делители частоты. Для генерации тактовой частоты удобно использовать аппаратный таймер, который имеется в составе практически любого микроконтроллера. Когда двигатель вращается с постоянной скоростью, достаточно загрузить в таймер постоянное значение периода повторения шагов (длительность шага). Если же двигатель разгоняется или тормозится, этот период меняется с каждым новым шагом. При разгоне или торможении с постоянным ускорением частота повторения шагов должна изменяться линейно, соответствено значение периода, которое необходимо загружать в таймер, должно меняться по гиперболическому закону.
Для наиболее общего случая требуется знать зависимость длительности шага от текущей скорости. Количество шагов, которое осуществляет двигатель при разгоне за время t равно:
N = 1/2At2+Vt,
где N - число шагов, t - время, V - скорость, выраженная в шагах в единицу времени, A - ускорение, выраженное в шагах, деленных на время в квадрате.
Для одного шага N = 1, тогда длительность шага
t1 = T = (-V+(V2+2A)0.5)/A
В результате осуществления шага скорость становится равной
Vnew = (V2+2A)0.5
Вычисления по приведенным формулам довольно трудоемки и требуют значительных затрат процессорного времени. В то же время, они позволяют изменять значение ускорения в произвольный момент. Расчеты можно существенно упростить, если потребовать постоянства ускорения во время разгона и торможения. В этом случае можно записать зависимость длительности шага от времени разгона: V = V0+At, где V - текущая скорость, V0 - начальная скорость (минимальная скорость, с которой начинается разгон), A - ускорение; 1/T = 1/T0+At, где T - длительность шага, T0 - начальная длительность шага, t - текущее время;
Откуда T = T0/(1+T0At)
Вычисления по этой формуле осуществить значительно проще, однако для того, чтобы поменять значение ускорения, требуется остановить двигатель.
Резонанс
Шаговым двигателям свойственен нежелательный эффект, называемый резонансом. Эффект проявляется в виде внезапного падения момента на некоторых скоростях. Это может привести к пропуску шагов и потере синхронности. Эффект проявляется в том случае, если частота шагов совпадает с собственной резонансной частотой ротора двигателя.
Когда двигатель совершает шаг, ротор не сразу устанавливается в новую позицию, а совершает затухающие колебания. Дело в том, что систему ротор - магнитное поле - статор можно рассматривать как пружинный маятник, частота колебаний которого зависит от момента инерции ротора (плюс нагрузки) и величины магнитного поля. Ввиду сложной конфигурации магнитного поля, резонансная частота ротора зависит от амплитуды колебаний. При уменьшении амплитуды частота растет, приближаясь к малоамплитудной частоте, которая более просто вычисляется количественно. Эта частота зависит от угла шага и от отношения момента удержания к моменту инерции ротора. Больший момент удержания и меньший момент инерции приводят к увеличению резонансной частоты.
Резонансная частота вычисляется по формуле:
F0 = (N*TH/(JR+JL))0.5/4*pi,
где F0 - резонансная частота, N - число полных шагов на оборот, TH - момент удержания для используемого способа управления и тока фаз, JR - момент инерции ротора, JL - момент инерции нагрузки.
Необходимо заметить, что резонансную частоту определяет момент инерции собственно ротора двигателя плюс момент инерции нагрузки, подключенной к валу двигателя. Поэтому резонансная частота ротора ненагруженного двигателя, которая иногда приводится среди параметров, имеет маленькую практическую ценность, так как любая нагрузка, подсоединенная к двигателю, изменит эту частоту. На практике эффект резонанса приводит к трудностям при работе на частоте, близкой к резонансной. Момент на частоте резонанса равен нулю и без принятия специальных мер шаговый двигатель не может при разгоне пройти резонансную частоту. В любом случае, явление резонанса способно существенно ухудшить точностные характеристики привода.
В системах с низким демпфированием существует опасность потери шагов или повышения шума, когда двигатель работает вблизи резонансной частоты. В некоторых случаях проблемы могут возникать и на гармониках частоты основного резонанса.
Когда используется не микрошаговый режим, основной причиной появления колебаний является прерывистое вращение ротора. При осуществлении шага ротору толчком сообщается некоторая энергия. Этот толчок возбуждает колебания. Энергия, которая сообщается ротору в полушаговом режиме, составляет около 30% от энергии полного шага. Поэтому в полушаговом режиме амплитуда колебаний существенно меньше. В микрошаговом режиме с шагом 1/32 основного при каждом микрошаге сообщается всего около 0.1% от энергии полного шага. Поэтому в микрошаговом режиме явление резонанса практически незаметно.
Для борьбы с резонансом можно использовать различные методы. Например, применение эластичных материалов при выполнении механических муфт связи с нагрузкой. Эластичный материал способствует поглощению энергии в резонансной системе, что приводит к затуханию паразитных колебаний. Другим способом является применение вязкого трения. Выпускаются специальные демпферы, где внутри полого цилиндра, заполненного вязкой кремнийорганической смазкой, может вращаться металлический диск. При вращении этой системы с ускорением диск испытывает вязкое трение, что эффективно демпфирует систему. Существуют электрические методы борьбы с резонансом. Колеблющийся ротор приводит к возникновению в обмотках статора ЭДС. Если закоротить обмотки, которые на данном шаге не используются, это приведет к демпфированию резонанса. И, наконец, существуют методы борьбы с резонансом на уровне алгоритма работы драйвера. Например, можно использовать тот факт, что при работе с двумя включенными фазами резонансная частота примерно на 20% выше, чем с одной включенной фазой. Если резонансная частота точно известна, то ее можно проходить, меняя режим работы. Если это возможно, при старте и остановке нужно использовать частоты выше резонансной. Увеличение момента инерции системы ротор-нагрузка уменьшает резонансную частоту. Однако, самой эффективной мерой для борьбы с резонансом является применение микрошагового режима.
Чем же его кормить?
Для питания обычного двигателя постоянного тока требуется лишь источник постоянного напряжения, а необходимые коммутации обмоток выполняются коллектором. С шаговым двигателем всё сложнее. Все комутации должен выполнять внешний контроллер. В настоящее время примерно в 95% случаев для управления шаговыми двигателями используются микроконтроллеры. В простейшем случае для управления шаговым двигателем в полношаговом режиме требуются всего два сигнала, сдвинутые по фазе на 90 градусов. Направление вращения зависит от того, какая фаза опережает. Скорость определяется часотой следования импульсов. В полушаговом режиме всё несколько сложнее и требуется уже минимум 4 сигнала. Все сигналы управления шаговым двигателем можно сформировать программно, однако это вызовет большую загрузку микроконтроллера. Поэтому чаще применяют специальные микросхемы драйверов шагового двигателя, которые уменьшают количество требуемых от процессора динамических сигналов. Типично эти микросхемы требуют тактовую частоту, которая является частотой повторения шагов и статический сигнал, который задает направление. Иногда еще присутствует сигнал включения полушагового режима. Для микросхем драйверов, которые работают в микрошаговом режиме, требуется большее количество сигналов. Распространенным является случай, когда необходимые последовательности сигналов управления фазами формируются с помощью одной микросхемы, а необходимые токи фаз обеспечивает другая микросхема. Хотя в последнее время появляется все больше драйверов, реализующих все функции в одной микросхеме. Мощность, которая требуется от драйвера, зависит от размеров двигателя и составляет доли ватта для маленьких двигателей и до 10-20 ватт для больших двигателей. Максимальный уровень рассеиваемой мощности ограничен нагревом двигателя. Максимальная рабочая температура обычно указывается производителем, но можно приблизительно считать, что нормальной является температура корпуса 90 градусов. Поэтому при конструировании устройств с шаговыми двигателями, непрерывно работающими на максимальном токе, необходимо принимать меры, исключающие касание корпуса двигателя обслуживающим персоналом. В отдельных случаях возможно применение охлаждающего радиатора. Иногда это позволяет применить двигатель меньших размеров и добиться лучшего отношения мощность/стоимость. Для данного размера шагового двигателя место, занимаемое обмотками, ограничено. Поэтому очень важно сконструировать драйвер так, чтобы для данных параметров обмоток обеспечить наилучшую эффективность.
Схема драйвера должна выполнять три главных задачи:
· иметь возможность включать и выключать ток в обмотках, а также менять его направление
· поддерживать заданное значение тока
· обеспечивать как можно более быстрое нарастание и спад тока для хороших скоростных характеристик
Способы изменения направления тока
При работе шагового двигателя требуется изменение направления магнитного поля независимо для каждой фазы. Изменение направления магнитного поля может быть выполнено разными способами. В униполярных двигателях обмотки имеют отвод от середины или имеются две отдельные обмотки для каждой фазы. Направление магнитного поля меняется путем перключения половинок обмоток или целых обмоток. В этом случае требуются только два простых ключа A и B для каждой фазы (рис. 18).
Рис. 18. Питание обмотки униполярного двигателя.
В биполярных двигателях направление меняется путем переполюсовки выводов обмоток. Для такой переполюсовки требуется полный H-мост (рис. 19). Управление ключами в том и другом случае должно осуществляться логической схемой, реализующей нужный алгоритм работы. Предпологается, что источник питания схем имеет номинальное для обмоток двигателя напряжение.
Рис. 19. Питание обмотки биполярного двигателя.
Это простейший способ управления током обмоток, и как будет показано в дальнейшем, он существенно ограничивает возможности двигателя. Нужно отметить, что при раздельном управлении транзисторами H-моста возможны ситуации, когда источник питания закорочен ключами. Поэтому логическая схема управления должна быть построена таким образом, чтобы исключить эту ситуацию даже в случае сбоев управляющего микроконтроллера. Обмотки двигателя представляют собой индуктивность, а это значит, что ток не может бесконечно быстро нарастать или бесконечно быстро спадать без привлечения бесконечной разности потенциалов. При подключении обмотки к источнику питания ток будет с некоторой скоростью нарастать, а при отключении обмотки произойдет выброс напряжения. Этот выброс способен повредить ключи, в качестве которых используются биполярные или полевые транзисторы. Для ограничения этого выброса устанавливают специальные защитные цепочки. На схемах рис. 18 и 19 эти цепочки образованы диодами, значительно реже применяют конденсаторы или их комбинацию с диодами. Применение конденсаторов вызывает появление электрического резонанса, что может вызвать увеличение момента на некоторой скорости. На рис. 18 потребовалось 4 диода по той причине, что половинки обмоток униполярного двигателя расположены на общем сердечнике и сильно связаны между собой. Они работают как автотрансформатор и выбросы возникают на выводах обеих обмоток. Если в качестве ключей применены МОП-транзисторы, то достаточно только двух внешних диодов, так как у них внутри уже имеются диоды. В интегральных микросхемах, содержащих мощные выходные каскады с открытым коллектором, также часто имеются такие диоды. Кроме того, некоторые микросхемы, такие как ULN2003, ULN2803 и подобные имеют внутри оба защитных диода для каждого транзистора. Нужно отметить, что в случае применения быстродействующих ключей требуются сравнимые по быстродействию диоды. В случае применения медленных диодов требуется их шунтирование небольшими конденсаторами.
Стабилизация тока
Для регулировки момента требуется регулировать силу тока в обмотках. В любом случае, ток должен быть ограничен, чтобы не превысить рассеиваимую мощность на омическом сопротивлении обмоток. Более того, в полушаговом режиме ещё требуется в определенные моменты обеспечивать нулевое значение тока в обмотках, а в микрошаговом режиме вообще требуется задание разных значений тока. Для каждого двигателя производителем указывается номинальное рабочее напряжение обмоток. Поэтому простейший способ питания обмоток - это использование источника постоянного напряжения. В этом случае ток ограничен омическим сопротивлением обмоток и напряжением источника питания (рис. 20а), поэтому такой способ питания называют L/R-питанием. Ток в обмотке нарастает по экспоненциальному закону со скоростью, определяемой индуктивностью, активным сопротивлением обмотки и приложенным напряжением. При повышении частоты ток не достигает номинального значения и момент падает. Поэтому такой способ питания пригоден только при работе на малых скоростях и используется на практике только для маломощных двигателей.
Рис. 20. Питание обмотки номинальным напряжением (а) и использование ограничительного резистора (б).
При работе на больших скоростях требуется увеличивать скорость нарастания тока в обмотках, что возможно путем повышения напряжения источника питания. При этом максимальный ток обмотки должен быть ограничен с помощью дополнительного резистора. Например, если используется напряжение питание в 5 раз большее номинального, то требуется такой дополнительный резистор, чтобы общее сопротивление составило 5R, где R - омическое сопротивление обмотки (L/5R-питание). Этот способ питания обеспечивает более быстрое нарастание тока и как следствие, больший момент (рис. 20б). Однако он имеет существенный недостаток: на резисторе рассеивается дополнительная мощность. Большие габариты мощных резисторов, необходимость отвода тепла и повышенная необходимая мощность источника питания - всё это делает такой метод неэффективным и ограничивает область его применение небольшими двигателями мощностью 1 - 2 ватта. Нужно сказать, что до начала 80-х годов прошлого века параметры шаговых двигателей, приводимые производителями, относились именно к такому способу питания. Еще более быстрое нарастание тока можно получить, если использовать для питания двигателя генератор тока. Нарастание тока будет происходить линейно, это позволит быстрее достигать номинального значения тока. Тем более, что пара мощных резисторов может стоить дороже, чем пара мощных транзисторов вместе с радиаторами. Но, как и в предыдущем случае, генератор тока будет рассеивать дополнительную мощность, что делает эту схему питания неэффективной. Существует еще одно решение, обеспечивающее высокую скорость нарастания токи и низкую мощность потерь. Основано оно на применении двух источников питания.
Рис. 21. Питание обмотки двигателя ступенчатым напряжением.
В начале каждого шага кратковременно обмотки подключаются к более высоковольтному источнику, который обеспечивает быстрое нарастание тока (рис. 21). Затем напряжение питания обмоток уменьшается (момент времени t1 на рис. 21). Недостатком этого метода является необходимость двух ключей, двух источников питания и более сложной схемы управления. В системах, где такие источники уже есть, метод может оказаться достаточно дешёвым. Еще одной трудностью является невозможность определения момента времени t1 для общего случая. Для двигателя с меньшей индуктивностью обмоток скорость нарастания тока выше и при фиксированном t1 средний ток может оказаться выше номинального, что чревато перегревом двигателя. Еще одним методом стабилизации тока в обмотках двигателя является ключевое (широтно-импульсное) регулирование. Современные драйверы шаговых двигателей используют именно этот метод. Ключевой стабилизатор обеспечивает высокую скорость нарастания тока в обмотках вместе с простотой его регулирования и очень низкими потерями. Еще одним преимуществом схемы с ключевой стабилизацией тока является и то, что она поддерживает момент двигателя постоянным, независимо от колебаний напряжения питания. Это позволяет использовать простые и дешевые нестабилизированные источники питания.
Для обеспечения высокой скорости нарастания тока используют напряжение источника питания, в несколько раз превышающее номинальное. Путем регулировки скважности импульсов, среднее напряжение и ток поддерживаются на номинальном для обмотки уровне. Поддержание производится в результате действия обратной связи. Последовательно с обмоткой включается резистор - датчик тока R (рис. 22а). Падение напряжения на этом резисторе пропорционально току в обмотке. Когда ток достигает установленного значения, ключ выключается, что приводит к падению тока. Когда ток спадает до нижнего порога, ключ снова включается. Этот процесс повторяется периодически, поддерживая среднее значение тока постоянным.
Рис. 22. Различные схемы ключевой стабилизации тока.
Управляя величиной Uref можно регулировать ток фазы, например, увеличивать его при разгоне и торможении и снижать при работе на постоянной скорости. Можно также задавать его с помощью ЦАП в форме синусоиды, реализуя таким образом микрошаговый режим. Такой способ управления ключевым транзистором обеспечивает постоянную величину пульсаций тока в обмотке, которая определяется гистерезисом компаратора. Однако частота переключений будет зависеть от скорости изменения тока в обмотке, в частности, от ее индуктивности и от напряжения питания. Кроме того, две такие схемы, питающие разные фазы двигателя, не могут быть засинхронизированы, что может явиться причиной дополнительных помех.
От указанных недостатков свободна схема с постоянной частотой переключения (рис. 22б). Ключевым транзистором управляет триггер, который устанавливается специальным генератором. Когда триггер устанавливается, ключевой транзистор открывается, и ток фазы начинает расти. Вместе с ним растет и падение напряжения на датчике тока. Когда оно достигает опорного напряжения, компаратор переключается, сбрасывая триггер. Ключевой транзистор при этом выключается, и ток фазы начинает спадать до тех пор, пока триггер не будет вновь установлен генератором. Такая схема обеспечивает постоянную частоту коммутации, однако величина пульсаций тока не будет постоянной. Частота генератора обычно выбирается не менее 20кГц, чтобы двигатель не создавал слышимого звука. В то же время слишком высокая частота переключений может вызвать повышенные потери в сердечнике двигателя и потери на переключениях транзисторов. Хотя потери в сердечнике с повышением частоты растут не так быстро ввиду уменьшения амплитуды пульсаций тока с ростом частоты. Пульсации порядка 10% от среднего значения тока обычно не вызывают проблем с потерями. Подобная схема реализована внутри микросхемы L297 фирмы SGS-Thomson, применение которой сводит к минимуму количество внешних компонентов. Ключевое регулирование реализуют и другие специализированные микросхемы.
Рис. 23. Форма тока в обмотках двигателя для различных способов питания.
На рис. 23 показана форма тока в обмотках двигателя для трех способов питания. Наилучшим в смысле момента является ключевой метод. К тому же он обеспечивает высокий КПД и позволяет просто регулировать величину тока.
Быстрый и медленный спад тока
На рис. 19 были показаны конфигурации ключей в H-мосту для включения разных направлений тока в обмотке. Для выключения тока можно выключить все ключи H-моста или же оставить один ключ включенным (рис. 24). Эти две ситуации различаются по скорости спада тока в обмотке. После отключения индуктивности от источника питания ток не может мгновенно прекратится. Возникает ЭДС самоиндукции, имеющая противоположное источнику питания направление. При использовании транзисторов в качестве ключей необходимо использовать шунтирующие диоды, чтобы обеспечить проводимость в обе стороны. Скорость изменения тока в индуктивности пропорциональна приложенному напряжению. Это справедливо как для нарастания тока, так и для его спада. Только в первом случае источником энергии является источник питания, а во втором сама индуктивность отдает запасенную энергию. Этот процесс может происходить при разных условиях.
Рис. 24. Медленный и быстрый спад тока.
На рис. 24а показано состояние ключей H-моста, когда обмотка включена. Включены ключи A и D, направление тока показано стрелкой. На рис. 24б обмотка выключена, но ключ A включен. ЭДС самоиндукции закорачивается через этот ключ и диод VD3. В это время на выводах обмотки будет небольшое напряжение, равное прямому падению на диоде плюс падение на ключе (напряжение насыщения транзистора). Так как напряжение на выводах обмотки мало, малой будет и скорость изменения тока. Соответственно малой будет и скорость спадания магнитного поля. А это значит, еще некоторое время статор двигателя будет создавать магнитное поле, которого в это время быть не должно. На вращающийся ротор это поле будет оказывать тормозящее воздействие. При высоких скоростях работы двигателя этот эффект может серьезно помешать нормальной работе двигателя. Быстрое спадание тока при выключении является очень важным для высокоскоростных контроллеров, работающих в полушаговом режиме.
Возможен и другой способ отключения тока обмотки, когда размыкаются все ключи H-моста (рис 24в). При этом ЭДС самоиндукции закорачивается через диоды VD2, VD3 на источник питания. Это значит, что во время спада тока на обмотке будет напряжение, равное сумме напряжения источника питания и прямого падения на двух диодах. По сравнению с первым случаем, это значительно большее напряжение. Соответственно, более быстрым будет спад тока и магнитного поля. Такое решение, использующее напряжение источника питания для ускорения спада тока является наиболее простым, но не единственным. Нужно сказать, что в ряде случаев на источнике питания могут появиться выбросы, для подавления которых понадобятся специальные демферные цепочки. Безразлично, каким способом обеспечивается на обмотке повышенное напряжение во время спада тока. Для этого можно применить стабилитроны или варисторы. Однако на этих элементах будет рассеиваться дополнительная мощность, которая в первом случае отдавалась обратно в источник питания.
Для униполярного двигателя ситуация более сложная. Дело в том, что половинки обмотки, или две отдельных обмотки одной фазы сильно связаны между собой. В результате этой связи на закрывающемся транзисторе будут иметь место выбросы повышенной амплитуды. Поэтому транзисторы должны быть защищены специальными цепочками. Эти цепочки для обеспечения быстрого спада тока должны обеспечивать довольно высокое напряжение ограничения. Чаще всего применяются диоды вместе со стабилитронами или варисторы. Один из способов схемотехнической реализации показан на рис. 25.
Рис. 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.
Рис. 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 микроконтроллера, естественно, при этом можно вообще не устанавливать компаратор и датчики тока. В данной программе периодичность вычисления новых значений скорости и периода выбрана равной 15.625мс. Такое значение выбрано не случайно. Этот интервал составляет 1/64с, а главное, он содержит целое число периодов переполнения таймера 0 (25мкс). Удобно, если значения скорости и ускорения задаются в естественных единицах, т.е. в шагах в секунду и в шагах, деленных на секунду в квадрате. Для того чтобы иметь возможность в целочисленной арифметике вычислять мгновенную скорость 64 раза в секунду, нужно перейти к внутреннему представлению скорости, увеличенному в 64 раза. Умножение и деление на 64 сводится к обычным сдвигам и поэтому требует очень мало времени. Заданную периодичность вычислений обеспечивает еще один программный таймер URCNT, который декрементируется в прерывании таймера 0 (раз в 25мкс). Этот таймер всегда загружается постоянной величиной, что обеспечивает неизменный период его переполнений, равный 15.625мс. При переполнении этого таймера устанавливается битовый флаг UPD, который сигнализирует основной программе, что «пора-бы обновить значения скорости и периода». Основная программа (рис. 34) выполняет вычисление мгновенных значений скорости и периода следования шагов, обеспечивая необходимую кривую разгона. В данном случае разгон и торможение осуществляются с постоянным ускорением, поэтому скорость меняется линейно. Период при этом меняется по гиперболическому закону, и его вычисление - основная работа программы.
Рис. 34. Блок-схема основного цикла программы.
Обновление значений скорости и периода следования шагов основная программа делает периодически, периодичность задается флагом UPD. Обновление программа делает на основе сравнения значений двух переменных: мгновенной скорости VC и требуемой скорости VR.
Значение требуемой скорости также определяется в основной программе. Это делается на основе анализа управляющих сигналов и сигналов с концевых выключателей. В зависимости от этих сигналов, основная программа загружает переменную VR значением требуемой скорости. В данной программе это V для движения вперед, -V для движения назад и 0 для остановки. В общем случае, набор скоростей (а также ускорений и токов фаз) может быть сколь угодно большим, в зависимости от требований. Если скорости VC и VR равны, значит, шаговый двигатель работает в стационарном режиме и обновления не требуется. Если же скорости не равны, то значение VC с заданным ускорением приближается к VR, т.е. двигатель ускоряется (или замедляется) до достижения номинальной скорости. В случае, когда даже знаки VR и VC отличаются, двигатель замедляется, реверсируется и потом достигает требуемой скорости. Происходит это как бы само собой, благодаря структуре программы. Если при очередной проверке обнаруживается, что скорости VR и VC не равны, то к значению VC прибавляется (или вычитается) значение ускорения A. Если в результате этой операции происходит превышение требуемой скорости, то полученное значение корректируется путем замены на точное значение требуемой скорости.
Затем происходит вычисление периода T (рис. 35).
Рис. 35. Блок-схема подпрограммы вычисления периода.
Вначале вычисляется модуль текущей скорости. Затем происходит ограничение минимальной скорости. Это ограничение необходимо по двум причинам. Во-первых, бесконечно малой скорости соответствует бесконечно большой период, что вызовет ошибку в вычислениях. Во-вторых, шаговые двигатели имеют довольно протяженную по скорости зону старта, поэтому нет необходимости стартовать на очень маленькой скорости, тем более что вращение на малых скоростях вызывает повышенный шум и вибрацию. Значение минимальной скорости VMIN должно выбираться исходя из конкретной задачи и типа двигателя. После ограничения минимальной скорости производится вычисление периода по формуле T = 2560000/|VC|. На первый взгляд формула не очевидна, но если учесть, что период необходимо получить в 25мкс-интервалах, а внутреннее представление VC - это умноженное на 64 ее истинное значение, то все становится на свои места. При вычислении T требуется операция беззнакового деления формата 24/24, которое AVR на тактовой частоте 10МГц делает примерно за 70мкс. Учитывая, что вычисления периода происходят не чаще, чем один раз в 15.625мс, загрузка процессора получается очень низкой. Основную загрузку производит прерывание таймера 0, да и оно в основном выполняется по короткой ветке (без переполнения STCNT) длительностью примерно 3мкс, что соответствует 12%-й загрузке процессора. Это означает, что имеются значительные резервы вычислительных ресурсов.
Печатная плата контроллера шагового двигателя приведена на рис. 36.
Рис. 36. Печатная плата контроллера шaгового двигателя.
Подобные документы
Шаговые двигатели - разновидность бесколлекторных двигателей. Их основные типы: с переменным магнитным сопротивлением, с постоянными магнитами, гибридные. Варианты исполнения обмоток двигателя. Режимы и способы управления им, особенности использования.
реферат [672,0 K], добавлен 18.02.2013Исследование влияния нелинейности на технологию работы двигателя. Характеристика двигателя полиномом 3-его порядка с кусочно-непрерывными линейными функциям. Особенности проектирования схемы управления шаговым двигателем: втягивание, выдвижение штока.
курсовая работа [3,4 M], добавлен 14.02.2010Двигатели с независимым и с параллельным возбуждением и с постоянными магнитами. Скоростные и механические характеристики. Свойство саморегулирования вращающего момента в соответствии с противодействующим моментом. Способы регулирования частоты вращения.
контрольная работа [262,8 K], добавлен 25.07.2013Назначение, устройство и принцип действия однофазного и трёхфазного трансформаторов, коэффициент трансформации, обозначение зажимов обмоток. Устройство и принцип работы асинхронного двигателя, соединение обмоток статора. Устройство магнитных пускателей.
шпаргалка [8,7 K], добавлен 23.10.2009Общие положения об электроприводе. Современный автоматизированный электропривод и тенденции его развития. Двигатели постоянного тока. Построение структурной схемы АЭП, синтез математической модели. Сравнительный анализ разработанных систем управления.
курсовая работа [681,0 K], добавлен 08.07.2012Источники энергии Древнего мира, раннего Средневековья и Нового времени. Технологии, используемые в процессе получения, передачи и использования энергии. Тепловые двигатели, двигатели внутреннего сгорания, электрогенераторы. Развитие ядерной энергетики.
презентация [2,7 M], добавлен 15.05.2014Промышленное применение электроэнергии. Совершенствование паровых двигателей и котельных установок. Новые тепловые двигатели. Паровые турбины. Двигатели внутреннего сгорания. Водяные турбины. Идея использования атомной энергии.
реферат [17,8 K], добавлен 03.04.2003Двигатели постоянного тока, их применение в электроприводах, требующих широкого плавного и экономичного регулирования частоты вращения, высоких перегрузочных пусковых и тормозных моментов. Расчет рабочих характеристик двигателя постоянного тока.
курсовая работа [456,2 K], добавлен 12.09.2014Общая теория электрических ракетных двигателей. Особенности двигательных установок с малой тягой. Электрические ракетные двигатели и перспективные двигательные установки других типов. Ионный двигатель и его основные элементы. Контактные ионные источники.
курсовая работа [1,7 M], добавлен 01.02.2010Расчет механических характеристик двигателей постоянного тока независимого и последовательного возбуждения. Ток якоря в номинальном режиме. Построения естественной и искусственной механической характеристики двигателя. Сопротивление обмоток в цепи якоря.
контрольная работа [167,2 K], добавлен 29.02.2012