Simulink.sdi.Run.create

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

Описание

пример

runObj = Simulink.sdi.Run.create создает пустой Simulink.sdi.Run объект, runObj. Можно добавить сигналы в Run объект с помощью add функционируйте или Simulink.sdi.addToRun функция.

Примеры

свернуть все

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

Создайте данные

Создайте данные в рабочей области. Инспектор Данных моделирования поддерживает данные временных рядов во многих форматах. Этот пример создает данные с помощью timeseries и Simulink.SimulationData.Dataset форматы и сохраняют данные в MAT-файле.

Создайте сигнал синуса и сигнал косинуса, и храните данные для каждого сигнала в timeseries объект с описательным именем.

time = 0:0.2:20;

sine_vals = sin(2*pi/5*time);
sine_ts = timeseries(sine_vals,time);
sine_ts.Name = 'Sine, T=5';

cos_vals = cos(2*pi/8*time);
cos_ts = timeseries(cos_vals,time);
cos_ts.Name = 'Cosine, T=8';

Можно использовать Dataset формат связанным с группой данным сигнала вместе в отдельном объекте. Dataset формат является форматом по умолчанию для записанных данных и поддерживается для загрузки входных данных симуляции. Создайте Dataset объект, который содержит синусоиду timeseries данные.

sinusoids_ds = Simulink.SimulationData.Dataset;
sinusoids_ds = addElement(sinusoids_ds,cos_ts);
sinusoids_ds = addElement(sinusoids_ds,sine_ts);

Масштабируйте каждый сигнал фактором 2 и создайте Dataset объект содержать данные сигнала для результатов.

doubSine = 2*sine_ts;
doubCos = 2*cos_ts;

doubSinusoids_ds = Simulink.SimulationData.Dataset;
doubSinusoids_ds = addElement(doubSinusoids_ds,doubSine);
doubSinusoids_ds = addElement(doubSinusoids_ds,doubCos);

Наконец, сохраните timeseries данные к MAT-файлу.

save sinusoids.mat sine_ts cos_ts

Откройте инспектора данных моделирования

Откройте Инспектора Данных моделирования, таким образом, вы видите запуски, которые вы создаете в каждом разделе.

Simulink.sdi.view

Создайте запуск Используя Simulink.sdi.Run Объект

Можно импортировать данные в запуск в Инспекторе Данных моделирования путем создания пустого запуска и затем добавления данных в запуск из рабочей области или файла. В зависимости от вашей задачи можно использовать Simulink.sdi.Run.create функционируйте или Simulink.sdi.createRun функция, чтобы создать пустой запуск. Simulink.sdi.Run.create функция возвращает Simulink.sdi.Run объект для нового запуска и Simulink.sdi.createRun функция возвращает ID запуска для нового запуска.

Этот пример создает пустой запуск с помощью Simulink.sdi.Run.create функционируйте, дает запуску понятное имя и описание, и затем добавляет синус и косинус timeseries данные с помощью add функция.

sinusoidsRun = Simulink.sdi.Run.create;
sinusoidsRun.Name = 'Sinusoids';
sinusoidsRun.Description = 'Sine and cosine signals of different frequencies';

add(sinusoidsRun,'vars',sine_ts,cos_ts)

Этот пример использует Simulink.sdi.createRun функция, чтобы создать новый запуск в Инспекторе Данных моделирования под названием My Waves и затем использует Simulink.sdi.addToRun функция, чтобы добавить синус и косинус timeseries данные к запуску.

runID = Simulink.sdi.createRun('My Waves');
signalID = Simulink.sdi.addToRun(runID,'vars',sine_ts,cos_ts);

Создайте запуск из переменной рабочей области

Можно создать запуск из одной переменной в рабочей области. После создания запуска можно добавить дополнительные данные, или можно создать другой запуск, чтобы содержать другие данные. Переменной, которую вы используете, чтобы создать запуск, может быть timeseries объект с данными, которые соответствуют только одному сигналу, или это может быть Dataset объект, который содержит несколько сигналов.

Когда вы используете этот синтаксис, чтобы создать запуск из одной переменной рабочей области, запуск берет то же имя, как объект раньше создавал его.

runID = Simulink.sdi.createRun(sine_ts);

Simulink.sdi.createRun функция возвращает ID запуска для запуска, который это создает. Можно использовать Simulink.sdi.getRun функционируйте, чтобы получить доступ к Run объект для запуска.

sineRun = Simulink.sdi.getRun(runID);
sineRun.Name
ans = 
'Sine, T=5'

Создайте запуск из нескольких переменных рабочей области

Когда ваши данные существуют в нескольких переменных в вашей рабочей области, можно использовать Simulink.sdi.createRun функция с vars опция, чтобы импортировать данные от нескольких переменных в один запуск в Инспекторе Данных моделирования. Можно также использовать этот синтаксис, чтобы создать запуск для одной переменной, которая использует имя, которое вы задаете.

Этот пример создает запуск под названием My Sinusoids это содержит данные для синуса и косинуса timeseries объекты.

runID = Simulink.sdi.createRun('My Sinusoids','vars',sine_ts,cos_ts);

Создайте запуск и задайте исходные имена

Можно использовать namevalue опция Simulink.sdi.createRun функция, чтобы создать запуск и задать имена для сигналов в запуске. Этот синтаксис может быть особенно полезным, когда вы импортируете отдельные листовые сигналы из иерархических данных.

Этот пример создает запуск, содержащий данные для обоих Dataset объекты. Каждый Dataset объект содержит данные больше чем для одного сигнала, таким образом, импортированные данные о запуске имеют иерархию. Синтаксис значения имени в этом примере задает имя для иерархического узла, который соответствует каждому Dataset объект.

runID = Simulink.sdi.createRun('Waves','namevalue',{'Sinusoids',...
    'BigSinusoids'},{sinusoids_ds,doubSinusoids_ds});

Создайте запуск из данных в файле

Можно также использовать Simulink.sdi.createRun функция, чтобы импортировать данные в Инспектора Данных моделирования из файла. Используйте file опция, чтобы импортировать данные в simusoids.mat файл.

runID = Simulink.sdi.createRun('Wave Data','file','sinusoids.mat');

В этом примере показано, как создать запуск, добавьте данные в него, и затем просмотрите данные в Инспекторе Данных моделирования.

Создайте данные для запуска

Создайте timeseries объекты содержать данные для синуса сигнализируют и сигнал косинуса. Дайте каждый timeseries возразите описательному имени.

time = linspace(0,20,100);

sine_vals = sin(2*pi/5*time);
sine_ts = timeseries(sine_vals,time);
sine_ts.Name = 'Sine, T=5';

cos_vals = cos(2*pi/8*time);
cos_ts = timeseries(cos_vals,time);
cos_ts.Name = 'Cosine, T=8';

Создайте запуск и добавьте данные

Используйте Simulink.sdi.view функционируйте, чтобы открыть Инспектора Данных моделирования.

Simulink.sdi.view

Чтобы импортировать данные в Инспектора Данных моделирования из рабочей области, создайте Simulink.sdi.Run объект с помощью Simulink.sdi.Run.create функция. Добавьте информацию о запуске к его метаданным с помощью Name и Description свойства Run объект.

sinusoidsRun = Simulink.sdi.Run.create;
sinusoidsRun.Name = 'Sinusoids';
sinusoidsRun.Description = 'Sine and cosine signals with different frequencies';

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

add(sinusoidsRun,'vars',sine_ts,cos_ts);

Отобразите данные на графике в инспекторе данных моделирования

Используйте getSignalByIndex функционируйте, чтобы получить доступ к Simulink.sdi.Signal объекты, которые содержат данные сигнала. Можно использовать Simulink.sdi.Signal свойства объектов, чтобы задать стиль линии и цвет для сигнала и построить его в Инспекторе Данных моделирования. Задайте LineColor и LineDashed свойства для каждого сигнала.

sine_sig = getSignalByIndex(sinusoidsRun,1);
sine_sig.LineColor = [0 0 1];
sine_sig.LineDashed = '-.';

cos_sig = sinusoidsRun.getSignalByIndex(2);
cos_sig.LineColor = [0 1 0];
cos_sig.LineDashed = '--';

Используйте Simulink.sdi.setSubPlotLayout функция, чтобы сконфигурировать 2- 1 размещение подграфика в Инспекторе Данных моделирования область графического вывода. Затем используйте plotOnSubplot функционируйте, чтобы построить сигнал синуса на главном подграфике и сигнал косинуса на более низком подграфике.

Simulink.sdi.setSubPlotLayout(2,1);

plotOnSubPlot(sine_sig,1,1,true);
plotOnSubPlot(cos_sig,2,1,true);

Закройте инспектора данных моделирования и сохраните свои данные

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

Simulink.sdi.close('sinusoids.mldatx')

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

свернуть все

Пустой Simulink.sdi.Run объект. Импортируйте данные от базового рабочего пространства или файла в Инспектора Данных моделирования путем добавления его в Run объект с помощью add функционируйте или Simulink.sdi.addToRun функция.

Введенный в R2017b