exponenta event banner

dsp.util.getLogsArray

Пакет: dsp.util

Возвратите регистрируемый сигнал как массив MATLAB

Синтаксис

Array = dsp.util.getLogsArray(LogObject,Format2D,'SignalPath',PATH)
Array = dsp.util.getLogsArray(LogObject,Format2D,'SignalName',NAME)

Описание

Array = dsp.util.getLogsArray(LogObject,Format2D,'SignalPath',PATH) возвращает массив MATLAB®, который содержит сигнал в LogObject. Необходимо задать PATH к сигналу в LogObject использование Name,Value парный аргумент.

Array = dsp.util.getLogsArray(LogObject,Format2D,'SignalName',NAME) возвращает массив MATLAB, который содержит сигнал в LogObject. Необходимо задать NAME из сигнала в LogObject использование Name,Value парный аргумент.

Входные параметры

LogObject

Задайте имя объекта, который содержит ваши регистрируемые сигналы. Допустимые классы для LogObject зависьте от синтаксиса, который вы используете:

  • Когда вы задаете PATH как dsp.util.getSignalPath объект, LogObject может быть любой Simulink.SimulationData.Dataset или Simulink.SimulationData.Signal объект.

  • Когда вы задаете PATH как полный путь с блоком в модели Simulink®, LogObject должен быть Simulink.SimulationData.Dataset объект.

  • Когда вы задаете NAME из сигнала в LogObject, LogObject может быть объект класса timeseries, Simulink.SimulationData.Dataset, или Simulink.SimulationData.Signal.

Format2D

Задайте логическое значение, чтобы определить ли функциональные форматы 3-D регистрируемые сигналы как 2D или 3-D массив MATLAB. Когда вы устанавливаете это свойство на true, функция использует следующую формулу, чтобы отформатировать 3-D регистрируемый сигнал в 2D массив MATLAB:

dim = size(signal);
ntimes = dim(1)*dim(3);
Array = reshape(permute(signal,[1 3 2]),[ntimes dim(2)]);

Когда вы устанавливаете это свойство на false, функция возвращает регистрируемый сигнал без любого переформатирования.

PATH

Задайте путь к регистрируемому сигналу в LogObject. Можно задать путь с помощью dsp.util.getSignalPath объект, или можно предоставить полный путь блоку в модели Simulink. Чтобы получить полный путь с блоком в вашей модели Simulink, используйте gcb команда.

NAME

Задайте имя сигнала в LogObject.

Выходные аргументы

Array

Выход Array массив MATLAB, который содержит заданный регистрируемый сигнал. Когда вход является 3-D регистрируемым сигналом, размерностями Array зависьте от значения, которое вы задаете для Format2D:

  • Когда Format2D trueМассив 2D массив MATLAB.

  • Когда Format2D falseМассив 3-D массив MATLAB.

Когда вход не является 3-D сигналом, размерностями выхода Array совпадайте с теми из входа.

Примеры

Примечание

Чтобы запустить следующие примеры, необходимо сначала загрузить ex_logsout.mat, который содержит Simulink.SimulationData.Dataset объект. В качестве альтернативы можно открыть и симулировать ex_log_utils модель Simulink. Выполнение так будет регистрировать сигналы и генерировать необходимый ex_logsout объект.

 Пример 1. Извлеките уникальный сигнал по имени Signal3x4 от ex_logsout.
dsp.util.getLogsArray(ex_logsout, true, 'SignalName','Signal3x4')
 Пример 2. Извлеките уникальный сигнал по имени Signal3x4 от ex_logsout как трехмерный массив.
dsp.util.getLogsArray(ex_logsout, false, 'SignalName','Signal3x4')
 Пример 3. Найдите и извлеките определенный сигнал из нескольких сигналов, которые имеют то же имя.

Поскольку ex_logsout содержит несколько сигналов под названием Signal2x4, необходимо использовать dsp.util.getSignalPath функционируйте, чтобы найти пути к каждому из тех сигналов.

paths = dsp.util.getSignalPath(ex_logsout, 'Signal2x4')
% paths is a 2x1 array of dsp.util.SignalPath objects. Next, examine 
% the BlockPath property of each paths object.
paths.BlockPath
% Find the signal path that corresponds to the logged signal you are
% interested in. For example paths(2). You can then use the
% dsp.util.getLogsArray function and provide the 'SignalPath' name-value
% pair argument.
dsp.util.getLogsArray(ex_logsout, true, 'SignalPath', paths(2))
 Пример 4. Найдите и извлеките сигнал из шины.

Используйте dsp.util.getSignalPath функция, чтобы получить пути ко всем сигналам в шине под названием Bus1.

buspaths = dsp.util.getSignalPath(ex_logsout, 'Bus1')
% buspaths is a 2x1 array of dsp.util.SignalPath objects. Examine the
% BusElement property of each buspaths object.
buspaths.BusElement
% Select a signal path. For example buspaths(1). This is the path to the
% signal named 'Signal3x4' in bus 'Bus' that is contained in bus 'Bus1'.
% Now that you have the path to the signal, call dsp.util.getLogsArray
% using the 'SignalPath' name-value pair argument.
dsp.util.getLogsArray(ex_logsout, true, 'SignalPath', buspaths(1))

Представленный в R2011b