Неопределенное состояние-пространство (uss) модели представляют собой линейные системы с неопределенными матрицами состояния-пространства и/или неопределенной линейной динамикой. Как и их числовой (т.е. не неопределенный) аналог, ss объект модели, их можно построить из матриц состояния-пространства с помощью ss команда. Когда одна или несколько матриц пространства состояний содержат неопределенные элементы (неопределенные блоки конструкции управления), результатом является uss объект модели.
Объединение неопределенных систем с другими неопределенными системами (например, с использованием арифметики модели, connect, или feedback) обычно приводит к неопределенной системе. Можно также объединить числовые системы с неопределенными системами. Обычно результатом является неопределенная система. Номинальное значение неопределенной системы равно ss объект модели.
В приведенном ниже примере A, B и C матрицы состоят из неопределенных реальных параметров. Упаковка их вместе с ss команда приводит к неопределенной системе непрерывного времени.
Чтобы создать неопределенную модель состояния-пространства, сначала используйте «Управляющие блоки проектирования» для создания неопределенных элементов. Затем с помощью элементов задайте матрицы состояния-пространства системы.
Например, создайте три неопределенных вещественных параметра и создайте из них матрицы состояний-пространств.
p1 = ureal('p1',10,'Percentage',50); p2 = ureal('p2',3,'PlusMinus',[-.5 1.2]); p3 = ureal('p3',0); A = [-p1 p2; 0 -p1]; B = [-p2; p2+p3]; C = [1 0; 1 1-p3]; D = [0; 0];
Матрицы, построенные с неопределенными параметрами, A, B, и C, являются неопределенной матрицей (umat) объекты. Использование их в качестве входных данных для ss в результате получается неопределенная система с 2 выходами и 1 входами и 2 состояниями.
sys = ss(A,B,C,D)
sys =
Uncertain continuous-time state-space model with 2 outputs, 1 inputs, 2 states.
The model uncertainty consists of the following blocks:
p1: Uncertain real, nominal = 10, variability = [-50,50]%, 2 occurrences
p2: Uncertain real, nominal = 3, variability = [-0.5,1.2], 2 occurrences
p3: Uncertain real, nominal = 0, variability = [-1,1], 2 occurrences
Type "sys.NominalValue" to see the nominal value, "get(sys)" to see all properties, and "sys.Uncertainty" to interact with the uncertain elements.
На дисплее показано, что система включает три неопределенных параметра.
uss модели, как и все объекты модели, включают свойства, хранящие метаданные динамики и модели. Просмотр свойств неопределенной модели состояния-пространства.
p1 = ureal('p1',10,'Percentage',50); p2 = ureal('p2',3,'PlusMinus',[-.5 1.2]); p3 = ureal('p3',0); A = [-p1 p2; 0 -p1]; B = [-p2; p2+p3]; C = [1 0; 1 1-p3]; D = [0; 0]; sys = ss(A,B,C,D); % create uss model get(sys)
NominalValue: [2x1 ss]
Uncertainty: [1x1 struct]
A: [2x2 umat]
B: [2x1 umat]
C: [2x2 umat]
D: [2x1 double]
E: []
StateName: {2x1 cell}
StateUnit: {2x1 cell}
InternalDelay: [0x1 double]
InputDelay: 0
OutputDelay: [2x1 double]
Ts: 0
TimeUnit: 'seconds'
InputName: {''}
InputUnit: {''}
InputGroup: [1x1 struct]
OutputName: {2x1 cell}
OutputUnit: {2x1 cell}
OutputGroup: [1x1 struct]
Notes: [0x1 string]
UserData: []
Name: ''
SamplingGrid: [1x1 struct]
Большинство свойств ведут себя аналогично поведению для ss объекты модели. NominalValue собственность сама по себе является ss объект модели. Таким образом, можно анализировать номинальное значение так же, как и любую модель пространства состояния. Например, вычислить полюса и пошаговый отклик номинальной системы.
pole(sys.NominalValue)
ans = 2×1
-10
-10
step(sys.NominalValue)

Как и в случае неопределенных матриц (umat), Uncertainty - это структура, содержащая неопределенные элементы. Это свойство можно использовать для прямого доступа к неопределенным элементам. Например, проверьте Range неопределенного элемента с именем p2 в sys.
sys.Uncertainty.p2.Range
ans = 1×2
2.5000 4.2000
Изменение диапазона неопределенности p2 в sys.
sys.Uncertainty.p2.Range = [2 4];
Эта команда изменяет только диапазон параметра с именем p2 в sys. Переменная не изменяется p2 в рабочей области MATLAB.
p2.Range
ans = 1×2
2.5000 4.2000
Космический объект в неопределенном состоянии может быть интерпретирован как космический объект в неопределенном состоянии, который не имеет зависимости от неопределенных элементов. Используйте uss команда «поднять» a ss в uss класс.
sys = rss(3,2,1); usys = uss(sys) USS: 3 States, 2 Outputs, 1 Input, Continuous System
Массивы ss объекты также могут быть подняты. Дополнительные сведения о том, как обрабатываются массивы неопределенных объектов, см. в разделе Управление массивами для неопределенных объектов.