|
Синхронный двигатель, точное позиционирование |
|
|
|
Aug 29 2013, 17:26
|
Профессионал
    
Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968

|
Добрый день. Есть синхронный трехфазный двигатель (3 фазы, 4 обмотки на каждой фазе расположенные по кругу ABC-ABC-ABC-ABC). На роторе - магниты. Магнитов больше чем обмоток, расположены строго над обмотками. Нужно точное позиционирование ротора, есть энкодер. Изложу свои домыслы, поправьте пожалуйста где ошибаюсь:
1. Управление трехфазным синусом, сделанным через ШИМ - чередованием выбираем направление. 2. Ток обмоток (амплитуда шима) выбираем исходя из необходимой скорости разгона (на роторе инертная масса) 3. Частоту синуса - опять же исходя из требуемой скорости разгона.
Вопрос нарисовался сам собой: каким образом связать переменную процесса (положение ротора) с ДВУМЯ управляемыми величинами - частотой синуса и амплитудой? Если была бы одна управляемая величина - через ПИД регулятор. Да и в этом случае тоже через ПИД - регулятор наверняка, вычислить динамические параметры системы и выставить коэффициенты под оптимальное регулирование - это не проблема. Но вот по какому закону связать частоту и амплитуду - затык. У асинхронников частота с амплитудой связывается через закон V/F. Но там другая ситуация. А тут на момент двигателя получается влияет амплитуда синуса, а частоту (или точнее скорость изменения фазы) надо выбирать следя за энкодером исходя из того, чтобы ротор не "опрокинулся", т.е. не проскользнул. Быстро крутанем - даже при максимальном токе из-за инертности массы проскользнет, а значит дернется в другую сторону. Может смотреть за энкодером и держать опережение угла синуса относительно ротора? Ну то есть чтоб синус статора от ротора далеко не убегал. Подозреваю, что тоже есть какой-то закон типа V/F, как для асинхронников, но до сих пор с синхронниками не сталкивался, поэтому прошу подсказки специалистов - ссылки, литература, советы - все что не лень выложить.
|
|
|
|
|
 |
Ответов
|
Aug 31 2013, 17:32
|

Местный
  
Группа: Участник
Сообщений: 265
Регистрация: 19-01-12
Пользователь №: 69 736

|
Цитата каким образом связать переменную процесса (положение ротора) с ДВУМЯ управляемыми величинами - частотой синуса и амплитудой? Делайте так: Никаких ШИМов тут не надо. Два токовых релейных контура по дву фазам, с частотами коммутации несколько килогерц, теперь вы сможете задать вектор тока в системе координат 120 градусов. Далее с помощью сигнала с датчика положения и функции sin ориентируете вектор тока относительно ротора так, чтобы был максимальный момент (фазу вектора нужно будет настроить). Теперь вы сможете задавать амплитуду вектора тока, и она будет пропорциональна моменту на роторе. С теорией регулирования вы знакомы, тогда дальше просто - поверх делаем скоростной контур, а поверх него - позиционный. Конечно это в двух словах - на практике очень много подводных камней.
|
|
|
|
|
Aug 31 2013, 18:46
|
Профессионал
    
Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968

|
Цитата(Elsystems @ Aug 31 2013, 21:32)  Делайте так: Никаких ШИМов тут не надо. Два токовых релейных контура по дву фазам, с частотами коммутации несколько килогерц, теперь вы сможете задать вектор тока в системе координат 120 градусов. Далее с помощью сигнала с датчика положения и функции sin ориентируете вектор тока относительно ротора так, чтобы был максимальный момент (фазу вектора нужно будет настроить). Теперь вы сможете задавать амплитуду вектора тока, и она будет пропорциональна моменту на роторе. С теорией регулирования вы знакомы, тогда дальше просто - поверх делаем скоростной контур, а поверх него - позиционный. Конечно это в двух словах - на практике очень много подводных камней. Согласен, прочитал статейку микрочипа - там так же советуют - делаем фиксированное опережение угла для достижения максимального момента, угол опережения двигаем синхронно с ротором (следя за его положением по энкодеру), а управляем только посредством амплитуды синуса. Теперь возник еще вопрос. Посмотрел как слеплены драйверы (рисунок, упрощенный естественно) и задумался как таким управлять? Все нижние ключи управляются одной линией, верхние - раздельными. Получается в рабочем режиме нижние драйверы все должны быть включены, а верхние шимятся на положительной полуволне синуса, а на отрицательной что - отключаются и все? Так что ли? Стоп! Включив нижний драйвер, нам верхний то вообще нельзя включать - сквознячок будет...Как такое вообще работало тогда? Цитата alexPec то, что применяете ПЛИС это правильно, но зачем для управления МК, на ПЛИСе все функции можно сделать и лучше. Только я бы делал на CPLD и по отдельности каждый драйвер. Так МК то в той же ПЛИС и реализован, NIOS, для гибкости внешнего интерфейса и т.д.
Эскизы прикрепленных изображений
|
|
|
|
|
Sep 1 2013, 11:32
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Цитата(alexPec @ Aug 31 2013, 21:46)  Так МК то в той же ПЛИС и реализован, NIOS, для гибкости внешнего интерфейса и т.д. Посмотрел я что предлагает Altera в своем "Drive-On-Chip Reference Design" Да, поначалу смотрится впечатляюще, векторное управление 4-я сервоприводами одновременно! Но копнув глубже и разобравшись что у них сделано в железе, а что софтварно, возникает непреодолимое чувство, что это просто очередной маркетинговый развод. В железе сделаны только примитивный парк и кларк. Так их и Cortex щелкает своим float-point ускорителем за микросекунды. Как большое достижение Altera представляет ШИМ модуляторы. Так их 4-е штуки есть и в гораздо более дешевом MK60. Далее как достижение представлена синхронизация АЦП с ШИМ. Но вот у MK60 есть не только эта синхронизация и 16-и битный АЦП с аппаратной фильтрацией но и еще и PGA. Потом пространственно-векторная модуляция в альтере сделана программно! Все каналы PI тоже программные и на ARM9 или NIOS, которые заведомо тормознее Cortex-M4. Не удивительно, что у них частота модуляции выбрана 16 КГц. И как последний гвоздь, связывающий софт базируется на RTOS uCOS-II, которая в принципе устарела, бесплатная только в демках, и для коммерческого проекта неоправданно дорогая. Это при том, что для MK60 библиотеки управления движком идут с совершенно бесплатной и более мощной RTOS MQX.
|
|
|
|
|
Sep 1 2013, 16:39
|
Профессионал
    
Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968

|
Цитата Посмотрел я что предлагает Altera в своем "Drive-On-Chip Reference Design"
Да, поначалу смотрится впечатляюще, векторное управление 4-я сервоприводами одновременно! Честно говоря, даже не знал что оно такое есть. Спасибо за информацию! Я как-то не люблю использовать библиотеки, операционки, и стараюсь заимствовать по минимуму. В плис у меня будет СВОЙ ШИМ, аппаратный формирователь синуса, аппаратное слежение за энкодерами и аппаратное опережение угла. Т.е. векторное (так как я это понимаю) управление мне не нужно - я не оцифровываю токи, напряжения, не сравниваю фазы и т.д. На программу ляжет нагрузка только реализовать 4 PID-регулятора, причем с железа я буду считывать рассогласование, а управлять буду только амплитудой синусов. Как мне кажется, для такой задачи кортексы уж очень избыточно. Цитата Но вот у MK60 есть не только эта синхронизация и 16-и битный АЦП с аппаратной фильтрацией но и еще и PGA. Мне бы такие МК лет 5-6 назад, когда частотник лепил. Для асинхронных частотников конечно самое то.
|
|
|
|
|
Sep 1 2013, 18:41
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Цитата(alexPec @ Sep 1 2013, 19:39)  Т.е. векторное (так как я это понимаю) управление мне не нужно - я не оцифровываю токи, напряжения, не сравниваю фазы и т.д. В вашем случае для конкретного обсуждения все еще мешает большая неопределенность. Так какой у вас движок BLDC или BLAC (brushless AC, он же PMSM)? В случае BLDC векторное управление в принципе применить невозможно. А с BLAC без векторного управления и пространственно-векторной модуляции потеряете в стартовом моменте, стабилизации момента и коэффициенте использования напряжения (или будет меньше допуск на просадку напряжения), если вообще сумеете при заданных ограничениях мощности достичь необходимого согласования момента и скорости. Скорее всего попытка сделать "упрощенное" управление BLAC закончится констатацией факта, что не хватает мощности движка если движок был подсмотрен у аналогичных решений, но использующий векторное управление.
|
|
|
|
|
Jul 7 2015, 08:26
|
Местный
  
Группа: Свой
Сообщений: 229
Регистрация: 3-02-06
Из: Санкт-Петербург
Пользователь №: 13 974

|
Цитата(AlexandrY @ Sep 1 2013, 21:41)  В случае BLDC векторное управление в принципе применить невозможно. Можно с этого момента поподробнее, почему вы считате что при BLDC нельзя использовать векторное управление ?
|
|
|
|
|
Jul 8 2015, 08:52
|
Гуру
     
Группа: Свой
Сообщений: 3 439
Регистрация: 29-12-04
Пользователь №: 1 741

|
Цитата(Herz @ Jul 7 2015, 14:09)  Это тогда, два года назад, нельзя было. А если серьёзно, то, наверное, потому, что к несинусоидальному back-electromagnetic force (BEMF) векторный аппарат неприменим. Это два года тому назад нельзя было. А сейчас для векторного аппарата BLDC существует таблица коррекций формы тока или поля полюсов , которая заполняется на этапе самокалибровки привода под конкретный мотор. Точно так же как векторные частотники под асинхронные моторы самокалибровались. Едниственное неудобство- самокалибровка делается с прокручиванием вала мотора, так что надо нагрузку механически отсоединять. Кстати, поэтому на современных синхронных моторах перестали пилить выравнивающие поле (до формы синуса) канавки на полюсах- мы по этому поводу ругались с поставщиками- два года назад купленные моторы еще имели выравнивающие канавки, а современные-уже нет. А поставщики сказали- меняйте сервоконтроллер на более умный.
|
|
|
|
Сообщений в этой теме
alexPec Синхронный двигатель Aug 29 2013, 17:26 AlexandrY Цитата(alexPec @ Aug 29 2013, 20:26) ссыл... Aug 29 2013, 19:27 alexPec Цитата(AlexandrY @ Aug 29 2013, 23:27) Не... Aug 29 2013, 19:44 Herz Цитата(AlexandrY @ Aug 29 2013, 22:27) На... Aug 29 2013, 20:51  alexPec Посмотрел на сайт микрочипа и понял, что не понял ... Aug 30 2013, 04:08   AlexandrY Цитата(alexPec @ Aug 30 2013, 07:08) Посм... Aug 30 2013, 05:41    alexPec ЦитатаУ шаговых и BLDC как минимум разные схемы др... Aug 30 2013, 06:11 Iptash Цитата(alexPec @ Aug 29 2013, 21:26) 1. У... Aug 31 2013, 16:38        digital Цитата(khach @ Jul 8 2015, 11:52) Это два... Jul 9 2015, 10:08         khach Цитата(digital @ Jul 9 2015, 12:08) а как... Jul 9 2015, 10:42          digital Цитата(khach @ Jul 9 2015, 13:42) Да неиз... Jul 9 2015, 11:38           khach Цитата(digital @ Jul 9 2015, 13:38) ну гд... Jul 9 2015, 13:02            alexPec Цитата(khach @ Jul 9 2015, 17:02) , то эт... Jul 11 2015, 16:01             khach Цитата(alexPec @ Jul 11 2015, 18:01) Дада... Jul 11 2015, 18:18           Elsystems Цитата(digital @ Jul 9 2015, 14:38) Если ... Sep 5 2015, 17:06            digital Цитата(Elsystems @ Sep 5 2015, 20:06) Сис... Sep 15 2015, 13:28   LexaryStyle Цитата(AlexandrY @ Aug 31 2013, 23:32) Та... Nov 22 2013, 16:34 Lomax -
Цитата(Elsystems @ Nov 3 2015, 05:15) ... Jan 26 2016, 09:32 Iptash alexPec то, что применяете ПЛИС это правильно, но ... Aug 31 2013, 17:54 Elsystems ЦитатаВсе нижние ключи управляются одной линией, в... Sep 1 2013, 04:15 alexPec Пардон, на корпусе было плохо видно последнюю цифр... Sep 1 2013, 08:02 radosvet Прошу извините что вопрос не в тему, непонимаю как... Oct 25 2013, 21:40 TSerg Такие "вещи" для знако-переменной нагруз... Jul 11 2015, 18:36 digital Возможно сделать позиционирование при помощи синхр... Sep 15 2015, 10:00 Elsystems Цитата(digital @ Sep 15 2015, 13:00) Возм... Nov 3 2015, 05:15 Sidoroff Решил поднять тему.
Разрабатываю частотник для кит... Oct 2 2017, 18:29
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|