Компоненты и технологии, № 3'2004
Управление шаговым электродвигателем
с помощью ПЛИС
Шаговые двигатели (ШД) представляют собой электромеханические устройства, преобразующие сигнал управления в угловое или линейное перемещение ротора с фиксацией его в заданном положении без обратной связи. Для формирования сигналов управления можно использовать устройство на основе ПЛИС класса CPLD фирмы Altera.
Владимир Вычужанин
vint53@list.ru
Современные шаговые двигатели являются по сути синхронными двигателями без пусковой обмотки на роторе, что объясняется не асинхронным, а частотным их пуском. К несомненным преимуществам ШД можно отнести простоту конструкции; возможность управляемого перемещения вала якоря; отсутствие необходимости запитки ротора. Из-за простоты и удобства в использовании такие двигатели находят широкое применение в электронных устройствах с вращающимися частями, в качестве безынерционного и точного привода.
Подобные двигатели незаменимы при конструировании точных устройств позиционирования в станках с ЧПУ, автомобильных приборах, в принтерах, а также в электроприводах дисководов компьютеров для позиционирования магнитной головки (в устройствах чтения гибких дисков при использовании импульсного способа управления). Особенностью работы двигателя в таких электроприводах является то, что его вал поворачивается на угол, кратный 1,8° или 3,6° в зависимости от количества импульсов, поданных на входы электронных ключей, коммутирующих обмотки. При шаге угла поворота 1,8° требуется двести шагов для полного оборота вала двигателя.
Шаговый двигатель в устройствах чтения гибких дисков вращается небольшими последовательностями импульсов. При этом головки чтения-записи перемещаются в нужное положение отдельными шагами. К несущему валу ШД присоединены постоянные магниты. При пропускании электрического тока через одну или несколько электрических катушек, окружающих двигатель, создается магнитное поле, взаимодействующее с постоянным магнитом на валу. Последовательное включение и выключение электропитания катушек заставляет двигатель вращаться, перемещая головки чтения-записи.
Многие ШД имеют на статоре по две, сдвинутые относительно друг друга многополюсные обмотки, каждая из них со средним выводом. Последние обычно соединяют с плюсом источника питания, а остальные выводы в определенной последовательности — с минусом. Для таких двигателей с шестью выводами из-за необходимости подвода двухполярного питания несколько усложняется схема устройства управления. Если обмотки ШД дисководов имеют пять выводов, то отпадает необходимость использовать двухполярный источник питания. При разработке импульсной схемы управления в качестве объекта управления выбран ШД дисковода модели FD-55GFR, имеющий пять выводов [1].
Одним из вариантов создания импульсного устройства управления ШД является разработка его на базе ПЛИС. На рис. 1 представлена принципиальная электрическая схема управления ШД дисковода на основе ПЛИС класса CPLD фирмы Altera. Микросхемы этого класса обладают простотой реализации разработанного устройства, малыми издержками на проектирование и независимо от питания сохраняют свою конфигурацию. Требуемая структура управляющего устройства создается путем программирования связей коммутирующих матриц (макроячеек) с использованием технологий перепрограммируемых ПЗУ.
Функциональная схема блоков, находящихся внутри ПЛИС, показана на рис. 2. Используемые при разработке схемы узлы — библиотечные. Символы модуля CPLD созданы разработчиком.
При проектировании устройства управления ШД дисковода использовалась САПР MAX+PLUSII [2,3], позволяющая реализовать схему на базе ПЛИС
Компоненты и технологии, № 3'2004
A1
со
Рис. 3
фирмы Altera и обеспечивающая синтез структуры и трассировку внутренних связей ПЛИС, подготовку данных для программирования и конфигурирования ПЛИС, функциональное моделирование и временной анализ, а также программирование и конфигурирование ПЛИС.
Модуль CPLD состоит из созданных символов: D-триггеров DFF с входами подачи тактового сигнала, асинхронной установки и асинхронного сброса; мультиплексора muxm с информационными входами, а также с входами разрешения работы и подачи тактового сигнала (рис. 3).
Устройство (рис. 1) управляет шаговым двигателем, заставляя его ротор вращаться
в одну или другую сторону. Реверсивное управление задается логическим уровнем сигналов ББ и БВ. Частота импульсов соответственно шагам задается элементами Я1, И2, С1 (сигнал СЬК). Скорость вращения электродвигателя М определяется частотой импульсов. Каждый импульс генератора (микросхема ОБ1 К155ЛА3) поворачивает ротор на один шаг. За основу ПЛИС выбрано устройство ЕРМ7032ЬС44-6 семейства МАХ7000.
Обмотки фаз ШД являются нагрузками ключей. Для коммутации обмоток двигателя используются транзисторные ключи с открытым коллектором, входящие в состав микросхемы БЭЗ ИЬ№004А [4]. Микросхема состоит из семи транзисторных пар с высоко-
module SHAGDVIG (clk, rst, ff, fb,
A, B, C, D);
input clk, rst, ff, fb;
output A, B, C, D;
reg fforward, fback, not_clk, Q1, Q2, a1, b1, cl, d1, a2, b2, c2, d2,
clock;
always@(posedge clk) begin
if(rst) clock = 0;
if(!rst) clock = !clock;
end
always@(posedge clock) begin
if(rst) Q1 = 0;
if(!rst) Q1 = !Q1;
end
always@(posedge not_clk) begin
if(rst) Q2 = 0;
if(!rst) Q2 = !Q2;
end
always@(posedge clock) begin
if(rst) begin
fback = 0;
fforward = 0;
end
if(!rst) begin
fback = !fb;
fforward = !ff;
end
end
always begin
not_clk = !clock;
al = !Q1;
b1 = Q2;
cl = Ql;
d1 = !Q2;
if(fforward==1) if(fback==0) a2 = a1;
if(fforward==0) if(fback==1) a2 = b1;
else a2 = 1;
if(fforward==1) if(fback==0) b2 = b1;
if(fforward==0) if(fback==1) b2 = a1;
else b2 = 1;
if(fforward==1) if(fback==0) c2 = c1;
if(fforward==0) if(fback==1) c2 = d1;
else c2 = 1;
if(fforward==1) if(fback==0) d2 = d1;
if(fforward==0) if(fback==1) d2 = c1;
else d2 = 1;
end
assign A = a2;
assign B = b2;
assign C = c2;
assign D = d2;
endmodule
Листинг
Компоненты и технологии, № 3'2004
Name:
m- Rst »- FF m- FB
m~ cik
■Г* A ■Г* В ■г» С ■Г» D
Name:
тт
1Г
1
вольтными выходами, с общим катодным соединением диодов для переключения индуктивной нагрузки. Выходной ток каждой транзисторной пары составляет до 500 мА, выходное напряжение — до 100 В. Мощность электродвигателя М ограничена максимальным током через один ключ и суммарной мощ-
ностью, рассеиваемой микросхемой БЭЗ. Все выводы микросхемы снабжены внутренними защитными диодами, то есть каждая полуобмотка ШД зашунтирована диодом, что устраняет коммутационные выбросы напряжения. Транзисторные ключи БЭЗ обеспечивают усиление сигналов и защиту выво-
дов ПЛИС от возможного проникновения напряжения питания двигателя Vc1.
На листинге приведено программное Verilog-описание ПЛИС для схемы, представленной на рис. 2.
В рис. 4 а, б показаны фрагменты файлов с результатами функционального моделирования разработанного устройства в зависимости от заданных состояний входов. Результаты моделирования подтверждают работоспособность схемы управления шаговым двигателем дисковода на базе ПЛИС.
Разработанная схема с небольшими изменениями (с учетом специфики) может быть использована в многообразных по назначениям устройствах безинерционных и точных приводов в робототехнике, в радиоэлектронной промышленности, медицине, управлении гравировкой и так далее. ЖЯ
Литература
1. http://www.HowStuffWorks.com.
2. Антонов А. П. Язык описания цифровых устройств AlteraHDL. Практический курс. 2-е изд., стереотип. М.: РадиоСофт. 2001.
3. Комолов Д. А. и др. Системы автоматизированного проектирования фирмы Altera Max+PLUSII и Quartus II. М.: РадиоСофт. 2002.
4. http://www.ti.com/sc/package.
а