Присоединение метаданных к моделям

Задайте время модели Модулей

В этом примере показано, как задать временные модули модели передаточной функции.

The TimeUnit свойство tf объект модели задает модули измерения переменной времени, временных задержек (для моделей непрерывного времени) и шага расчета Ts (для моделей дискретного времени). Время по умолчанию модули seconds.

Создайте модель передаточной функции SISO sys=4s+2s2+3s+10 со временем модули в миллисекундах:

num = [4 2];
den = [1 3 10];
sys = tf(num,den,'TimeUnit','milliseconds');

Можно точно так же задать временные модули любой динамической системы.

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

Примечание

Изменение TimeUnit свойство изменяет поведение системы. Если вы хотите использовать различные модули времени, не изменяя поведение системы, используйте chgTimeUnit.

Взаимосвязанные модели с различными временными модулями

В этом примере показано, как соединить модели передаточной функции с различными временными модулями.

Чтобы соединить модели с помощью арифметических операций или команд соединения, временные модули всех моделей должны совпадать.

  1. Создайте две модели передаточной функции с временными модулями миллисекунд и секунд, соответственно.

    sys1 = tf([1 2],[1 2 3],'TimeUnit','milliseconds');
    sys2 = tf([4 2],[1 3 10]);
    
  2. Измените временные модули sys2 в миллисекунды.

    sys2 = chgTimeUnit(sys2,'milliseconds');
    
  3. Соедините системы параллельно.

    sys = sys1+sys2;

Задайте частотные модули модели данных частотной характеристики

Этот пример показывает, как задать модули измерения частотных точек модели данных частотной характеристики.

The FrequencyUnit свойство задает модули вектора частоты в Frequency свойство frd объект модели. Частотные модули по умолчанию rad/TimeUnit, где TimeUnit - время, модуль задано в TimeUnit свойство.

Создайте модель данных частотной характеристики SISO с частотными данными в ГГц.

load AnalyzerData;
sys = frd(resp,freq,'FrequencyUnit','GHz');

Можно независимо задать модули, в которой вы измеряете частотные точки и время расчета в FrequencyUnit и TimeUnit свойства, соответственно. Можно также задать частотные модули a genfrd подобным образом.

Частотные модули появляются на графиках частотного диапазона. Для нескольких систем с различными частотными модулями модулей первой системы используются, если модули в редакторе настроек тулбокса auto.

Примечание

Изменение FrequencyUnit свойство изменяет поведение системы. Если вы хотите использовать различные частотные модули без изменения поведения системы, используйте chgFreqUnit.

Извлечение подсистем мультивходов, мультивыходами (MIMO)

В этом примере показано, как извлечь подсистемы модели MIMO с помощью MATLAB® индексация и использование имен каналов.

Извлечение подсистем полезно, когда, например, необходимо проанализировать фрагмент сложной системы.

Создайте передаточную функцию MIMO.

G1 = tf(3,[1 10]);
G2 = tf([1 2],[1 0]); 
G = [G1,G2]; 

Извлеките подсистему G от первого входа ко всем выходам.

Gsub = G(:,1);

Эта команда использует индексацию MATLAB, чтобы задать подсистему следующим G(out,in), где out определяет выходные индексы и in задает входные индексы.

Используя имена каналов, можно использовать индексацию MATLAB, чтобы извлечь всю динамику, относящуюся к конкретному каналу. При помощи этого подхода можно избежать необходимости отслеживать порядок канала в сложной модели MIMO.

Присвойте имена входам модели.

G.InputName = {'temperature';'pressure'};

Потому что G имеет два входа, используйте массив ячеек, чтобы задать два имени каналов.

Извлеките подсистему G который содержит всю динамику от 'temperature' вход ко всем выходам.

Gt = G(:,'temperature');

Gt является той же подсистемой, что и Gsub.

Примечание

Когда вы извлекаете подсистему из пространства состояний (ss) модель, полученная модель пространства состояний может быть не минимальной. Использовать sminreal для устранения ненужных состояний в подсистеме.

Задайте и выберите входные и выходные группы

В этом примере показов, как задать группы входа и выходных каналов в объекте модели и извлечь подсистемы с помощью групп.

Входная и выходная группы полезны для отслеживания входных и выходных входов в сложных моделях MIMO.

  1. Создайте модель пространства состояний с тремя входами и четырьмя выходами.

    H = rss(3,4,3);
  2. Сгруппировать входы следующим образом:

    • Входы 1 и 2 в группе с именем controls

    • Выходы 1 и 3 в группу с именем temperature

    • Выводит 1, 3 и 4 в группу с именем measurements

    H.InputGroup.controls = [1 2];
    H.OutputGroup.temperature = [1 3];
    H.OutputGroup.measurements = [1 3 4];
    

    InputGroup и OutputGroup являются структурами. Имя каждого поля в структуре является именем входной или выходной группы. Значение каждого поля является вектором, который идентифицирует каналы в этой группе.

  3. Извлеките подсистему, соответствующую controls входы и temperature выходы.

    Можно использовать имена групп для индекса в подсистемы.

    Hc = H('temperature','controls')

    Hc является двумя входами, двумя выходами ss модель, содержащая каналы ввода-вывода от 'controls' вход в 'temperature' выходы.

    Вы можете увидеть отношения между H и подсистемы Hc на этом рисунке.

Похожие темы