Масштабируйте неопределенность в блоке или системе
масштабирует сумму неопределенности в неопределенном блоке системы управления 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.8566
С тем требованием к производительности система может только терпеть приблизительно 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. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.