getSignal

Класс: Simulink.sdi. DatasetRef
Пакет: Simulink.sdi

Синтаксис

sigObj = SDIDatasetRef.getSignal(searchArg)

Описание

sigObj = SDIDatasetRef.getSignal(searchArg) возвращает объект Simulink.sdi.Signal, соответствующий поисковому аргументу, searchArg.

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

развернуть все

Поисковые параметры, чтобы выбрать объект Simulink.sdi.Signal. searchArg может быть вектором символов или строкой, предназначающейся для имени сигнала или целого числа для основанного на индексе поиска.

Пример: 'throttle'

Пример 2

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

развернуть все

Объект Simulink.sdi.Signal, соответствующий поисковому запросу.

Примеры

развернуть все

Этот пример показывает, как работать с объектом Simulink.sdi.DatasetRef путем сравнения двух выполнений системы ex_sldemo_absbrake с различными желаемыми отношениями промаха.

% Simulate model ex_sldemo_absbrake to create a run of logged signals
load_system('ex_sldemo_absbrake')
sim('ex_sldemo_absbrake')
ans = 
  Simulink.SimulationOutput:

     sldemo_absbrake_output: [1x1 Simulink.SimulationData.Dataset] 

         SimulationMetadata: [1x1 Simulink.SimulationMetadata] 
               ErrorMessage: [0x0 char] 

% Get the runID
runIDs = Simulink.sdi.getAllRunIDs;
runID = runIDs(end);

% Get the run object
brakeRun = Simulink.sdi.getRun(runID);

% Make a Simulink.sdi.DatasetRef object
run_DSRef = brakeRun.getDatasetRef;

% Get the names of the elements in the object
names = run_DSRef.getElementNames
names = 2x1 cell array
    {'yout'}
    {'slp' }

% Get yout bus
[yout, name, index] = run_DSRef.getElement(1);

% View signals in outputs
outputs = yout.Values
outputs = struct with fields:
    Ww: [1x1 timeseries]
    Vs: [1x1 timeseries]
    Sd: [1x1 timeseries]

% Get slp signal
slp = run_DSRef.getSignal('slp');

% Plot signal
slp.Checked = 'true';
% Create another run for a different Desired relative slip
set_param('ex_sldemo_absbrake/Desired relative slip', 'Value', '0.25')
sim('ex_sldemo_absbrake')
ans = 
  Simulink.SimulationOutput:

     sldemo_absbrake_output: [1x1 Simulink.SimulationData.Dataset] 

         SimulationMetadata: [1x1 Simulink.SimulationMetadata] 
               ErrorMessage: [0x0 char] 

DSR_Runs = Simulink.sdi.DatasetRef;

% Compare the results from the two runs
[matches, mismatches, diffResult] = run_DSRef.compare(DSR_Runs(2));

% Open the Simulation Data Inspector to view signals
run_DSRef.plot

Альтернативы

Если сигнал является элементом верхнего уровня в объекте Simulink.sdi.DatasetRef, можно использовать метод Simulink.sdi.DatasetRef.getElement, чтобы получить объект Simulink.sdi.Signal индексом.

Введенный в R2017b