Алгоритм управления следящим приводом

Сервоприводы, шаговые двигатели, регуляторы скорости, частотные преобразователи

Re: Алгоритм управления следящим приводом

Сообщение Михайло » 04 ноя 2016, 13:14

Автоматизатор писал(а):Вроде теоретически такую штуку написать получилось. Вызывается раз в 10 мс в прерываниях.

Вроде как надо проще:
wзад(t) = Kp*[Hзад(t)-Hфакт(t)],
где
wзад - задание скорости частотнику ППО,
Kp - коэффициент пропорциональности,
Hзад - величина H, вычисленная по графику H(N),
Hфакт - величина H, измеренная по энкодеру.

Чем не нравится PID_Compact? Люди говорят, что он сам настраивается влет.
Михайло
Администратор
 
Сообщения: 3864
Зарегистрирован: 19 сен 2012, 19:16

Re: Алгоритм управления следящим приводом

Сообщение Автоматизатор » 05 ноя 2016, 09:01

Михайло писал(а):Вроде как надо проще:
wзад(t) = Kp*[Hзад(t)-Hфакт(t)],

Ваше "вроде" отличается от моего. Я думал, что проще выглядит так:

u(t) = u(t — 1) + Kp * e (t) ,
где е = заданное положение - текущее положение

[url=https://ru.wikipedia.org/wiki/ПИД-регулятор]а в википедии пишут[/url]
u(t) = u(t — 1) + Kp * {e (t) — e (t — 1)}
Аватара пользователя
Автоматизатор
Профессионал
 
Сообщения: 959
Зарегистрирован: 09 окт 2012, 05:18

Re: Алгоритм управления следящим приводом

Сообщение Михайло » 05 ноя 2016, 10:06

Эта рекуррентная формула для облегчения расчета интегральной составляющей. Для расчета П-регулятора смотри предыдущие нерекуррентные формулы.

Подставь в твою формулу из википедии u(t-1) = Kp*e(t-1), получишь мою формулу. Формулы эквивалентны, но моя более простая. На самом деле П-регулятор живет одним мгновением, ему нет необходимости запоминать предыдущие значения в отличие от ПИ-, ПИД-, ПД-, И- регуляторов.
Михайло
Администратор
 
Сообщения: 3864
Зарегистрирован: 19 сен 2012, 19:16

Re: Алгоритм управления следящим приводом

Сообщение mr_Frodo » 05 ноя 2016, 10:13

если в управлении требуется определённая динамика, то ПИД имеет место быть. Ведь в некоторых приложениях требуется не просто достичь точки А, но и за определённое время...
Вот моя подпись...
Аватара пользователя
mr_Frodo
Специалист
 
Сообщения: 482
Зарегистрирован: 22 июл 2016, 20:38

Re: Алгоритм управления следящим приводом

Сообщение Михайло » 05 ноя 2016, 11:51

mr_Frodo
Для этих целей нельзя использовать ИД-составляющие. Модель П-регулятор продиктована боженькой, так сказать. Добавишь ИД для данного объекта управления, получишь очень плохую динамику, а скорее всего неустойчивость.

Время перемещения можно регулировать только величиной ограничения на выходе П-регулятора (=ограничение скорости). Для регулирования времени перемещения нужно вводить еще один регулятор (И-регулятор). За сколькими зайцами хочешь угнаться, столько регуляторов и должно быть.
Михайло
Администратор
 
Сообщения: 3864
Зарегистрирован: 19 сен 2012, 19:16

Re: Алгоритм управления следящим приводом

Сообщение Автоматизатор » 06 ноя 2016, 08:22

Автоматизатор писал(а):Есть сомнения: как будет работать если отправлять задание инвертору по Profibus? Где вызывать SFB15: в самом прерывании, или в основной программе? Цикл программы в среднем 8 мс.
Аватара пользователя
Автоматизатор
Профессионал
 
Сообщения: 959
Зарегистрирован: 09 окт 2012, 05:18

Re: Алгоритм управления следящим приводом

Сообщение Михайло » 06 ноя 2016, 09:03

Скорость (задание скорости) не нужно слишком динамично менять, соответственно обсчитывать П-регулятор не требуется прям уж очень быстро. Да и требования к точности позиционирования не столь высокие, как я понимаю.
Михайло
Администратор
 
Сообщения: 3864
Зарегистрирован: 19 сен 2012, 19:16

Re: Алгоритм управления следящим приводом

Сообщение Автоматизатор » 13 ноя 2016, 17:32

Михайло писал(а):Да и требования к точности позиционирования не столь высокие, как я понимаю

Требуется отклонение от заданного положения не более 0.25 мм.

Провел ряд опытов. Получились противоречивые результаты. На графиках: синий - скорость, зеленый - заданное положение, красный - текущее положение.

скорость - плавная, ошибка по положению большая
g1.jpg


скорость скачет - положение точнее
g2.jpg


Надо усреднять значение скорости и пусть скачет ?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Автоматизатор
Профессионал
 
Сообщения: 959
Зарегистрирован: 09 окт 2012, 05:18

Re: Алгоритм управления следящим приводом

Сообщение Михайло » 13 ноя 2016, 18:03

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

Время в секундах?
Михайло
Администратор
 
Сообщения: 3864
Зарегистрирован: 19 сен 2012, 19:16

Re: Алгоритм управления следящим приводом

Сообщение Автоматизатор » 13 ноя 2016, 20:05

Это точки в которых измерения производится, период 10 мс
Аватара пользователя
Автоматизатор
Профессионал
 
Сообщения: 959
Зарегистрирован: 09 окт 2012, 05:18

Re: Алгоритм управления следящим приводом

Сообщение Михайло » 14 ноя 2016, 04:55

Значит процесс длится 3,44 сек?

Сейчас на компьютере графики открыл и разглядел, что красная линия экспоненциально как-то догоняет зеленую линию. Не совсем понятно, почему в момент времени 1,15 сек регулятор положения вдруг остановил погоню за зеленой линией? Ведь разница (H_new - H_act) положительная и достаточно большая. Может коэффициент Kp регулятора положения слишком маленький? Kp*(H_new - H_act) - это задание скорости.

Может ты там что-то перефильтровываешь? Сократи фильтры ну хотя бы до 20 мс. Фильтры должны бороться только с помехами и не вычищать полезный сигнал (объективную "картину" для регулятора).
Михайло
Администратор
 
Сообщения: 3864
Зарегистрирован: 19 сен 2012, 19:16

Re: Алгоритм управления следящим приводом

Сообщение Автоматизатор » 14 ноя 2016, 05:42

Михайло писал(а):Не совсем понятно, почему в момент времени 1,15 сек регулятор положения вдруг остановил погоню за зеленой линией?

Там переходный процесс - изменяется задание (увеличивается раза в 2), тоже в конце - только уменьшается.

Фильтров нет.

При увеличении Кр ошибка уменьшается, но скорость скачет. Страшно смотреть. Может надо на приводе сделать разгон/торможение плавным, чтобы не дергался?
Аватара пользователя
Автоматизатор
Профессионал
 
Сообщения: 959
Зарегистрирован: 09 окт 2012, 05:18

Re: Алгоритм управления следящим приводом

Сообщение Михайло » 14 ноя 2016, 05:55

Автоматизатор писал(а):Может надо на приводе сделать разгон/торможение плавным, чтобы не дергался?

Ну тебе же надо обеспечить точность 0,25 мм. А график пусть дергается, там все равно ток (=момент=ускорение) ограничен в контуре регулирования тока. Скачет скорость немножко вокруг некоторого значения.
Вон я когда на приводе отрегулировал почти нулевой момент, так кинематические передачи начинали стучать зубьями (=повышенный шум). Вот это да.
Михайло
Администратор
 
Сообщения: 3864
Зарегистрирован: 19 сен 2012, 19:16

Re: Алгоритм управления следящим приводом

Сообщение Автоматизатор » 14 ноя 2016, 07:16

Дергается не только график. Вибрации видно на глаз, что не очень хорошо. Полученный с частотника график выглядит так:

График.jpg


Это нормальная работа?

Есть документ
Настройка регулятора скорости.pdf
в котором даны рекомендации по настройке регулятора скорости. К настройке регулятора положения это справедливо?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Автоматизатор
Профессионал
 
Сообщения: 959
Зарегистрирован: 09 окт 2012, 05:18

Re: Алгоритм управления следящим приводом

Сообщение Михайло » 14 ноя 2016, 07:54

Ах да, я что-то про регулятор скорости забыл.
У тебя наверное из-за него проблемы. Работа ненормальная. Черная линия от красной отстает (на последнем графике). Попробуй убрать контур положения и задание скорости подать ступенькой (П-регулятор положения отсоединить). Займись сначала внутренними регуляторами: регулятор тока, потом регулятор скорости и только потом отстраивать регулятор положения. Ведь теория о том, что регулятор положения должен быть пропорциональным, строится на предположении, что внутренние контуры регулирования качественно отрабатывают задания (быстро и без перерегулирования).
Может там задатчик интенсивности (Ramp-function-generator) мешает? Надо попробовать уменьшить время разгона-торможения.
Михайло
Администратор
 
Сообщения: 3864
Зарегистрирован: 19 сен 2012, 19:16

Re: Алгоритм управления следящим приводом

Сообщение Михайло » 14 ноя 2016, 08:02

Настраивать регулятор положения намного проще, здесь же всего один параметр Kp. Увеличение Kp приводит к увеличению быстродействия, но перерегулированию. Уменьшение - наоборот. При условии, что внутренние контуры уже оптимизированы (настроены регуляторы, задатчики интенсивности и прочие лимитеры).
Михайло
Администратор
 
Сообщения: 3864
Зарегистрирован: 19 сен 2012, 19:16

Re: Алгоритм управления следящим приводом

Сообщение Автоматизатор » 14 ноя 2016, 10:40

Михайло писал(а):Ах да, я что-то про регулятор скорости забыл.
У тебя наверное из-за него проблемы. Работа ненормальная. Черная линия от красной отстает (на последнем графике)


Автонастройку привода скорее всего делали без вращения, т.к. нагрузка (редуктор + ШВП) была приделана. Да и массы там, подозреваю, хорошие - есть инерционность.
На ступенчатое изменение задания привод отрабатывает с небольшим перерегулированием.

Михайло писал(а):Настраивать регулятор положения намного проще, здесь же всего один параметр Kp.

При Кр=15 при равномерном перемещении ошибка около 6 мм. При Кр=20 идут сильные колебания (привод сильно дергается даже на глаз).

Я добавил интегральную составляющую с целью уменьшить статическую ошибку П-регулятора. Ошибка уменьшилась в 2 раза (Ki=0.15)
Аватара пользователя
Автоматизатор
Профессионал
 
Сообщения: 959
Зарегистрирован: 09 окт 2012, 05:18

Re: Алгоритм управления следящим приводом

Сообщение Михайло » 14 ноя 2016, 20:27

Здесь рекомендуют ПИ-регулятор в п. 9.3.1: http://model.exponenta.ru/epivod/glv_090.htm Причина в том, что для следящего привода требуется обеспечить астатизм второго порядка (как бы нечувствительность к линейно нарастающему сигналу задания).
Можно перейти к той самой рекурсивной формуле.
Михайло
Администратор
 
Сообщения: 3864
Зарегистрирован: 19 сен 2012, 19:16

Re: Алгоритм управления следящим приводом

Сообщение Автоматизатор » 15 ноя 2016, 12:29

Результаты опытов: статическую ошибку с 18 мм удалось снизить до 4 путем введения интегральной составляющей и увеличения коэффициентов Кр и Кi до максимальных значений (Кр=8,0 Кi=0.1; есть колебания и перерегулирование).

График.jpg


Если еще увеличивать коэффициенты, то вибрации уже ощутимые становятся. При данной реализации ничего лучше не получить. Надо что-то принципиально менять в реализации алгоритма работы регулятора.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Автоматизатор
Профессионал
 
Сообщения: 959
Зарегистрирован: 09 окт 2012, 05:18

Re: Алгоритм управления следящим приводом

Сообщение Автоматизатор » 15 ноя 2016, 12:38

Может до кучи диф. составляющую добавить?
Аватара пользователя
Автоматизатор
Профессионал
 
Сообщения: 959
Зарегистрирован: 09 окт 2012, 05:18

Пред.След.

Вернуться в ЭЛЕКТРОПРИВОД

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1