Simulink.sdi.Run.create

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

Описание

пример

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

пример

runObj = Simulink.sdi.Run.create(runName) создает пустой запуск под названием runName.

пример

runObj = Simulink.sdi.Run.create(var) создает запуск, который содержит данные в скалярной переменной var рабочей области. Запуск называют согласно входной переменной. Например, когда var timeseries объект, название запуска происходит от Name свойство timeseries объект.

пример

runObj = Simulink.sdi.Run.create(runName,'file',filename) создает запуск, который содержит данные в файле, заданном filename.

runObj = Simulink.sdi.Run.create(runName,'file',filename,reader) использует средство чтения файлов, reader, создать запуск, который содержит данные в файле, filename. Используйте этот синтаксис, когда несколько средств чтения файлов, которые поддерживают файл с данными, чтобы импортировать, указаны с Инспектором Данных моделирования. Чтобы определить, какие читатели доступны для вашего файла, используйте io.reader.getSupportedReadersForFile функция.

пример

runObj = Simulink.sdi.Run.create(runName,'namevalue',sourceNames,sigValues) создает запуск, который содержит данные в массиве ячеек sigValues. Массив ячеек sourceNames указывает, что исходные имена раньше устанавливали RootSource, TimeSource, и DataSource свойства для сигналов импортируются из sigValues cellArray.

Примеры

свернуть все

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

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

Создайте данные в рабочей области. Инспектор Данных моделирования поддерживает данные временных рядов во многих форматах. Этот пример создает данные с помощью 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 в командном окне MATLAB™.

Создайте запуск Используя 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')

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

свернуть все

Назовите для запущенного в Инспекторе Данных моделирования в виде вектора символов или строки.

Пример: 'Baseline Simulation'

Переменная в базовом рабочем пространстве, которое содержит данные, которые вы хотите импортировать в запуск в Инспекторе Данных моделирования. Инспектор Данных моделирования поддерживает основанные на времени данные, в которых демонстрационные значения сопоставлены с шагами расчета. Инспектор Данных моделирования поддерживает всю загрузку и логгирование форматов данных, включая timeseries и Simulink.SimulationData.Dataset.

Пример: myData

Источник называет для импортированных данных в виде массива ячеек из символьных векторов. Исходное имя используется, чтобы установить RootSource, TimeSource, и DataSource свойства Simulink.sdi.Signal объекты, созданные из данных, заданы sigValues input.l

Обеспечьте sourceNames введите, когда вы зададите 'namevalue' для второго аргумента.

Пример: {'sig1','sig2'}

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

Обеспечьте sigValues введите, когда вы зададите 'namevalue' для второго аргумента.

Пример: {var1,var2}

Имя файла с данными, чтобы импортировать в виде вектора символов. Обеспечьте filename введите, когда вы зададите 'file' для второго аргумента.

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

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

Пример: 'simulation.mat'

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

Задайте вход читателя когда:

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

  • Несколько зарегистрированных пользовательских читателей поддерживают файл.

Чтобы определить, какие читатели доступны, чтобы импортировать ваш файл, используйте io.reader.getSupportedReadersForFile функция.

Пример: 'MyExcelReader'

Пример: 'built-in'

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

свернуть все

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

Введенный в R2017b