Свойства модели - это поля данных, в которых хранятся все данные о динамической системной модели. Данные, хранящиеся в свойствах модели, включают динамику модели, такую как коэффициенты передаточной функции, матрицы состояния-пространства и временные задержки. Свойства модели также позволяют указать другие атрибуты модели, такие как время выборки, имена каналов и имена состояний.
Сведения о свойствах, связанных с каждым типом модели, см. на соответствующей странице ссылок, например tf, pid, или ss.
При создании динамической модели системы программа устанавливает все значения свойств. Свойства, содержащие динамику модели, автоматически задаются с соответствующими значениями. Для других свойств установлены значения по умолчанию. (Сведения о значениях свойств по умолчанию см. на страницах ссылок на модели.)
Можно задать другие значения свойств модели при создании модели с помощью Name,Value парный синтаксис команды model-creation. В этом синтаксисе указывается имя свойства, которое требуется задать, а затем значение. В одной команде можно задать несколько значений свойств. Например, назначьте задержку переноса и имена ввода и вывода новой модели передаточной функции.
H = tf(1,[1 10],'IODelay',6.5,'InputName','torque','OutputName','velocity')
H =
From input "torque" to output "velocity":
1
exp(-6.5*s) * ------
s + 10
Continuous-time transfer function.
Некоторые значения свойств отражаются в отображении модели, например, входные и выходные имена. Вы можете использовать Name,Value парный синтаксис при создании модели любого типа.
Загрузить существующее состояние-пространство (ss) модель.
load('PadeApproximation1.mat','sys') sys
sys =
A =
x1 x2
x1 -1.5 -0.1
x2 1 0
B =
u1
x1 1
x2 0
C =
x1 x2
y1 0.5 0.1
D =
u1
y1 0
(values computed with all internal delays set to zero)
Output delays (seconds): 1.5
Internal delays (seconds): 3.4
Continuous-time state-space model.
На дисплее видно, что sys является моделью пространства состояний и включает некоторые значения свойств sys. Просмотр всех свойств sys, используйте get команда.
get(sys)
A: [2x2 double]
B: [2x1 double]
C: [0.5000 0.1000]
D: 0
E: []
Scaled: 0
StateName: {2x1 cell}
StatePath: {2x1 cell}
StateUnit: {2x1 cell}
InternalDelay: 3.4000
InputDelay: 0
OutputDelay: 1.5000
Ts: 0
TimeUnit: 'seconds'
InputName: {''}
InputUnit: {''}
InputGroup: [1x1 struct]
OutputName: {''}
OutputUnit: {''}
OutputGroup: [1x1 struct]
Notes: [0x1 string]
UserData: []
Name: ''
SamplingGrid: [1x1 struct]
Используйте точечную нотацию для доступа к значениям определенных свойств. Например, отобразить матрицу A sys.
Amat = sys.A
Amat = 2×2
-1.5000 -0.1000
1.0000 0
Точечная нотация также позволяет изменять значение отдельных свойств модели.
sys.InputDelay = 4.2; sys.InputName = 'thrust'; sys.OutputName = 'velocity';
При необходимости одновременного изменения нескольких значений свойств для сохранения допустимости модели, например изменения размеров матриц состояния-пространства, можно использовать set команда. Например, создайте модель пространства состояний 1, а затем замените матрицы новыми значениями, представляющими модель двух состояний.
sys2 = rss(1); Anew = [-2, 1; 0.5 0]; Bnew = [1; -1]; Cnew = [0, -0.4]; set(sys2,'A',Anew,'B',Bnew,'C',Cnew) sys2
sys2 =
A =
x1 x2
x1 -2 1
x2 0.5 0
B =
u1
x1 1
x2 -1
C =
x1 x2
y1 0 -0.4
D =
u1
y1 0.3426
Continuous-time state-space model.
Изменение определенных свойств, таких как Ts или TimeUnit, может вызвать нежелательные изменения в поведении системы. Дополнительные сведения см. в описании свойств на страницах ссылок на модель.