Model properties является полями данных, которые хранят все данные о модели динамической системы. Данные, хранимые в образцовых свойствах, включают образцовую динамику, такую как коэффициенты передаточной функции, матрицы пространства состояний и задержки. Образцовые свойства также позволяют вам задать другие образцовые атрибуты, такие как шаг расчета, названия канала, и утвердить имена.
Для получения информации о свойствах, сопоставленных с каждым типом модели, смотрите соответствующую страницу с описанием, такую как tf
, pid
или ss
.
Когда вы создаете модель динамической системы, программное обеспечение устанавливает все значения свойств. Свойства, которые содержат образцовую динамику, автоматически установлены с соответствующими значениями. Другие свойства установлены в значения по умолчанию. (См. страницы модели - ссылки для получения информации о значениях свойств по умолчанию.)
Можно задать другие значения для образцовых свойств при образцовом создании с помощью синтаксиса пары Name,Value
команды образцового создания. В этом синтаксисе вы задаете имя свойства, которое вы хотите установить, сопровождаемый значением. Можно установить несколько значений свойств в одной команде. Например, присвойте транспортную задержку и имена ввода и вывода к новой модели передаточной функции.
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(fullfile(matlabroot,'examples','control','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} 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]
Используйте запись через точку, чтобы получить доступ к значениям конкретных свойств. Например, отобразите матрицу 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 состоянием, и затем замените матрицы на новые значения, представляющие модель с 2 состояниями.
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
, может вызвать нежелательные изменения в поведении системы. См. описания свойства на страницах модели - ссылки для получения дополнительной информации.