Pull to refresh
30
0.2
Станислав @Arastas

Пользователь

Send message
Расчёт с помощью Matlab dlqr дает F=-[0.052 0.354]:

A=[1 1;0 1];
B=[0;1];
Q=eye(2);
R=256;
F=-dlqr(A,B,Q,R)

Достаточно близко, на мой взгляд.
Ну давайте попробуем Ваш пример из статьи посмотреть. Как я понимаю, система описывается в виде
x{k+1}=Ax{k}+Bu{k}, где A=[1 1; 0 1]; B=[0;1], правильно? Не могу сейчас в коде найти, какие у Вас матрицы Q, R, N, как Вы J считаете?
Вообще, перергулирование имеет достаточно конкретное определение и находится по переходному процессу, т.е. реакции на единичное ступенчатое воздействие при нулевых начальных условиях. Однако, так как для нелинейных систем переходный процесс не масштабируем, то часто на практике перерегулирование находится по конкретной траектории. Которая всё равно имеет вид перехода из одного постоянного положения в другое. В Вашем примере будет отдельно траектория палки и отдельно тележки, по каждой траектории можно что-то считать.
Кстати, когда говорят про перевернутый маятник, то обычно задачи вывода тележки в точку нет, есть задача стабилизации палки.
Я имею ввиду сравнить Ваш вектор F с тем, который получится путем аналитического синтеза, т.е. решения уравнения Риккати.
1) Согласен. Я как раз хотел сказать, что минимум функционала J может достигаться и на траекториях с перерегулированием.
2) Перергулирование определяется для скалярных траекторий, как правило, для выходного сигнала, в Вашем случае — для положения.
3) Если в этом примере нас интересует стабилизация палки, то и перерегулирование логично смотреть в траектории палки, а не в движении тележки.
Можно еще добавить 3.5 — сравнить полученную матрицу F с той, что считается аналитически по матрицам A, B и критерию оптимальности.
Как правило, балансир предполагает, что мы стоим в положении равновесия, т.е. u=0. Или же мы можем сделать эту точку точкой равновесия за счет постоянного управления, тогда эта постоянная составляющая в модели отклонений не учитывается.
Теоретически, не вижу причин, почему обратный маятник не может быть стабилизирован без перерегулирования. Хватало бы быстродействия и точности измерений и оценки параметров.
1) Этот функционал может дать перерегулирование, а может и нет, смотря какие матрицы выбраны. Вообще, на сколько я помню, для любого вектора обратных связей существуют такие матрицы Q, R, что этот вектор оптимален для этого функционала.
2) Перерегулирование может быть плохо, а может и хорошо, в малых количествах. Например, классические настройки на оптимум предполагают малое перерегулирование, до 5%, так как это заметно сокращает общее время переходного процесса.
Формально, d2x уже не соответствует классическому скалярному PID. А в общем случае нелинейной системы нет оснований считать, что измеряемые состояния являются линейной комбинацией скоростей/ускорений.
Но это так, общие рассуждения, а на практике по различным оценкам порядка 90% используемых регуляторов — PID.
Не понял, почему же закон управления для произвольной нелинейной системы третьего порядка должен обязательно иметь форму pid? Там есть и другие варианты.
Ёлки, да ведь они предполагают, что финальное состояние, в которое мы хотим попасть, это нулевой вектор!!! КАКОГО [CENSORED] ОБ ЭТОМ НА ВСЕЙ СТРАНИЦЕ ВИКИПЕДИИ НИ СЛОВА?!

Видимо, это одно из тех общепринятых знаний, что зачем о нём писать, и так ведь все знают. :)
Для линейных систем, если явно не оговорено иного, всегда рассматривается задача перевода системы в нулевое положение равновесия. Потому что для линейных систем задача перевода из одного положения в другое эквивалентна задаче перевода из ненулевого начального состояния в нулевое.
Отдельно рассматривается задача слежения, т.е. когда желаемое положение не константа, а некоторая траектория.
LQR можно аналитически обобщить на произвольную размерность и на системы с несколькими входами и несколькими выходами.
Ни LQR ни классический PID не адаптивны, т.е. не подстраиваются под изменения параметров системы. Но могут быть достаточно робастны, т.е. сохранять работоспособность при изменении параметров.
Это, на самом деле, вопрос терминологии, как договоримся обзываться. Формально, Ваша P составляющая по скорости является D составляющей по положению, так что можно сказать, что Ваш регулятор эквивалентен некоторому PD.

К вопросу о "смешивании". Если P-регулятор скалярный, то он действительно берет один сигнал (как правило, ошибку, рассогласование) и формирует управление как некоторый k умножить на сигнал. Если же P-регулятор векторный, то берется вектор сигналов и скалярно умножается на вектор коэффициентов, получается скалярное управление. И то и то может называться P-регулятором.
Я к тому моменту уже представлял и обратные матрицы, и всё такое базовое. Так что этот ответ меня бы совершенно не устроил.
Меня больше интересовало, как так вышло, что хитрым образом вычисляемый скаляр вдруг оказывается таким важным для матриц, в чём тут глубинный смысл. К сожалению, на такие вопросы ответить, вроде как, сложнее, чем на "где используется".
Помню, что на первом курсе спросил — а зачем матрице детерминант. Мне сказали — "много зачем!" и я отстал.
Это претензия не к инструменту, а к тем, кто его использует.
По поводу остального — 1) у МНК есть аналитическое решение, в отличие от многих других, 2) в силу первого, МНК существенно быстрее.
При вычислении норм в степень возводят модули, так что норма всё равно неотрицательна.
Не совсем ясно, а в чём претензия к МНК-то? МНК Вам всегда даст корректный ответ — оценку параметров, минимизирующую вторую норму ошибки на измерениях. То, что в конкретной задаче такая оценка может не обладать какими-то свойствами, например, быть смещенной или не оптимальной в смысле дисперсии, то это же не проблема МНК.
Соврал, кстати. Точка минимума совпадает у квадрата и куба суммы, т.е. при возведении в степень нормы. Точки минимума у сумм квадратов или кубов будут, конечно, разные, так как это разные нормы.

Information

Rating
1,918-th
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity