Метрика погрешности и метрика Винникомба (nu-gap) для расстояния между двумя системами
[
вычисляет погрешность и метрики Винникомба (ν -gap) для расстояния между динамическими системами gap
,nugap
] = gapmetric(P1,P2
)P1
и P2
. Значения метрики погрешности удовлетворяют 0 ≤ nugap
≤ gap
≤ 1. Значения, близкие к нулю, подразумевают, что любой контроллер, который стабилизируется P1
также стабилизирует P2
с аналогичными усилениями с обратной связью.
Создайте две модели объекта управления. Один объект, P1
, является нестабильной системой первого порядка с передаточной функцией 1/( s-0,001). Другой объект, P2
, стабильна, с передаточной функцией 1/( s + 0,001).
P1 = tf(1,[1 -0.001]); P2 = tf(1,[1 0.001]);
Несмотря на то, что один объект нестабилен, а другое стабильно, эти объекты близки по измерению gap
и nugap
метрики.
[gap,nugap] = gapmetric(P1,P2)
gap = 0.0021
nugap = 0.0020
Зазор очень мал по сравнению с 1. Таким образом, контроллер, который приводит к стабильной системе с обратной связью с P2
также имеет тенденцию к стабилизации P1
. Например, контроллер обратной связи C = 1
стабилизирует оба объекта и делает почти одинаковые усиления с обратной связью. Чтобы увидеть это, исследуйте функции чувствительности двух систем с обратной связью.
C = 1; H1 = loopsens(P1,C); H2 = loopsens(P2,C); subplot(2,2,1); bode(H1.Si,'-',H2.Si,'r--'); subplot(2,2,2); bode(H1.Ti,'-',H2.Ti,'r--'); subplot(2,2,3); bode(H1.PSi,'-',H2.PSi,'r--'); subplot(2,2,4); bode(H1.CSo,'-',H2.CSo,'r--');
Затем рассмотрим две стабильные модели объекта управления, которые отличаются системой первого порядка. Один объект, P3
, является передаточной функцией 50/( s + 50) и другим объектом, P4
, - передаточная функция [50/( s + 50)] * 8/( s + 8).
P3 = tf(50,[1 50]); P4 = tf(8,[1 8])*P3; figure bode(P3,P4)
Хотя две системы имеют сходную высокочастотную динамику и тот же коэффициент усиления единства на низкой частоте, gap
и nugap
метрики, объекты довольно далеко друг от друга.
[gap,nugap] = gapmetric(P3,P4)
gap = 0.6148
nugap = 0.6147
Рассмотрим объект и стабилизирующий контроллер.
P1 = tf([1 2],[1 5 10]); C = tf(4.4,[1 0]);
Вычислите запас устойчивости для этого объекта управления и контроллера.
b1 = ncfmargin(P1,C)
b1 = 0.1961
Затем вычислите погрешность между P1
и возмущенный объект, P2
.
P2 = tf([1 1],[1 3 10]); [gap,nugap] = gapmetric(P1,P2)
gap = 0.1391
nugap = 0.1390
Потому что запас устойчивости b1 = b(P1,C)
больше, чем зазор между двумя объектами, C
также стабилизирует P2
. Как обсуждалось в Gap Metrics и Запасы устойчивости, запас устойчивости b2 = b(P2,C)
удовлетворяет неравенству asin(b(P2,C)) ≥ asin(b1)-asin(gap)
. Подтвердите этот результат.
b2 = ncfmargin(P2,C); [asin(b2) asin(b1)-asin(gap)]
ans = 1×2
0.0997 0.0579
P1,P2
- Входные системыВходы системы, заданные как динамическая система модели. P1
и P2
должны иметь одинаковые входные и выходные размерности. Если P1
или P2
- обобщенная модель пространства состояний (genss
или uss
) затем gapmetric
использует текущее или номинальное значение всех блоков проекта системы управления.
tol
- Относительная точностьgap
- Зазор между P1
и P2
Зазор между P1
и P2
, возвращенный как скаляр в области значений [0,1]. Значение, близкое к нулю, подразумевает, что любой контроллер, который стабилизируется P1
также стабилизирует P2
с аналогичными усилениями с обратной связью. Значение, близкое к 1, означает, что P1
и P2
далеко друг от друга. Значение 0 означает, что две системы идентичны.
nugap
- Vinnicombe зазор (ν -gap) между P1
и P2
Vinnicombe зазор (ν -gap) между P1
и P2
, возвращенный как скалярное значение в области значений [0,1]. Как и в случае gap
значение, близкое к нулю, подразумевает, что любой контроллер, который стабилизируется P1
также стабилизирует P2
с аналогичными усилениями с обратной связью. Значение, близкое к 1, означает, что P1
и P2
далеко друг от друга. Значение 0 означает, что две системы идентичны. Потому что 0 ≤ nugap
≤ gap
≤ 1 ν-gap может обеспечить более строгий тест на робастность, как описано в Gap Metrics and Stability Margins.
Для P 1 и P 2, метрика погрешности Винникомба задается как
при условии, что имеет номер правой обмотки. Здесь * обозначает сопряженный (см. ctranspose
). Это выражение является взвешенной разницей между двумя частотными характеристиками P 1 (jω) и P 2 (jω). Для получения дополнительной информации см. главу 17 [2].
Метрики gap и ν-gap дают числовое значение δ (P 1 P 2) для расстояния между двумя системами LTI. Для обеих метрик удерживается следующий устойчивый результат эффективности:
arcsin <reservedrangesplaceholder9> (P 2, <reservedrangesplaceholder7> 2) ≥ arcsin <reservedrangesplaceholder6> (P 1, <reservedrangesplaceholder4> 1) - arcsin δ (P 1, <reservedrangesplaceholder2> 2) - arcsin δ (C 1, <reservedrangesplaceholder0> 2),
где b запас устойчивости (см. ncfmargin
), принимая архитектуру отрицательной обратной связи, дается
Чтобы интерпретировать этот результат, предположим, что номинальное устройство P 1 стабилизировано контроллером C 1 с запасом устойчивости b (P 1, C 1). Затем, если P 1 возмущается P 2 и C 1 возмущается C 2, запас устойчивости ухудшается не более чем по вышеуказанной формуле. Для получения примера смотрите Вычисление метрики погрешности и Запас устойчивости.
ν -gap всегда меньше или равен разрыву, поэтому его предсказания с использованием вышеописанного результата робастности более жесткие.
Количество в b (P, C)–1 - коэффициент усиления сигнала от нарушений порядка на входе и выходе объекта на вход и выход контроллера.
Чтобы использовать метрики погрешности в устойчивом проекте, вы должны ввести функции взвешивания. В устойчивой формуле производительности замените P на W 2 P W 1 и замените C на. Можно сделать подобные замены для P 1, P 2, C 1 и C 2. Эта форма делает функции взвешивания совместимыми с структурой взвешивания в процедуре системы управления формирования контура H ∞, используемой такими функциями, какloopsyn
и ncfsyn
.
[1] Georgiou, Tryphon T. «On the Computation of the Gap Metric». Системы и буквы 11, № 4 (октябрь 1988): 253-57. https://doi.org/10.1016/0167-6911 (88) 90067-9.
[2] Zhou, K., Doyle, J.C., Essentials of Robust Control. Лондон, Великобритания: Пирсон, 1997.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
Вы щелкнули по ссылке, которая соответствует команде MATLAB:
Выполните эту команду, введя её в командном окне MATLAB.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.