Сохраните и получите данные модели

Свойства модели

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]

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

Похожие темы