Bldc двигатель принцип работы
Контроллер трехфазного бесколлекторного двигателя постоянного тока с минимальными ресурсами
Каковы должны быть минимальные ресурсы микроконтроллера, работающего в составе привода трехфазного BLDC-мотора? Для ответа на этот вопрос необходимо соотнести возможности чипсета с принципами управления указанного двигателя и предъявляемыми к устройству функциональными требованиями. Если мы рассматриваем рынок простых и дешевых схем управления скоростью в таких применениях, как вентиляторы и насосы, то проблема может быть существенно упрощена. Эти устройства работают при наличии или отсутствии датчиков (необходимых для определения положения ротора), что имеет ряд аргументов «за» и «против». Однако по количеству контактов I/O существенный выигрыш получается в случае, если сигнал положения ротора может быть снят с одного вывода. Кроме того, наличие многофункциональных выходов в пользовательском интерфейсе позволяет изменять их назначение. Благодаря этому, используя определенную технику минимизации, можно сократить количество задействованных контактов процессора и снизить таким образом требования к его ресурсам.
Система управления BLDC-мотором
На рис. 1 приведена блок-схема управления BLDC-мотором, содержащая датчик Холла для формирования обратной связи по положению ротора (как правило, используется три датчика), потенциометр задания скорости, кнопки включения и выключения системы, датчик перегрузки по току и трехфазный силовой каскад, соединенный с мотором.
Рис. 1. Блок-схема управления BLDC-мотором
Общее количество независимых подключений контроллера составляет 11 (пять входов и шесть выходов). Это число можно минимизировать в случае, если микроконтроллер поддерживает многофункциональность выводов и имеет развитую периферию.
Технология минимизации ресурсов
В случае, если используется стандартный шестиступенчатый алгоритм управления BLDC-мотором, в каждый момент времени только два транзистора инвертора (один в верхнем плече и один в нижнем) находятся во включенном состоянии. Управление ключами трехфазного силового каскада не является комплиментарным, транзисторы открываются в т. н. «диагональном режиме». С точки зрения минимизации логики это является преимуществом, поскольку два из трех ключей верхнего уровня закрыты при нормальной работе привода. Сигнал управления третьим транзистором может быть извлечен из двух других с помощью нескольких резисторов и транзисторного инвертора, подключенного к третьему входу верхнего уровня моста (см. рис. 4 — принципиальная схема). Таким образом удается сократить количество использованных выводов контроллера с шести до пяти.
Существует несколько различных путей оптимизации количества системных входов, предназначенных для подключения датчиков Холла, потенциометра, сенсоров тока перегрузки и ключей «Пуск/ Стоп». Датчики Холла, как правило, встраиваются в BLDC-двигатель, поэтому целесообразно интегрировать в мотор и схему, формирующую цифровой интерфейс для их связи с микроконтроллером. Выход подобной схемы выполняется в виде откры- того коллектора с «подтягивающим» резистором. В этом случае требуется один датчик Холла и один цифровой вход микросхемы семейства PIC12F.
Для запуска мотора и задания скорости при включении системы один из входов верхнего плеча трехфазного инвертора может быть сконфигурирован как аналоговый вход. Для реализации данной задачи этот вывод подключается к резистивному делителю и потенциометру уставки, что позволяет задать и считать значение скорости перед пуском мотора.
Ключ «Пуск» кроме основной задачи может нести и дополнительную функцию снижения уставки скорости ниже минимального значения. В аналоговом режиме работы входа, несмотря на то, что один из транзисторов верхнего плеча открывается, это не приводит к появлению тока в двигателе, поскольку все ключи нижнего плеча закрыты. Далее, при пуске мотора, данный контакт конфигурируется как выход управления транзистором верхнего плеча, а резисторы делителя начинают выполнять функцию «подтягивающих» или заземляющих.
Функцию остановки запущенного двигателя удобно выполнять в комбинированном режиме «Пуск/Стоп» в ходе цикла коммутации. Таким образом, остановка мотора реализуется программно-аппаратным методом в процессе выбега. Когда ключ «Стоп» нажимается при вращении, все сигналы управления транзисторами верхнего уровня блокируются, программа анализирует состояние мотора и запускает режим торможения. В простейшем случае функция остановки может выполняться нормально-разомкнутым тумблером, подключенным параллельно описанной выше цепи защиты от токовой перегрузки.
В схеме защиты от перегрузки по току не задействован ни один из выводов I/O микроконтроллера, для этой цели используется цепь подключения питания микросхемы семейства PIC12, позволяющая включить схему в режим перезагрузки при возникновении аварии. Этот тип PIC-контроллера имеет встроенный параллельный стабилизатор, соединенный с источником питания через резистор, номинал которого выбирается в зависимости от условий работы. Таким образом, в случае перегрузки питание микросхемы может быть отключено схемой защиты по току, подключенной параллельно стабилизатору.
В результате проведенной оптимизации системе требуется один выделенный цифровой вход, а также один цифровой/аналоговый и четыре цифровых вывода, выполняющих функции выходов. Здесь не учтен тот факт, что для управления скоростью необходима широтно-импульсная модуляция напряжения, поступающего на BLDC-мотор. В нашем случае контрольные импульсы должны поступать на транзисторы нижнего уровня. В реальности, поскольку в системе используется режим шестиступенчатого управления, ШИМ-сигнал в любой момент времени подается только на один из трех нижних ключей инвертора.
Некоторые PIC-контроллеры обладают особой периферией, способной формировать программный «моторный» ШИМ-сигнал, в то время как другие могут вырабатывать ШИМ-напряжение только на одном из n выходов. В последнем случае полный сигнал управления формируется с помощью, например, периферии ECCP (Enhanced Capture/ Compare Peripheral). В микросхеме PIC12F допускается комбинированное формирование ШИМ-сигнала посредством периферии ECCP или в режиме альтернативной конфигурации выводов (APCFG). Подобная возможность представляется очень удобной, поскольку импульсы могут вырабатываться через ECCP только по двум выводам, в то время как для работы схемы их требуется три, что доступно в режиме APCFG. На сегодняшний день в описанном режиме могут работать два контроллера семейства: PIC12F615 и PIC12HV615 (рис. 2).
Рис. 2. Аппаратная реализация схемы
Программа управления использует сигнал одного датчика Холла для синхронизации импульсов управления транзисторами инвертора, а также для определения моментов времени коммутации по так называемой технологии точного расчета траектории. Помимо всего прочего, это позволяет сформировать замкнутый контур управления скоростью при помощи простейшего ПИД-регулятора, на который поступает сигнал ошибки по скорости (рис. 3).
Рис. 3. Блок-схема управления скоростью мотора
Выход PI-контроллера загружается в регистр коэффициента заполнения импульсов CCPR1, занимая восемь старших разрядов. Выход подсистемы формирования ШИМ-сигнала коммутируется вместе с одним из трех транзисторов нижнего плеча инвертора, что позволяет осуществлять управление мотором и контроль скорости.
Три встроенных таймера PIC12 используются для измерения скорости двигателя по сигналу датчика Холла (TMR1), задания периода коммутации (TMR2) и генерации прерывания после окончания периода предварительного расчета (TMR0).
При включении питания считывается уставка скорости, после чего система может быть запущена с помощью ключа «Пуск». После подачи команды на запуск привода происходит оценка положения ротора и активируется программа формирования короткой разомкнутой петли регулирования. Она работает до тех пор, пока не будет продетектировано появление следующего сигнала датчика Холла. С этого момента времени коммутация инвертора синхронизируется с положением ротора. После успешной обработки двух сигналов датчика Холла программа переключается в режим работы с замкнутой обратной связью по скорости. При возникновении перегрузки по току активируется режим перезапуска питания POR (Power On Reset).
Аппаратная реализация системы управления включает трехфазный BLDC-мотор, низковольтный силовой модуль инвертора и контроллер PIC12F615, подключенный к модифицированной демо-плате Microchip. Было показано, что данная топология схемы позволяет использовать шесть I/O контактов микроконтроллера с многофункциональными выводами. Гибкая внутренняя периферия PIC12HV615 и встроенный параллельный регулятор дают возможность создать схему (рис. 4), выполняющую все необходимые для данного применения функции. Таким образом, создана основа для проектирования простых и дешевых систем управления скоростью в случаях, когда не требуется высокая точность работы привода.
Рис. 4. Принципиальная схема привода BLDC-мотора с контроллером PIC12HV615
Инверторный электродвигатель
В последние годы появляется много новых технологий. Одно из последних веяний – инверторный двигатель, который стали ставить в крупной бытовой технике. Обещают при этом достаточно, но всё ли правда.
Что такое инверторный двигатель
Значительная часть техники имеет в своём составе электродвигатели и очень желательно чтобы двигатели имели разную скорость вращения. Этим они обеспечивают разные режимы работы и чем больше различных скоростей, тем лучше. Вообще, скорость двигателя изменять можно двумя способами – изменяя частоту или напряжение. Ранее, до появления инверторных двигателей, её меняли при помощи реостата, то есть изменяли напряжение. Пределы изменений были небольшие и плавной регулировки почти не получалось. Плавно регулировать скорость позволяли только коллекторные двигатели. Но они на больших оборотах имеют малый момент, что ограничивает их применение. К тому же имеют коллектор, так что не слишком долговечны и надёжны.
Основное отличие – возможность регулировать скорость в больших пределах
Пару десятилетий тому назад, с развитием полупроводниковых приборов, активно стали применять частотные преобразователи. Эти устройства позволяют изменять частоту и напряжение в широких пределах, это от 1 Гц до 500 Гц. То есть, инверторный двигатель получает питание не напрямую от сети, а со встроенного в него преобразователя. В зависимости от текущего режима работы он формирует напряжение требуемой частоты и/или уровня. То есть, инверторный двигатель — это, как минимум, два устройства в одном корпусе: частотный преобразователь и сам двигатель.
Инверторными могут быть два типа двигателей: асинхронные и коллекторные постоянного тока. Использование этой технологии позволяет получить широкий диапазон скоростей и возможность точного поддержания скорости. Также, инверторный блок может повышать/понижать напряжение, что позволяет получить требуемый крутящий момент. Всё это, безусловно, в определённых пределах, но общие характеристики инверторных электродвигателей становятся значительно лучше. Правда и цена на них тоже значительно выше, как и сложность управления.
Основные моменты работы преобразователя
Инверторный преобразователь меняет напряжение в несколько этапов:
- Выпрямляет сетевое напряжение, получая постоянное (обычно стоит диодный полумост или мост).
- Из постоянного напряжения формирует двухполюсные импульсы (положительные и отрицательные). Это блок называют инвертором, что и дало название самому принципу, блоку и мотору со встроенным преобразованием.
Вот на этом этапе и формируется требуемая частота и напряжение питания, которое затем и подаётся на двигатель. У некоторых инверторов есть ещё одна ступень преобразования, на которой ступенчатые импульсы превращаются в синусоиду. Так как форма напряжения на работу мотора влияния почти не оказывает, этот блок в инверторных двигателях отсутствует.
Блок схема частотного преобразователя и способ его подключения к двигателю
В «умной» технике, работой которой управляет микропроцессор, он задает параметры напряжения, регулируя скорость вращения в зависимости от программы или от состояния техники. Сам принцип работы двигателя от наличия инвертора не зависит, но этот дополнительный блок дает возможность управлять работой электромотора в широких пределах.
Особенности применения
Частотный преобразователь включают, в основном, с асинхронными двигателями. Они недороги, надёжны, экономичны. Модели с короткозамкнутым ротором бесколлекторные, что делает их ещё более привлекательными. Имеют асинхронные двигатели два недостатка, которые как раз, инвертором и устраняются. Первый существенный недостаток – высокий пусковой ток. Он может быть в 3-7 раз больше номинального. Кроме того, резкий старт с подачей питания 220/380 В ведёт к перегрузке, а значит и к быстрому износу мотора. Установив частотный преобразователь, при пуске переводим переключатель на минимум и постепенно доводим обороты до нужного значения. Пусковой ток при этом минимальный, а разгон плавный. Ни пусковые токи, ни перегрузки не страшны.
Платой за точное регулирование скорости является более сложное управление
Второй отрицательный момент – регулировать скорость вращения ротора в асинхронных двигателях получается слабо, но это без инвертора. Инверторный асинхронный двигатель позволяет изменять скорость от десятков оборотов в минуту, до тысяч. И всё это плавно, без перегрузок.
Но инверторный двигатель значительно дороже «обычного» с точно такими же характеристиками. Дело в дополнительном оборудовании, причём совсем недешёвом, но использование этой технологии имеет свои плюсы.
В кондиционерах
Как работает обычный кондиционер? Компрессор в нём то включается, то выключается. Температура стала на градус выше заданной, компрессор включился, работает пока она не станет на один градус ниже заданного предела. Включается снова, когда температура снова окажется ниже предела. И каждое включение/включение – это стартовый ток, перегрузки.
Как работает кондиционер с инверторным мотором и обычным
Если в кондиционере стоит инверторный преобразователь, он просто задаёт скорость работы компрессора так, чтобы температура сохранялась. Это снижает расход электричества (нет пусковых многократно возросших токов), оборудование работает в щадящем режиме без перегрузок, что продлевает срок эксплуатации.
В стиральных машинах
Используют инверторные моторы и в стиральных машинах. В стиральных машинах «обычного» класса ставят коллекторные электродвигатели. Они могут разгоняться до высоких скоростей (до 10000 об/ми), имеют хороший крутящий момент на больших скоростях. Их минус – повышенный уровень шумов, так как, кроме ремённой передачи шумят еще и сами щётки. Как их не притирай, коллекторный узел всё равно шумит. И чем больше скорость вращения, тем выше уровень шумов. И он имеет высокую тональность, так что с ним достаточно сложно мириться.
Инверторный двигатель имеет небольшой размер и солидную мощность, но так ли важно это в корпусной технике
Последние годы появились стиральные машины с очень низким уровнем шума. В них установлены асинхронные двигатели с инверторным блоком. Раньше асинхронники не использовались, так как максимально могут развивать скорость до 3000 оборотов, что для нормального отжима недостаточно. Этот недостаток удалось обойти используя инвертор на входе. Он позволяет увеличить скорость электродвигателя до солидных величин. В двигателях нового поколения используется особый ротор – цельнолитой, это позволило уменьшить размеры двигателя. А так как в этих моторах нет коллектора и щёток, то и шумят они при работе совсем незначительно. Частотная регуляция скорости вращения позволяет точно контролировать число оборотов.
Если вы готовы платить за тихую работу — пожалуйста
Но платой за всё это является более сложное управление. Для управления инверторным электродвигателем в стиральной машине стоит отдельная плата. И ее стоимость равна 1/3 или 1/4 стоимости всей машины. Вот в этом случае стоит хорошо подумать, стоит ли покупать стиральную машину с инверсионным двигателем или нет. Слишком дорогой ремонт, да и стоимость самого агрегата значительно выше. А то, что на двигатель дают 10 лет гарантии так это не на плату, а на сам мотор. А в плюсах только более тихая работа.
Холодильники и морозильные камеры с инверторными компрессорами
В холодильниках используется такой же способ поддержания температуры, как и в кондиционерах. В камере холодильника расположен термодатчик, который через контакты включает и выключает компрессор. Точность поддержания температуры зависит от типа термодатчика, но обычно составляет несколько градусов, от трех до пяти. При такой работе приличествуют все «прелести»: многократные пусковые токи при включении, скачки напряжения сети, спровоцированные включением/выключением компрессора, шум.
В холодильниках и морозилках применение инверторных двигателей оправдано
Холодильник с инверторным двигателем работает тише, так как нет резкого пуска. Компрессор начинает работать с малых оборотов и постепенно выходит на нормальную скорость. Частота его работы зависит от температуры в камерах, но двигатель останавливается очень редко. Он, то работает на минимальных оборотах и тогда его почти неслышно даже вблизи, то чуть добавляет скорости, и его можно услышать. Этот режим работы более благоприятен для двигателя, он работает без пусковых перегрузок. И как ни странно, потребляют такие моторы меньше электроэнергии, снова-таки за счёт отсутствия пусковых токов. Ведь «обычный» компрессор включается каждые пять-десять минут. Превышение нормативного расхода – 4-8 раз. Вот за счёт этого и достигается экономия. Так что инверторный электродвигатель в холодильнике тоже оправдан, ну и плюсом, идет более тихая работа.
Недостатки инверторных моторов
Основной недостаток инверторных двигателей – их цена. Да, но она оправдана, так как в движке имеются, по сути два устройства, частотный преобразователь (который сам стоит немало) и двигатель. Но технология эта несёт определенные выгоды: снижение расхода электроэнергии за счёт минимизации пусковых токов, более широкий диапазон регулировок скорости, увеличение срока эксплуатации (за счёт отсутствия пусковых перегрузок). Это всё понятно, но есть и минусы и ограничения, о которых не так часто говорят.
Инверторная технология хороша для стабилизации напряжения, попутно она ещё решает другие задачи
- Не все моторы нормально реагируют на работу с низкими оборотами. Если такой режим будет длительным, лучше искать специальные модели под низкие обороты.
- Каждый двигатель имеет максимальную скорость, которую лучше не превышать. Она указана на шильдике двигателя и выше скорость лучше не задавать.
- На максимальных оборотах обычно падает крутящий момент. То есть, с повышением оборотов надо снижать нагрузку.
- При выходе из строя инверторного двигателя ремонт обойдётся дороже, даже если «полетела» часть, с инвертором никак не связанная. Для определения неисправности необходим более квалифицированный специалист (должен же он решить, что инвертор в порядке), а стоимость услуг его выше.
Как видим, инверторный двигатель неидеальное решение, но довольно неплохое. Основной плюс – широкий диапазон регулирования скорости двигателя, точное поддержание этой скорости. Для асинхронных двигателей применение инверторной технологии означает ещё и минимизация пусковых токов и перегрузок. В общем, инверторный двигатель хорош там, где двигатели часто включаются/отключаются. Это холодильники, кондиционеры, станки, транспортёры и другое оборудование, которое ранее работало на асинхронных двигателях.
Не во всей технике установка инвертора необходима
Ещё инверторные двигатели (или частотные преобразователи к обычному двигателю) стоит применять там, где от производительности/скорости зависит эффективность работы. Например, подающие насосы, которые должны поддерживать определённое давление в сети и должны реагировать/плавно изменять скорость. Ещё инверторный двигатель может быть важен в подъёмной технике. Как пример, для откатных или подъёмных ворот. Возможность изменять скорость и развивать хорошее усилие на малых оборотах важно.
roboforum.ru
Технический форум по робототехнике.
- Список форумов‹Мастерская‹Электроника, электротехника
- Изменить размер шрифта
- Версия для печати
- Магазин
- Правила
- Wiki
- FAQ
- Регистрация
- Вход
Управление вентильным(BLDC) двигателем с регенерацией
Re: Управление вентильным(BLDC) двигателем с регенерацией
boez » 21 апр 2011, 12:47
Ну раз есть датчики Холла — полюбому надо делать свою схему, при наличии датчиков во-первых упрощается алгоритм, во-вторых улучшается управляемость при малых скоростях — мотор сможет выдавать полный момент на нулевой скорости. Бездатчиковый (скажем, модельный) контроллер вряд ли это сможет.
Вообще то, что нужно сделать — это по схемотехнике стандартный контроллер китайского электровелосипеда, только с другой программой. Но закладываться на готовый китайский я бы не стал, не знаю как другие, а свой я разбирал — он выглядит довольно кустарно, драйвера полевиков на рассыпухе, верхние полевики p-канальные, дорожки чтобы как-то жили усилены оловом.
Надо делать свой. За основу можно взять схему open-bldc, она по сути классическая, n-канальные полевики, IR2101 как драйверы и аллегровские датчики тока на выходах. Судя по вот этому http://open-bldc.org/wiki/Circuit — это практически то, что нужно, надо только транзисторы заменить и схему немного переделать. Примененные там IRF3704 — это корпус D2-Pak, сопротивление 9 мОм, ток 77 А. Ищем такие же по току и сопротивлению, но на 75 вольт. На IRF по запросу в parametric search «n-канальные D2Pak VBRDSS=75V» выдало 13 результатов. Подходят из них десяток, ИРовцы рекомендуют IRFS3307Z/3207Z/3107, вроде подходят, вопрос в доставабельности. Единственное, чем они сильно отличаются — зарядом затвора, он на порядок больше. Но раз мы применяем IR2101 — они и не такое потянут, нужно просто пересчитать затворные резисторы и увеличить емкости на верхних плечах. Ну и при проектировании питания драйверов это учитывать.
Главный недостаток платы open-bldc — они сильно завязяли питание драйверов и нагрузки, у них оно общее и называется +12V. Нам надо получить до 45V, но драйверы таким питать уже нельзя. Значит надо все-таки переделывать. Я бы применил понижающий импульсный на 33063 с исходных 36-45 до 15 вольт, от 15 запитал IR2101, а с него уже простым линейным стабилизатором делать +5 и +3.3.
А, ну и раз уж такая пьянка и указанные транзисторы будет трудно купить — то можно и среди TO-220 корпусов поискать, все равно плату переделывать. Просто для д2паков переделки могут быть менее обширными.
Добавлено спустя 7 минут 57 секунд:
abuharsky писал(а): 1) При вращении появляется ток, транзистор Т5 при этом открыт, ток идет вокруг и находится в обмотках двигателя
2) Когда Т5 закрыт, то ток высвобождается через обратно включенные диоды и заряжает аккумуляторную батарею
В этом случае нагрузка на генератор будет максимальна и весь генерируемый ток пойдет в батарею, как его регулировать?
А очень просто — 1) и 2) чередуются с достаточно большой частотой, это называется ШИМ — Широтно-Импульсная Модуляция. Частота постоянна, а вот процент времени, занимаемого состояниями 1 и 2 меняется. В состоянии 1 ток растет (за счет ЭДС мотора, она прикладывается к индуктивности мотора и вызывает рост тока по закону U=L*dI/dt), в состоянии 2 ток падает (U батареи выше, чем ЭДС мотора, напряжение на индуктивности меняет знак). Поэтому, меняя времена 1 и 2, можно рулить током в широких пределах, в том числе его знаком (в одну сторону будет генерация, в другую — обычный режим двигателя). Для этого и нужны датчики тока на фазах, чтобы иметь ОС по току.
О бесколлекторных низкооборотных двигателях и L6234D.
Стабилизирующий подвес для камеры своими руками. Часть 1.
Ниже речь пойдёт про управление низкооборотными трёхфазными бесколлекторными моторами в статичном режиме с использованием трёхфазного моста L6234.
Но сначала немного теории.
Что такое бесколлекторные моторы?
Как следует из названия, эти моторы у которых отсутствует щёточно-коллекторный узел. На вращающейся части – роторе – расположены постоянные магниты. На неподвижной части – статоре – обмотки электромагнитов. В движение такой мотор приводится изменением тока на разных фазах. Одним из примеров таких моторов являются шаговые двигатели. Изменение электрических фаз приводит к смещению ротора на строго предопределённый угол – один шаг.
Также есть моторы, рассчитанные на постоянное вращение. Например, двухфазные бесколлекторные моторы используются в компьютерных вентиляторах. Трёхфазные моторы используются в моделировании, а также в приводе электрических велосипедов и скутеров.
Отсутствие скользящих контактов щёток позволяет достигать большой мощности и долговечности.
Трёхфазные моторы
Рассмотрим типичный трёхфазный мотор, используемый в авиамоделировании.
Если ротор с магнитами расположен внутри кольца, образованного электромагнитными катушками, то такой мотор называют inrunner, такие моторы чаще используются в автомоделизме. В авиамоделизме популярна обратная компоновка: корпус ротора с кольцом магнитов вращается вокруг статора с электромагнитами (см. рисунок).
Эти моторы также подразделяются по количеству электромагнитов и количеству полюсов. Наиболее распространённая компоновка 12N14P что означает наличие 12 обмоток статора и 14 магнитных полюсов на роторе. Число полюсов всегда кратно 2: ведь полюса бывают только двух типов – северный и южный. Число обмоток кратно трём, поскольку двигатель трёхфазный. На схеме показана намотка обмоток. A B C – намотка соответствующей обмотки в одну сторону, -a -b -c – в противоположную.
В большинстве случаев обмотки соединяются «звездой», как показано на схеме. Подавая попарно на выходы напряжение той или иной полярности, контроллер мотора пробегает полный электрический цикл, состоящий из 6 смен полярностей. За этот цикл ротор проворачивается на два магнитных полюса. То есть, в нашем случае, чтобы мотор совершил один оборот, электрические фазы должны пройти 7 полных циклов.
Трёхфазный мост
Для электрической коммутации используются трёхфазные мосты, представляющие из себя три блока (полумоста), в каждом из которых по два транзистора – на плюс и на минус. Для управления мотором на одном из трёх полумостов выбирается «плюс», на другом «минус», а третий остаётся отключенным. При помощи ШИМ, транзисторы импульсами коммутируют фазу двигателя к выбранной полярности, пока он не провернётся на нужный угол. Затем схема коммутации меняется. Микроконтроллер в плате управления двигателем определяет моменты, когда фазы должны быть переключены. Для этого используются либо установленные на моторе датчики Холла, либо же ЭДС, возникающая в проводе свободной фазы.
Для управления маломощными моторами годится трёхфазный мост L6234.
L6234 представляет собой сборку в одном корпусе трёх полумостов, на двух n-МОП транзисторах каждый, драйверов к ним и схемы подкачки напряжения для верхнего ключа. Каждый полумост управляется значениями на двух входах: один из них выбирает полярность (коммутировать плюс, или минус), а второй включает, или отключает полумост. Для управления высокоскоростными моторами вход включения можно использовать для контроля мощности при помощи ШИМ.
Максимальный ток, на который рассчитана микросхема — 4 Ампера.
Низкоскоростные моторы
Обмотки высокооборотистых моторов наматываются пучком толстой проволки, небольшим числом витков, порядка 10-20. Они обладают очень маленьким сопротивлением постоянному току, сила тока достигает десятков Ампер, и если мотор не вращается, обмотка может перегретсья и перегореть.
Но существует разновидность таких моторов, которые предназначены для работы в статичном положении. Их обмотки наматываются большим числом витков (порядка 100) тонкой проволкой. Подавая различные значения напряжений на входы, можно создать в его обмотках магнитное поле нужной полярности, и тем самым зафиксировать его в нужном положении.
Такие моторы представляют собой промежуточное звено между шаговыми двигателями и высокоскоростными моторами: они позволяют статично фиксировать произвольное положение, но не ограничены определёнными «шагами». Используются, в основном, в стабилизирующих подвесах для видеокамер в аэровидеосъёмке. По-английски такие подвесы называются gimbal (=универсальный шарнир), а моторы так и называют gimbal motor.
Управление gimbal-мотором
Для управления можно использовать тот же самый трёхфазный мост L6234. На входы включения (ENx) подаётся постоянный высокий уровень, то есть все три полумоста постоянно включены. А вот входы выбора полярности (INx) подключаются к ШИМ-выходам микроконтроллера. В микроконтроллерах типа ATmega48/88/168/328 и т.п. можно настроить 6 ШИМ-выходов, а значит, управлять сразу двумя такими моторами.
Очень важно, чтобы все ШИМ выходы работали синфазно. То есть, если каждый ШИМ настроен на одно и то же значение, то переключаться они должны строго одновременно. L6234 позволяет коммутировать на частоте до 50кГц, поэтому, для плавной бесшумной работы, можно смело настраивать ШИМ выходы МК на максимальную частоту. При частоте МК 8 МГц и phase-correct режиме выхода, частота ШИМ составит 15 686 Гц.
Для синхронизации таймеров в ATmega48/88/168/328 можно воспользоваться регистром GTCCR, который остановит счёт таймера. Ниже пример настраивающий все 6 ШИМ выходов синфазно. Timer1 при этом работает в 8-битном режиме:
GTCCR = (1 « TSM) | (1 « PSRASY) | (1 « PSRSYNC); // Блокировка счёта
OCR0A = 0;
OCR0B = 0;
OCR1A = 0;
OCR1B = 0;
OCR2A = 0;
OCR2B = 0;
TCCR0A = 0b10100001;
TCCR0B = 0b00000001;
TCNT0 = 0;
TCCR1A = 0b10100001;
TCCR1B = 0b00000001;
TCNT1 = 0;
TCCR2A = 0b10100001;
TCCR2B = 0b00000001;
TCNT2 = 0;
(1 « TSM); // Разблокировка и одновременный запуск таймеров
Если на все 3 ШИМ выхода, управляющие одним мотором, подаётся одно и то же значение, то, хотя полярность каждого моста быстро меняется почти 16 тысяч раз в секунду, поскольку это происходит одновременно, ток через обмотки не идёт. Но если значение ШИМ хоть одного вывода отличается от остальных, то появляется небольшой промежуток времени, когда разные фазы коммутируются с разной полярностью, и через обмотки идёт ток. Чем больше разница значений ШИМ, тем большую часть времени ток будет идти.
Для того, чтобы зафиксировать мотор в нужном положении, значения ШИМ должны быть пропорциональны синусу, со смещением на треть периода (т.е. на 2/3*Pi).
Иначе говоря, значение ШИМ для i-й (от 0 до 2) фазы мотора можно вычислить по формуле:
PWM(i) = 128 + sin(A+ i * 2 / 3 * Pi) * P
Где P – выдаваемая мощность (до 127), A – электрический угол. Изменяя A можно добиться поворота мотора на определённый угол. Напомню, что изменение электрического угла на полный цикл, приводит к повороту мотора на два магнитных полюса. В схеме с 14 магнитами для целого оборота потребуется 7 циклов смены электрического угла
Если вещественную арифметику заменить на целочисленную, а значения синуса хранить в таблице, то скорости МК вполне хватит на управление такими моторами.