Вычислите оптимальный контроллер H-бесконечности
[
вычисляет стабилизирующий H ∞ -оптимальный K
,CL
,gamma
] = hinfsyn(P
,nmeas
,ncont
)контроллер K
для объекта P
. Объект имеет секционированную форму
где:
w представляет входы нарушения порядка.
u представляет входы управления.
z представляет выходы ошибки, которые будут сохраняться маленькими.
y представляет выходы измерения, предоставляемые контроллеру.
nmeas
и ncont
количество сигналов в y и u, соответственно. y и u являются последними выходами и входами P
, соответственно. hinfsyn
возвращает K контроллера
который стабилизирует P
и имеет такое же количество состояний. Система с обратной связью CL
= lft(P,K)
достигает уровня эффективности gamma
, которая является H ∞ нормой CL
(см. hinfnorm
).
[
вычисляет контроллер для целевого уровня эффективности K
,CL
,gamma
] = hinfsyn(P
,nmeas
,ncont
,gamTry
)gamTry
. Определение gamTry
может быть полезным, когда оптимальная эффективность контроллера лучше, чем вам нужно для вашего приложения. В этом случае менее оптимальный контроллер может иметь меньшие усиления и быть более численно хорошо обусловлен. Если gamTry
не достижимо, hinfsyn
возвращает []
для K
и CL
, и Inf
для gamma
.
[
выполняет поиск по области значений K
,CL
,gamma
] = hinfsyn(P
,nmeas
,ncont
,gamRange
)gamRange
для достижения наилучшей эффективности. Задайте область значений с вектором формы [gmin,gmax]
. Ограничение области значений поиска может ускорить расчет, уменьшив количество итераций, выполненных hinfsyn
для тестирования различных уровней эффективности.
[
задает дополнительные опции расчета. Создание K
,CL
,gamma
] = hinfsyn(___,opts
)opts
, использование hinfsynOptions
. Задайте opts
после всех других входных параметров.
hinfsyn
дает вам усиления обратной связи о состоянии и усиления о наблюдателе, которые можно использовать, чтобы выразить контроллер в форме наблюдателя. Форма наблюдателя контроллера K
является:
Здесь we оценка наихудшего нарушения, и термин инновации, e дается:
hinfsyn
возвращает функции обратной связи о состоянии Ku и Kw, и наблюдатель получает Lx и Lu как поля в info
выходной аргумент.
Вы можете использовать эту форму контроллера для табличного управления в Simulink®. Для этого сведите матрицы объекта управления и матрицы усиления контроллера в таблицу как функцию от переменных планирования с помощью блока Matrix Interpolation (Simulink). Затем используйте форму наблюдателя контроллера, чтобы обновить переменные контроллера, когда изменяются переменные планирования.
По умолчанию, hinfsyn
использует две формулы Риккати ([1], [2]) со сдвигом цикла [3]. Вы можете использоватьhinfsynOptions
для перехода к основанному на LMI методу ([4], [5], [6]). Можно также задать метод максимальной энтропии. В этом методе ,hinfsyn
возвращает контроллер H ∞, который максимизирует энтропийный интеграл, относящийся к точке S0
. Для систем в непрерывном времени этот интеграл является:
где - передаточная функция с обратной связью CL
. Аналогичный интеграл используется для систем дискретного времени.
Для всех методов функция использует стандартный метод γ -итерации, чтобы определить оптимальное значение γ уровня эффективности. γ - итерация bisection algorithm, который начинается с высоких и низких оценок γ и повторяет на γ значения, чтобы приблизиться к оптимальной системе управления <reservedrangesplaceholder0> .
При каждом значении γ алгоритм проверяет γ значение, чтобы определить, существует ли решение. В находящемся в Riccati методе алгоритм вычисляет самый маленький уровень эффективности, для которого существуют стабилизирующиеся решения Riccati X = <reservedrangesplaceholder6> / γ и Y = <reservedrangesplaceholder3> / γ. Для любого γ, превышающего этот уровень эффективности, и в области значений gamRange
алгоритм оценивает формулы центрального контроллера (K формулы) и проверяет устойчивость системы с обратной связью CL = lft(P,K)
. Этот шаг эквивалентен проверке условий:
min(eig(X)) ≥ 0
min(eig(Y)) ≥ 0
rho(XY)
< 1, где спектральный радиус rho(XY) = max(abs(eig(XY)))
γ, которая удовлетворяет этим условиям, passes. Критерий остановки для алгоритма бисекции требует относительного различия между последним γ значением, которое не прошло, и последним γ значением, которое прошло, меньше 0,01. (Можно изменить этот критерий, используя hinfsynOptions
.) hinfsyn
возвращает контроллер, соответствующий наименьшему тестируемому γ значению, которое проходит. Для контроллеров в дискретном времени алгоритм выполняет дополнительные расчеты, чтобы создать сквозное соединение матрицу DK.
Используйте Display
опция hinfsynOptions
сделать hinfsyn
отображать значения, показывающие, какие из условий удовлетворяются для каждого γ тестируемого значения.
Алгоритм работает лучше всего, когда объект удовлетворяет следующим условиям:
D 12 и D 21 имеют полный ранг.
имеет полный ранг столбца для всех ω ∊ R.
имеет полный ранг строк для всех ω ∊ R.
Когда эти условия ранга не удерживаются, контроллер может иметь нежелательные свойства. Если <reservedrangesplaceholder3> 12 и <reservedrangesplaceholder2> 21 не полный ранг, то контроллер <reservedrangesplaceholder1> K
может иметь большой коэффициент усиления высокой частоты. Если любое из двух последних условий ранга не выдерживает на некоторой частотной ω, контроллер может иметь очень слегка демпфированные полюса около этой частоты.
[1] Гловер, К. и Дж. К. Дойл. «Формулы пространства состояний для всех стабилизирующих контроллеров, которые удовлетворяют H∞ норме привязки и отношению к чувствительности к риску». Systems & Control Letters, Vol. 11, Number 8, 1988, pp. 167-172.
[2] Дойл, Дж. К. Гловер, П. Харгонекар и Б. Фрэнсис. «Государственно-пространственные решения стандартных задач H2 и H∞ управления». Транзакции IEEE по автоматическому управлению, том 34, номер 8, август 1989, стр. 831-847.
[3] Сафонов, М.Г., Д.Ж.Н. Limebeer, and R.Y. Chiang. Упрощение теории H∞ с помощью цикловперемены, матричного карандаша и дескриптора. Int. J. Contr., Vol. 50, Number 6, 1989, pp. 2467-2488.
[4] Packard, A., K. Zhou, P. Pandey, J. Leonhardson, and G. Balas. Оптимальное, постоянное масштабирование подобия ввода-вывода для задач полной информации и обратной связи о состоянии. Системы и управляющие буквы, том 19, номер 4, 1992, стр. 271-280.
[5] Gahinet, P., and P. Apkarian. Подход линейного матричного неравенства к H∞-control. Int. J. Робастное и нелинейное управление, том 4, число. 4, 1994, стр 421–448.
[6] Ивасаки, Т. и Р. Э. Скелтон. «Все контроллеры для общей задачи H∞-control: условий существования LMI и формул пространства состояний». Automatica, Vol. 30, Number 8, 1994, pp. 1307-1317.