Чтобы импортировать данные в Данные моделирования Inspector из файла CSV, отформатируйте данные в файле CSV. Затем можно импортировать данные с помощью пользовательского интерфейса Данные Моделирования Inspector или Simulink.sdi.createRun
функция.
Совет
Когда вы хотите импортировать данные из файла CSV, где данные форматированы по-другому по сравнению со спецификацией в этой теме, вы можете написать свою собственную программу чтения файлов для Данных моделирования Inspector с помощью io.reader
класс.
В простейшем формате первая строка в файле CSV является заголовком, в котором перечисляются имена сигналов в файле. Первый столбец - это время. Имя столбца времени должно быть time
, и значения времени должны увеличиться монотонно. Строки под именами сигналов перечисляют значения сигналов, которые соответствуют каждому временному шагу.
Операция импорта не поддерживает временные данные, которые включают Inf
или NaN
значения или данные о сигнале, которые включают Inf
значения. Пустой или NaN
значения сигналов отображаются как отсутствующие данные. Поддерживаются все встроенные типы данных.
Когда ваши данные включают сигналы с различными временными векторами, файл может включать более одного временные векторы. Каждый столбец времени должен быть назван time
. Временные столбцы определяют шаги расчета для сигналов вправо, вплоть до следующего временного вектора. Для примера первый столбец времени определяет время для signal1
и signal2
, и второй столбец времени определяет временные шаги для signal3
.
Столбцы сигнала должны иметь то же количество точек данных, что и связанный временной вектор.
Можно задать метаданные сигнала в файле CSV, чтобы указать тип данных сигнала, модули, метод интерполяции, путь блока и индекс порта. Перечислите метаданные для каждого сигнала в строках между именем сигнала и данными о сигнале. Пометьте метаданные согласно этой таблице.
Свойство сигнала | Метка | Значение |
---|---|---|
Тип данных | Type: | Встроенный тип данных. |
Модули | Unit: | Поддерживаемые модули. Для примера, Для списка поддерживаемых модулей введите |
Метод интерполяции | Interp: | linear , zoh для удержания нулевого порядка, или none . |
Путь к блоку | BlockPath: | Путь к блоку, который сгенерировал сигнал. |
Индекс порта | PortIndex: | Целое число. |
Можно также импортировать сигнал с типом данных, заданным классом перечисления. Вместо использования Type:
метка, использовать Enum:
пометить и задать значение в качестве имени класса перечисления. Определение класса перечисления должно быть сохранено в пути MATLAB.
Когда импортированный файл не задает метаданные сигнала, Данные моделирования Inspector принимают двойной тип данных и линейную интерполяцию. Можно задать метод интерполяции как линейный, zoh (удержание нулевого порядка) или как нет. Если вы не задаете модулей для сигналов в вашем файле, можно назначить модули сигналам в Данные моделирования Inspector после импорта файла.
Можно задать любую комбинацию метаданных для каждого сигнала. Оставьте пустую камеру для сигналов с менее заданными метаданными.
Можно импортировать данные из файла CSV с помощью пользовательского интерфейса Данные Моделирования Inspector или с помощью Simulink.sdi.createRun
функция.
Чтобы импортировать данные с помощью пользовательского интерфейса, откройте Данные моделирования Inspector с помощью Simulink.sdi.view
или кнопку Data Inspector на панели инструментов Simulink™. Затем нажмите кнопку Импорт.
В диалоговом окне «Импорт» выберите опцию для импорта данных из файла и перейдите в файловой системе, чтобы выбрать файл. После выбора файла данные, доступные для импорта, отображаются в таблице. Можно выбрать сигналы для импорта и импортировать ли их в новый или существующий запуск. Этот пример импортирует все доступные сигналы в новый запуск. После выбора опций нажмите кнопку «Импорт».
Когда вы импортируете данные в новый запуск с помощью пользовательского интерфейса, новое имя запуска включает номер запуска, за которым следует Imported_Data
.
При программном импорте данных можно задать имя импортированного запуска.
csvRunID = Simulink.sdi.createRun('CSV File Run','file','csvExampleData.csv');