Перейти к содержанию
    

Ограничение ускорения

Контур скорости простой ПИ регулятор (или не совсем простой, это не столь важно). На вход идет управляющий сигнал (на графике синий), который может изменяться без каких либо ограничений. Дальше он пропускается через фильтр ограничивающий скорость его изменения, в результате получается заданное значение для контура скорости (зеленый).  Скорость двигателя на графике показана красным. Как видно, все хорошо работает пока двигатель способен поддерживать заданную скорость. Но вот однажды получилось так, что двигатель не смог развить заданную скорость (нагрузка, ЭДС сравнялась с питанием). Заданное значение при этом убежало высоко вверх. А когда управляющий сигнал ушел ниже текущей скорости, то торможение началось лишь после того как заданное значение "отмоталось" обратно до уровня текущей скорости. В итоге имеем существенную задержку на отклик. Как можно этого избежать и получить немедленный отклик в таком случае?

Спасибо.

g2f4.png

Изменено пользователем amaora
масштаб картинки

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

30 минут назад, amaora сказал:

В итоге имеем существенную задержку на отклик. Как можно этого избежать и получить немедленный отклик в таком случае?

Гуглить "Интегральное насыщение ПИД регулятора".

Их (методов) много разных есть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В регуляторе нет насыщения. Задержку вносит звено ограничения скорости нарастания, через которое пропущен управляющий сигнал.

Простой способ с анализом знаков потребует задания порога с учетом шума измерения скорости. Если можно этого избежать то лучше было бы избежать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Приветствую!

Бессмысленно пытаться  задать входное воздействие  которое система физически не может отработать. Если хотите   чтобы система всегда находилась в замкнутом режиме регулировки - то фильтр задатчик скорости должен ограничивать не только скорость изменения, но и максимальную задаваемую скорость на уровне физически достижимой. Заодно можно отслеживать  возникновение перегрузок по большой разнице задаваемого и установившегося значения. 

Удачи! Rob.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

18 минут назад, amaora сказал:

В регуляторе нет насыщения. Задержку вносит звено ограничения скорости нарастания, через которое пропущен управляющий сигнал.

А что это:

1 час назад, amaora сказал:

Заданное значение при этом убежало высоко вверх. А когда управляющий сигнал ушел ниже текущей скорости, то торможение началось лишь после того как заданное значение "отмоталось" обратно до уровня текущей скорости.

как не насыщение тогда? Оно самое и есть.

И зачем это?:

1 час назад, amaora сказал:

Дальше он пропускается через фильтр ограничивающий скорость его изменения, в результате получается заданное значение для контура скорости (зеленый).

Обычно вроде как ПИ-регулятор скорости на свой выход выдаёт требуемую величину крутящего момента. Вот величину этого запрошенного крутящего момента как раз и можно ограничить - и таким образом ограничить скорость ограничения скорости.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А, по-моему, там и так всё правильно отрабатывается. Торможение начинается именно тогда, когда нужно: когда управляющий сигнал "ушел ниже текущей скорости", и никакой задержки там нет.

 

21 minutes ago, RobFPGA said:

Бессмысленно пытаться  задать входное воздействие  которое система физически не может отработать.

Приветствую!

Не всегда известно заранее, может ли система отработать входное воздействие.

Удачи, Rob!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Управляющий сигнал там синий, он мгновенно ушел вниз. В этот момент можно бы уже начать снижать скорость.

10 minutes ago, jcxz said:

как не насыщение тогда? Оно самое и есть. 

Но не в регуляторе.

10 minutes ago, jcxz said:

Обычно вроде как ПИ-регулятор скорости на свой выход выдаёт требуемую величину крутящего момента.

Есть еще момент нагрузки, ограничить момент двигателя это не то же самое, что ограничить ускорение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Приветствую!

29 minutes ago, Herz said:

Не всегда известно заранее, может ли система отработать входное воздействие.

В таком случае система перестает быть следящей. И вы должны заранее смирится с тем что возможны моменты  когда система работает в разомкнутой петле  со всеми вытекающими из этого. 

Удачи! Rob.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мне ясно только две вещи:

1) Регулятор работает нормально, ведь вход у него это по сути зелёная линия а не синяя.

2) Если хотите улучшить отклик в таком "особом" случае, то вам нужно что то делать с задатчиком скорости, самый простой вариант предложили уже - ограничить предел по максимальному заданию, как вариант этот предел сделать плавающим и сделать его зависимым от максимального момента привода в текущем режиме и всё время этот предел двигать вверх<->вниз в зависимости от физической возможности привода реализовывать задание в текущей точке.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Господа, ищущие магические коэффициенты в формуле регулятора напоминают мне поиски философского камня...

Вы даже не сказали, чем вы управляете, - током или напряжением... Или, как делают программисты, - ШИМ...

Моторчик не знает, что некоторые не знают физических законов, которым он подчиняется...

Вот посчитайте максимальное ускорение при малой скорости и при близкой к максимальной. И мощность от блока питания.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

58 minutes ago, ELEKTROS said:

Мне ясно только две вещи: 

1) Да

2) Можно держать верхний предел на некоторым расстоянии от текущей скорости. Но выбор величины отступа очень компромиссный. А ведь тем мне и нравится это отдельное звено ограничения, что никаких параметров у него настраивать не нужно. Задали максимальное ускорение и оно его ограничивает, при любых параметрах привода.

2 minutes ago, Tanya said:

Вы даже не сказали, чем вы управляете, - током или напряжением... Или, как делают программисты, - ШИМ... 

Током, но это ничего не меняет, ведь вопрос не в регуляторе а до него.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это все меняет,  непонятно, почему это вам не понятно.

Все, что до регулятора... Так это чьи- то мозги, наверное...

Внутри тоже они же.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 hours ago, amaora said:

 В итоге имеем существенную задержку на отклик. Как можно этого избежать и получить немедленный отклик в таком случае?

Эт элементарно делается. 

image.thumb.png.b6a523ad052a05e4b53ec38d67bb3e22.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Параметры максимально допустимых скоростей и ускорений это входные константы на этапе проектирования регулятора.

Просто ограничьте скорость, при расчете траектории разгона - торможения, максимально допустимой.

А саму траекторию расчитывайте исходя из максимально допустимого ускорения.   

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И вот ничего лучше не нашлось. Держу заданный отступ от текущей скорости. Небольшая задержка остается т.к. нельзя сделать нулевой отступ из-за шума измерений.

 

g2f4.thumb.png.62e866a74a05a2cc7481061c52a1514f.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...