Хранение и извлечение данных моделей

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

Model properties являются полями данных, в которых хранятся все данные о динамической системной модели. Данные, сохраненные в свойствах модели, включают динамику модели, такие как коэффициенты передаточной функции, матрицы пространства состояний и временные задержки. Свойства модели также позволяют вам задавать другие атрибуты модели, такие как шаг расчета, имена каналов и имена состояний.

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

Похожие темы