Jump to content

    

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

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

Спасибо.

g2f4.png

Edited by amaora
масштаб картинки

Share this post


Link to post
Share on other sites
30 минут назад, amaora сказал:

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

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

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

Share this post


Link to post
Share on other sites

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

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

Share this post


Link to post
Share on other sites

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

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

Удачи! Rob.

 

Share this post


Link to post
Share on other sites
18 минут назад, amaora сказал:

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

А что это:

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

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

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

И зачем это?:

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

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

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

Share this post


Link to post
Share on other sites

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

 

21 minutes ago, RobFPGA said:

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

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

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

Удачи, Rob!

Share this post


Link to post
Share on other sites

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

10 minutes ago, jcxz said:

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

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

10 minutes ago, jcxz said:

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

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

Share this post


Link to post
Share on other sites

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

29 minutes ago, Herz said:

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

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

Удачи! Rob.

Share this post


Link to post
Share on other sites

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

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

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

Share this post


Link to post
Share on other sites

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

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

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

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

Share this post


Link to post
Share on other sites
58 minutes ago, ELEKTROS said:

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

1) Да

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

2 minutes ago, Tanya said:

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

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

Share this post


Link to post
Share on other sites

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

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

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

Share this post


Link to post
Share on other sites
3 hours ago, amaora said:

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

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

image.thumb.png.b6a523ad052a05e4b53ec38d67bb3e22.png

Share this post


Link to post
Share on other sites

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

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

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

Share this post


Link to post
Share on other sites

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

 

g2f4.thumb.png.62e866a74a05a2cc7481061c52a1514f.png

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now