Масштабная неопределенность блока или системы
масштабирует количество неопределенности в блоке неопределенных систем управления по blk_scaled
= uscale(blk
,factor
)factor
. Как правило, factor
- маржа робастности, возвращаемая robstab
или robgain
, или устойчивая эффективность, возвращенная musynperf
. Неопределенный элемент blk_scaled
имеет тот же тип, что и blk
, с масштабом неопределенности в нормированных модулях. Для образца, если factor
равен 0,75, нормированная неопределенность blk_scaled
составляет 75% от нормализованной неопределенности blk
.
Рассмотрим цикл обратной связи со следующим коэффициентом усиления без разомкнутого контура.
L = tf(3.5,[1 2 3 0]);
Предположим, что система имеет неопределенность усиления 1,5 (коэффициент усиления может увеличиться или уменьшиться в 1,5 раза) и неопределенность фазы ± 30 °.
DGM = getDGM(1.5,30,'tight'); F = umargin('F',DGM)
F = Uncertain gain/phase "F" with relative gain change in [0.472,1.5] and phase change of ±30 degrees.
Исследуйте устойчивость системы с обратной связью.
T = feedback(L*F,1); SM = robstab(T)
SM = struct with fields:
LowerBound: 0.8303
UpperBound: 0.8319
CriticalFrequency: 1.4482
robstab
показывает, что система может переносить только 0,83 смоделированную неопределенность, прежде чем стать нестабильной. Масштабируйте umargin
блочное F
на эту величину, чтобы найти наибольший коэффициент усиления и изменения фазы, которые система может терпеть.
factor = SM.LowerBound; Fsafe = uscale(F,factor)
Fsafe = Uncertain gain/phase "F" with relative gain change in [0.563,1.42] and phase change of ±24.8 degrees.
Масштабированная неопределенность имеет меньшие области значений как изменения усиления, так и изменения фазы. Сравните эти области значений для исходных смоделированных изменений и максимально допустимых изменений.
DGM = F.GainChange; DGMsafe = Fsafe.GainChange; diskmarginplot([DGM;DGMsafe]) legend('original','safe')
Рассмотрим неопределенную систему управления примера «Робастная эффективность системы с обратной связью» на robgain
страница с описанием. Этот пример исследует чувствительность обратной связи на выходе объекта к нарушениям порядка на входе объекта.
k = ureal('k',10,'Percent',40); delta = ultidyn('delta',[1 1]); G = tf(18,[1 1.8 k]) * (1 + 0.5*delta); C = pid(2.3,3,0.38,0.001); S = feedback(1,G*C)
S = Uncertain continuous-time state-space model with 1 outputs, 1 inputs, 4 states. The model uncertainty consists of the following blocks: delta: Uncertain 1x1 LTI, peak gain = 1, 1 occurrences k: Uncertain real, nominal = 10, variability = [-40,40]%, 1 occurrences Type "S.NominalValue" to see the nominal value, "get(S)" to see all properties, and "S.Uncertainty" to interact with the uncertain elements.
Предположим, что вы не хотите, чтобы пиковое усиление этой функции чувствительности превышало 1,5. Использование robgain
чтобы выяснить, какую часть смоделированной неопределенности система может терпеть, в то время как пиковый коэффициент усиления остается ниже 1,5.
perfmarg = robgain(S,1.5)
perfmarg = struct with fields:
LowerBound: 0.7821
UpperBound: 0.7837
CriticalFrequency: 7.8565
С учетом этого требования к эффективности система может переносить только около 78% смоделированной неопределенности. Масштабируйте все неопределенные элементы в S
создать модель системы с обратной связью с максимальным уровнем неопределенности, который удовлетворяет требованиям эффективности.
factor = perfmarg.LowerBound; S_scaled = uscale(S,factor)
S_scaled = Uncertain continuous-time state-space model with 1 outputs, 1 inputs, 4 states. The model uncertainty consists of the following blocks: delta: Uncertain 1x1 LTI, peak gain = 0.782, 1 occurrences k: Uncertain real, nominal = 10, variability = [-31.3,31.3]%, 1 occurrences Type "S_scaled.NominalValue" to see the nominal value, "get(S_scaled)" to see all properties, and "S_scaled.Uncertainty" to interact with the uncertain elements.
На отображении показано, как неопределенные элементы в S_scaled
изменились: пиковое усиление ultidyn
элемент delta
уменьшается с 1 до 0,78, и область значений изменений неопределенного действительного параметра k
уменьшается с ± 40% до ± 31,3 %.
factor
- Масштабный коэффициентМасштабный коэффициент, заданный как скаляр. Этот аргумент является суммой, на которую uscale
масштабирует нормированную неопределенность blk
или M
. Для образца, если factor
= 0,8, тогда функция уменьшает неопределенность до 80% от ее исходного значения в нормализованных модулях. Точно так же, если factor
= 2, тогда функция удваивает неопределенность.
Как правило, factor
- маржа робастности, возвращаемая robstab
или robgain
, или устойчивая эффективность, возвращенная musynperf
. Таким образом, можно использовать uscale
найти наибольшую область значений смоделированной неопределенности в системе, для которой система имеет хорошую устойчивую стабильность или эффективность.
blk_scaled
- Масштабированный неопределенный блокureal
| umargin
| ultidyn
| ...M_scaled
- Масштабированная неопределенная модельuss
| umat
| ufrd
| genss
| ...Масштабированная неопределенная модель, возвращенная как модель того же типа, что и M
, например, uss
, umat
, ufrd
, или genss
с неопределенными блоками системы управления. Неопределенные системы управления в M_scaled
те же, что и блоки в M
, с размером неопределенности, масштабируемой factor
в нормированных модулях.
actual2normalized
| musynperf
| normalized2actual
| robgain
| robstab
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.