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

Образцовые свойства

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

Похожие темы