Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Модель двигателя и системы управления.
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Математика и Физика
DmitriyX
Требуется управлять двигателем переменного тока с тремя обмотками. Требуемый угол поворота двигателя от -4 градусов до +4 градусов. В связи с этим, для управления двигателем задействуется только ОДНА его обмотка, скорость движения двигателя будет пропорциональна току в этой одной обмотке.
Требуется управлять двигателем, чтобы от разгона до торможения колебания его скорости составляли не более 0,1%, т.е. высокоточно регулировать.
В документации на двигатель нашел значения электрической и механической постоянной времени. Простейшая модель двигателя, которая напрашивается после этого - два апериодических звена, соединенных последовательно. В модель также добавил белошумные источники помех измерений и помех воздействия. Рисунок модели прилагается.
Изначально предполагалось управлять двигателем с помощью классического ПИД-регулирования, но требуемой точности достигнуть не удалось.
Пытался синтезировать коэффициенты при теоретических расчетах следующим образом: получить такой ПИД-регулятор, который после перемножения на передаточную функцию двигателя дает интегратор 1/s. Но после расчета возникло затруднение точным образом оценить ошибку регулирования.
В связи с этим следующие вопросы:
1. Каким образом усовершенствовать модель описанного выше двигателя? Может трение в осях добавить? (только плохо представляю как сделать это в операторной форме). Может как-то еще?
2. В связи с тем, что ПИД-регулирование не достигает нужной точности на практике, предполагается применить адаптивные алгоритмы регулирования, но изучением их я пока еще на начал заниматься. Каким образом и в каких моделях можно будет адеквадно оценить ошибку адаптивного регулирования? (в операторной форме адаптивные алгоритмы ведь не моделируются)
3. Если кто-то занимался работой с адаптивными алгоритмами регулирования, то буду очень благодарен за ссылку на материалы об этом.
Tanya
Цитата(DmitriyX @ Jul 12 2007, 13:00) *
Требуется управлять двигателем переменного тока с тремя обмотками. Требуемый угол поворота двигателя от -4 градусов до +4 градусов.

Вам на модели не удается управлять или на реальном двигателе?
Вы плохо описали требования - желаемую траекторию в фазовом пространстве... Некоторые траектории недостижимы...
DmitriyX
Цитата(Tanya @ Jul 12 2007, 14:04) *
Вам на модели не удается управлять или на реальном двигателе?
Вы плохо описали требования - желаемую траекторию в фазовом пространстве... Некоторые траектории недостижимы...


Не удается управлять на практике. А на модели я не знаю как смоделировать источник ошибок таким образом, чтобы после получения интегратора не удавалось регулирование.
Траектория следующая: разгон за 0.05с, движение с постоянной скоростью 0.5с, торможение 0.05с. На участке движения с постоянной скоростью необходимо поддерживать постоянную скорость с точностью 0.1%.
Tanya
Цитата(DmitriyX @ Jul 12 2007, 14:17) *
Не удается управлять на практике. А на модели я не знаю как смоделировать источник ошибок таким образом, чтобы после получения интегратора не удавалось регулирование.
Траектория следующая: разгон за 0.05с, движение с постоянной скоростью 0.5с, торможение 0.05с. На участке движения с постоянной скоростью необходимо поддерживать постоянную скорость с точностью 0.1%.

А что Вы регулируете (контролируете) именно скорость, или координату от времени? Если второе, то, действительно плохо будет получаться... особенно с интегральным звеном...
Если скорость, то какой датчик? У него тоже ведь есть свои задержки...
DmitriyX
Цитата(Tanya @ Jul 12 2007, 14:24) *
А что Вы регулируете (контролируете) именно скорость, или координату от времени? Если второе, то, действительно плохо будет получаться... особенно с интегральным звеном...
Если скорость, то какой датчик? У него тоже ведь есть свои задержки...


Регулирую скорость. Про датчик совсем забыл написать.
Датчик движения скорости - лазер. Система преобразования сигнала с лазера (в подробности системы не вдавался) на выходе выдает меандр, частота которого пропорциональна скорости движения двигателя. Требуемой скорости движения двигателя соответствует частота меандра 52.5 КГц. Т.е. чаще, чем с 52КГц не получится изменять воздействие. Воздействие на двигатель - ШИМ с последующим сглаживанием.

Каким образом это можно учесть в модели?
NickNich
Цитата(DmitriyX @ Jul 12 2007, 13:00) *
В связи с этим следующие вопросы:
1. Каким образом усовершенствовать модель описанного выше двигателя? Может трение в осях добавить? (только плохо представляю как сделать это в операторной форме). Может как-то еще?
2. В связи с тем, что ПИД-регулирование не достигает нужной точности на практике, предполагается применить адаптивные алгоритмы регулирования, но изучением их я пока еще на начал заниматься. Каким образом и в каких моделях можно будет адеквадно оценить ошибку адаптивного регулирования? (в операторной форме адаптивные алгоритмы ведь не моделируются)
3. Если кто-то занимался работой с адаптивными алгоритмами регулирования, то буду очень благодарен за ссылку на материалы об этом.

Мало что могу сказать про трехфазные двигатели переменного тока, но несколько общих рекомендаций. Скачайте и прочитайте эту книжку (линк внизу стнаицы). В ней есть разделы посвященные управлению различными типами электродвигателей, в т.ч. и вашего, построению адаптивных систем управления двигателями, и что особенно актуально - раздел посвященный моделированию электропривода. Кстати, в операторной форме адаптивные алгоритмы моделируются, нужно только правильно описать операторы...

Далее найдите в ражделе Документация данного форума ссылки на сайты с литераторой (например - http://www.umup.narod.ru/) про электропривод, скачайте все что сможете найти и ищите книжку, в которой наиболее математически подробно описан двигатель вашего типа - это позволит создать более точную модель двигателя для симуляции и определить наиболее существенные параметры.
Oldring
Цитата(DmitriyX @ Jul 12 2007, 13:00) *
Требуется управлять двигателем переменного тока с тремя обмотками. Требуемый угол поворота двигателя от -4 градусов до +4 градусов. В связи с этим, для управления двигателем задействуется только ОДНА его обмотка, скорость движения двигателя будет пропорциональна току в этой одной обмотке.


Обычный трехфазный асинхронник что-ли? Ничего не понял...
repairDV
А вы не могли бы просто привести принципиальную схему - что и к чему вы подключаете? А то как-то непонятно - как можно крутить трёхфазный(?) двигатель одной(?) фазой.
Tanya
Цитата(DmitriyX @ Jul 12 2007, 15:25) *
Регулирую скорость. Про датчик совсем забыл написать.
Датчик движения скорости - лазер. Система преобразования сигнала с лазера (в подробности системы не вдавался) на выходе выдает меандр, частота которого пропорциональна скорости движения двигателя. Требуемой скорости движения двигателя соответствует частота меандра 52.5 КГц. Т.е. чаще, чем с 52КГц не получится изменять воздействие. Воздействие на двигатель - ШИМ с последующим сглаживанием.

Каким образом это можно учесть в модели?

А что Вы потом с этим меандром делаете? Или точно меряете время между его фронтами?
Сглаживать ШИМ не нужно - еще одна задержка... Инерция ротора сама проинтегрирует - сгладит.
Вам бы еще добавить обратную связь по току с интегрированием - будет пропорционально моменту импульса... Интегрировать разность от датчика тока и сигнала от системы управления, которая должна выдавать сигнал ускорения - то бишь момент желаемый.... Потом компаратор - потом ключ... Шим сам собой получится... Типа - сигма-дельта АЦП...
DmitriyX
Цитата(Oldring @ Jul 12 2007, 15:36) *
Обычный трехфазный асинхронник что-ли? Ничего не понял...


Цитата(repairDV @ Jul 12 2007, 15:56) *
А вы не могли бы просто привести принципиальную схему - что и к чему вы подключаете? А то как-то непонятно - как можно крутить трёхфазный(?) двигатель одной(?) фазой.


Да, трехфазный двигатель. Две его обмотки висят в воздухе. На третью подается напряжение от -27В до +27В. Поскольку угол поворота двигателя требуется от -4 градусов до +4 градусов, то напряжение подается только на ценральную обмотку.


Цитата(Tanya @ Jul 12 2007, 15:58) *
А что Вы потом с этим меандром делаете? Или точно меряете время между его фронтами?
Сглаживать ШИМ не нужно - еще одна задержка... Инерция ротора сама проинтегрирует - сгладит.
Вам бы еще добавить обратную связь по току с интегрированием - будет пропорционально моменту импульса... Интегрировать разность от датчика тока и сигнала от системы управления, которая должна выдавать сигнал ускорения - то бишь момент желаемый.... Потом компаратор - потом ключ... Шим сам собой получится... Типа - сигма-дельта АЦП...


Измеряю точный период между фронтами. На основе длительности расчитываю воздействие и подаю его на ШИМ. Пробовали без сглаживания - мотор начинает визжать и регулирование ужасное. Аппаратную схему на данном этапе менять не представляется возможным. Поэтому в данной теме интересует мнение с точки зрения теории, расчета воздействия при наличии описанного выше измерительного канала.
Yura_K
1) Может приведете э/схему управления или хотя бы структурную схему?
2) Управление осуществляется в цифре или аналоге?
3) Приведите, пожалуйста, больше инфы о двигателе.
Tanya
Цитата(DmitriyX @ Jul 12 2007, 18:25) *
Да, трехфазный двигатель. Две его обмотки висят в воздухе. На третью подается напряжение от -27В до +27В. Поскольку угол поворота двигателя требуется от -4 градусов до +4 градусов, то напряжение подается только на ценральную обмотку.
Измеряю точный период между фронтами. На основе длительности расчитываю воздействие и подаю его на ШИМ. Пробовали без сглаживания - мотор начинает визжать и регулирование ужасное. Аппаратную схему на данном этапе менять не представляется возможным. Поэтому в данной теме интересует мнение с точки зрения теории, расчета воздействия при наличии описанного выше измерительного канала.

1. Это с каким же временным разрешение надо измерять время между фронтами...
Ну... раза в три лучше, чем 1/1000... 6 наносекунд получается... У вас получается такая точность?
2. У Вашего двигателя момент пропорционален квадрату тока? Совсем нехорошо для Вас... Без обратной связи по реальному воздействию не обойтись.
3. Раз Вы можете его очень быстро разогнать, то значит трение очень мало и в режиме постоянной скорости ток в обмотке должен быть порядка нескольких процентов от максимального и поддерживаться с большой точностью... Какая у Вас разрядность ШИМа? Думается, что не хватит ее....
Раз Вы железо (систему управления) менять не можете, то Вам может помочь несколько увеличение момента инерции до максимальной величины, еще обеспечивающей нужное время разгона... А потом совсем выключать или изредка подталкивать короткими импульсами...
DmitriyX
Цитата(Yura_K @ Jul 12 2007, 20:44) *
1) Может приведете э/схему управления или хотя бы структурную схему?
2) Управление осуществляется в цифре или аналоге?
3) Приведите, пожалуйста, больше инфы о двигателе.

Структурная схема управления приводится ниже.
Управление осуществляется в цифре.
Информация о двигателе: http://mashap.maverick.ru/rus/eeng.html
Модель двигателя: ДБМ40-0,01-5-3


Цитата(Tanya @ Jul 13 2007, 10:00) *
1. Это с каким же временным разрешение надо измерять время между фронтами...
Ну... раза в три лучше, чем 1/1000... 6 наносекунд получается... У вас получается такая точность?
2. У Вашего двигателя момент пропорционален квадрату тока? Совсем нехорошо для Вас... Без обратной связи по реальному воздействию не обойтись.
3. Раз Вы можете его очень быстро разогнать, то значит трение очень мало и в режиме постоянной скорости ток в обмотке должен быть порядка нескольких процентов от максимального и поддерживаться с большой точностью... Какая у Вас разрядность ШИМа? Думается, что не хватит ее....
Раз Вы железо (систему управления) менять не можете, то Вам может помочь несколько увеличение момента инерции до максимальной величины, еще обеспечивающей нужное время разгона... А потом совсем выключать или изредка подталкивать короткими импульсами...

1. Период измеряю таймером с частотой 150 МГц, получается чуть больше 6 наносекунд.
2. Честно говоря не знаю, пропорционален ли момент квадрату тока. Мне почему-то казалось, что скорость двигателя прямопропорциональна току в обмотке.
3. Разрядность ШИМа 10 бит. Двигатель удается разогнать, но не быстро. Подав максимальное воздействие, он разгоняется до номинальной скорости где-то за 0.3-0.4с минимум, должно укладываться в 0.5с. Но увеличение момента инерции это идея хорошая.

Хотелось бы эту систему промоделировать и теоретически проверить различные методы эффективного управления. Только учитывая все приведенные выше особенности системы затрудняюсь составить ее модель сходу.
Но в любом случае буду благодарен за советы, какие алгоритмы управления подойдут в этом случае лучше.
Tanya
Цитата(DmitriyX @ Jul 13 2007, 11:27) *
Структурная схема управления приводится ниже.
Управление осуществляется в цифре.
Информация о двигателе: http://mashap.maverick.ru/rus/eeng.html
Модель двигателя: ДБМ40-0,01-5-3
1. Период измеряю таймером с частотой 150 МГц, получается чуть больше 6 наносекунд.
2. Честно говоря не знаю, пропорционален ли момент квадрату тока. Мне почему-то казалось, что скорость двигателя прямопропорциональна току в обмотке.
3. Разрядность ШИМа 10 бит. Двигатель удается разогнать, но не быстро. Подав максимальное воздействие, он разгоняется до номинальной скорости где-то за 0.3-0.4с минимум, должно укладываться в 0.5с. Но увеличение момента инерции это идея хорошая.

Хотелось бы эту систему промоделировать и теоретически проверить различные методы эффективного управления. Только учитывая все приведенные выше особенности системы затрудняюсь составить ее модель сходу.
Но в любом случае буду благодарен за советы, какие алгоритмы управления подойдут в этом случае лучше.

А Вы писали 0.05 секунды...
Вы должны не моделировать, а измерить сначала реальные данные...
Какой момент добавляется от минимального кванта ШИМа. Если момент пропорционален квадрату тока, то надо измерить и для других значений... Если после ШИМа фильтрация, то еще хуже... Квадрат среднего не равен среднему в квадрате... Для требуемой точности (мое мнение) без обратной связи по реальному воздействию не обойтись... Увы...
DmitriyX
Цитата(Tanya @ Jul 13 2007, 11:51) *
А Вы писали 0.05 секунды...
Вы должны не моделировать, а измерить сначала реальные данные...
Какой момент добавляется от минимального кванта ШИМа. Если момент пропорционален квадрату тока, то надо измерить и для других значений... Если после ШИМа фильтрация, то еще хуже... Квадрат среднего не равен среднему в квадрате... Для требуемой точности (мое мнение) без обратной связи по реальному воздействию не обойтись... Увы...


ой, прошу прощения, 0,03-0,04 секунды.
А можно поподробнее про обратную связь по реальному воздействию? Что она дает?
Tanya
Цитата(DmitriyX @ Jul 13 2007, 11:58) *
ой, прошу прощения, 0,03-0,04 секунды.
А можно поподробнее про обратную связь по реальному воздействию? Что она дает?

Посмотрела описание двигателя. Похоже, Вам повезло - двигатель с постоянными магнитами - момент примерно пропорционален будет току, если не учитывать его зависимость от угла поворота, который вроде небольшой у Вас...
Для повышения точности и быстродействия можно ввести обратную связь по реальному воздействию - таким образом учитываются возмущения вносимые в Вашем случае невоспроизводимостью импульсов тока в обмотке. Учет этого до того, как появится рассогласование в скорости, которое Вы должны измерить и скорректировать ток, значительно (обычно на порядки) уменьшает колебания. В посте номер 9 это и было описано.
Еще замечание. Какая у Вас задающая функция? Если трапеция, то это плохо для ШИМа. Нужно либо отключать интегральную компоненту на время, либо для этого режима подбирать другие параметры. Или что-то S-образное сделать.
Лучше всего для ускорения "врубить" полную мощность без регулирования до достижение (подбирать придется) почти конечной скорости - это будет релейный режим, после чего включать ШИМ (лучше от источника с малым напряжением) - ведь энергия уже закачана почти вся... Плюс такого подхода в том, что квадратичная зависимость энергии от угловой скорости будет линеаризована. Другими словами - противоэдс будет константой.
Так как ускорение весьма кратковременно, то ток в обмотке может быть в несколько раз больше максимального по паспорту, что ускорит этот процесс...
Вот на моих пальцах так получается....
repairDV
Цитата(Tanya @ Jul 12 2007, 22:58) *
Вам бы еще добавить обратную связь по току с интегрированием - будет пропорционально моменту импульса... Интегрировать разность от датчика тока и сигнала от системы управления, которая должна выдавать сигнал ускорения - то бишь момент желаемый.... Потом компаратор - потом ключ... Шим сам собой получится... Типа - сигма-дельта АЦП...

А можно немного подробнее? Кстати, этот вопрос меня всё время интересовал. Т.е., с датчика или трансформатора тока снимаются импульсы ШИМ? Т.е., вы предлагаете сравнивать именно импульсы, а не отфильтрованный сигнал, который по частоте равен частоте модулирующего напряжения, т.е., в который "вставляется" ШИМ? Я сейчас разбираюсь с регулированием момента асинхронника с помощью изменения ширины ШИМ, и обратную связь сделал: ШИМ, снимаемый со вторички трансформатора тока, проходит через фильтр низкой частоты 50 гц, выделяется нуль-органом момент перехода полученной синусоиды через ноль и измеряется угол сдвига фазы между задающим напряжением и этим переходом. Но при таком способе - куча проблем, сейчас вот ещё одна выплыла: термокомпенсация, даже пока не понял, чего, то ли двигатель нагревается и из-за этого "плывёт" фаза, то ли это температурный дрейф операционников, которые используются в схеме фильтра обратной связи по току. А вначале ещё была мысль: а влияет ли нагрузка на двигатель на фазу самих импульсиков ШИМ, которые снимаются со вторички трансформатора тока? Такой способ был бы проще. Это вы имеете такой практический опыт реализации, или это у вас только теория?
Tanya
Цитата(repairDV @ Jul 13 2007, 14:47) *
А можно немного подробнее? Кстати, этот вопрос меня всё время интересовал. Т.е., с датчика или трансформатора тока снимаются импульсы ШИМ? Т.е., вы предлагаете сравнивать именно импульсы, а не отфильтрованный сигнал, который по частоте равен частоте модулирующего напряжения, т.е., в который "вставляется" ШИМ? Я сейчас разбираюсь с регулированием момента асинхронника с помощью изменения ширины ШИМ, и обратную связь сделал: ШИМ, снимаемый со вторички трансформатора тока, проходит через фильтр низкой частоты 50 гц, выделяется нуль-органом момент перехода полученной синусоиды через ноль и измеряется угол сдвига фазы между задающим напряжением и этим переходом. Но при таком способе - куча проблем, сейчас вот ещё одна выплыла: термокомпенсация, даже пока не понял, чего, то ли двигатель нагревается и из-за этого "плывёт" фаза, то ли это температурный дрейф операционников, которые используются в схеме фильтра обратной связи по току. А вначале ещё была мысль: а влияет ли нагрузка на двигатель на фазу самих импульсиков ШИМ, которые снимаются со вторички трансформатора тока? Такой способ был бы проще. Это вы имеете такой практический опыт реализации, или это у вас только теория?

Вы меня неправильно поняли. Я писала совсем о другом.... Была описана одна из реализаций того, о чем шла речь... Предлагалось использовать следующую структуру в случае импульсного управления.
Выход системы управления (пусть будет аналоговый) поступает на один из входов интегратора, а на его второй вход сигнал пропорциональный току, текущему через обмотку (естественно с другим знаком). На выходе стоит компаратор или АЦП. Компаратор опрашивается с удобной частотой. Его выход может включать, а может и не включать ключ (как сложится...). А могут быть два ключа - на + и на -... Это неважно. Важно то, что средний по времени сигнал управления и обратной связи равны становятся...
И управление становится "натуральным" - ведь управлять нужно не напряжением дурацкой формы, производимой ШИМом на обмотке, а именно моментом, который, как мы привыкли полагать, пропорционален току в таком двигателе, который (ток, а не двигатель), в свою очередь сложным образом зависит от много от чего... О чем в этом случае можно забыть...
Но проинтегрированная (усредненная) разность нам желаемое и обеспечит...
Практический опыт имею... Вот делюсь... Нового в идейном плане тут ничего нет.
Если это не подробно, то извините.... Наши пальчики устали...
Yura_K
DmitryX, у Вас обыкновенный моментный двигатель. Если Вам необходимо управлять скоростью, то можно использовать датчик угла, вычисляя дифференциал (скорость), далее вычислять рассогласование по скорости (ошибку) и посылать ее через корректирующее звено на усилитель, не забыв умножить предварительно на синус угла датчика. Кстати, датчик угла должен быть согласован с обмоткой двигателя.
P.S. Приведите, пожалуйста, структурную схему своей следящей системы для сравнения.
evgeny_ch
Цитата
Требуется управлять двигателем переменного тока с тремя обмотками.

А вы управляете не двигателем, а магнитом возле катушки с током.
Цитата
1. Каким образом усовершенствовать модель описанного выше двигателя?

Привести физический принцип управления в соответствие с моделью.
Модель вентильного (бесконтактного, бесколлекторного электродвигателя с постоянными магнитами, BLDC, PMSM) в режиме управления с ОС (классического по 2-3 фазам) эквивалентна ДПТ.
Поскольку вы управляете не двигателем, а отдельными его полюсами, придется изобретать свою модель.
А какая кинематическая задача?
TSerg
Полагаю, что главная ошибка - использование всего одной обмотки.
При использовании хотя бы двух обмоток реализуем режим синхронной машины в пределах малого угла поворота, что и требуется по заданию - разгон, движение с постоянной скоростью, торможение.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.