В этом примере показано, как построить обобщенное состояние-пространство (genss) модель системы управления, которая имеет как настраиваемые, так и неопределенные параметры. Вы можете использовать systune настройка настраиваемых параметров такой модели для достижения рабочих характеристик, которые являются устойчивыми против неопределенности в системе.
Для этого примера установка представляет собой массово-пружинно-демпферную систему. Входное значение - приложенная сила, F, а выходное значение - x, положение массы.

В этой системе масса m, постоянная демпфирования c и постоянная пружины k имеют некоторую неопределенность. Использовать неопределенно ureal параметры для представления этих величин с точки зрения их номинального или наиболее вероятного значения и диапазона неопределенности вокруг этого значения.
um = ureal('m',3,'Percentage',40); uc = ureal('c',1,'Percentage',20); uk = ureal('k',2,'Percentage',30);
Передаточная функция системы масса-пружина-демпфер является функцией второго порядка, задаваемой:
cs + k.
Создайте эту передаточную функцию в MATLAB ® с использованием неопределенных параметров и tf команда. Результатом является неопределенное состояние-пространство (uss) модель.
G = tf(1,[um uc uk])
G =
Uncertain continuous-time state-space model with 1 outputs, 1 inputs, 2 states.
The model uncertainty consists of the following blocks:
c: Uncertain real, nominal = 1, variability = [-20,20]%, 1 occurrences
k: Uncertain real, nominal = 2, variability = [-30,30]%, 1 occurrences
m: Uncertain real, nominal = 3, variability = [-40,40]%, 1 occurrences
Type "G.NominalValue" to see the nominal value, "get(G)" to see all properties, and "G.Uncertainty" to interact with the uncertain elements.
Предположим, что вы хотите управлять этой системой с помощью ПИД-контроллера и что ваши проектные требования включают в себя контроль реакции на шум на входе в установку. Создайте модель следующей системы управления.

Используйте настраиваемый PID-контроллер и вставьте точку анализа для обеспечения доступа к входу возмущения.
C0 = tunablePID('C','PID'); d = AnalysisPoint('d');
Подключите все компоненты для создания модели системы управления.
T0 = feedback(G*d*C0,1)
T0 =
Generalized continuous-time state-space model with 1 outputs, 1 inputs, 3 states, and the following blocks:
C: Tunable PID controller, 1 occurrences.
c: Uncertain real, nominal = 1, variability = [-20,20]%, 1 occurrences
d: Analysis point, 1 channels, 1 occurrences.
k: Uncertain real, nominal = 2, variability = [-30,30]%, 1 occurrences
m: Uncertain real, nominal = 3, variability = [-40,40]%, 1 occurrences
Type "ss(T0)" to see the current value, "get(T0)" to see all properties, and "T0.Blocks" to interact with the blocks.
T0.InputName = 'r'; T0.OutputName = 'x';
T0 является обобщённым состоянием-пространством (genss) модель, которая имеет как настраиваемые, так и неопределенные блоки. В общем, можно использовать feedback и другие команды взаимодействия модели, такие как connect, для создания моделей более сложных перестраиваемых и неопределенных систем управления из компонентов LTI с фиксированным значением, неопределенных компонентов и перестраиваемых компонентов.
При печати системных ответов genss модель, которая является как настраиваемой, так и неопределенной, график отображает множество ответов, вычисленных случайными значениями неопределенных компонентов. Эта выборка дает общее представление о диапазоне возможных ответов. На всех графиках используется текущее значение настраиваемых компонентов.
bodeplot(T0)

При извлечении ответов из настраиваемого и неопределенного genss модель, ответы также содержат как настраиваемые, так и неопределенные блоки. Например, проверьте функцию передачи контура на входе возмущения.
S0 = getLoopTransfer(T0,'d')S0 =
Generalized continuous-time state-space model with 1 outputs, 1 inputs, 3 states, and the following blocks:
C: Tunable PID controller, 1 occurrences.
c: Uncertain real, nominal = 1, variability = [-20,20]%, 1 occurrences
d: Analysis point, 1 channels, 1 occurrences.
k: Uncertain real, nominal = 2, variability = [-30,30]%, 1 occurrences
m: Uncertain real, nominal = 3, variability = [-40,40]%, 1 occurrences
Type "ss(S0)" to see the current value, "get(S0)" to see all properties, and "S0.Blocks" to interact with the blocks.
bodeplot(S0)

Теперь можно создавать цели настройки и использовать systune для настройки коэффициентов T0 контроллера PID. Когда вы это делаете, systune автоматически настраивает коэффициенты для максимизации производительности во всем диапазоне неопределенности.
AnalysisPoint | connect | genss | ureal