Загрузите данные из MAT-файла
Simulink / Источники
Блок From File загружает данные из MAT-файла в модель и выводит данные как сигнал. Данные являются последовательностью выборок. Каждая выборка состоит из метки времени и связанного значения данных. Данные могут быть в формате массивов или MATLAB®
timeseries
формат.
Значок блока From File показывает имя MAT-файла, который снабжает данными с блоком.
У вас может быть несколько блоков From File, которые загружают из того же MAT-файла.
Поддерживаемыми версиями MAT-файла является Версия 7.0 или ранее и Версия 7.3. Блок From File инкрементно загружает данные из файлов Версии 7.3.
Можно задать, как данные загружаются, включая:
Размер шага
Как обработать данные для пропавших без вести точек данных
Использовать ли обнаружение пересечения нулем
Для получения дополнительной информации смотрите, что Данные о Загрузке Используют От Блока Файла.
Port_1
— Данные о файлеДанные о MAT-файле в виде последовательности выборок. Каждая выборка состоит из метки времени и связанного значения данных. Данные могут быть в формате массивов или MATLAB timeseries
формат. Когда вы загружаете timeseries
данные с помощью блока From File, типом данных данных времени должен быть double
.
Типы данных: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
| Boolean
| fixed point
| enumerated
| bus
File name
— Путь или имя файлаuntitled.mat
(значение по умолчанию) | путь или имя MAT-файлаПуть или имя файла MAT-файла, который содержит входные данные. Задайте путь или имя файла одним из этих способов:
Просмотрите к папке, которая содержит допустимый MAT-файл.
В системах UNIX® путь может начать с тильды (~) символ, что означает вашу домашнюю папку.
Введите путь для файла в текстовом поле.
Именем файла по умолчанию является untitled.mat
. Если вы задаете имя файла без информации о пути, Simulink® загружает файл в текущей папке или на пути MATLAB. (Чтобы определить текущую папку, в командной строке MATLAB вводят pwd
.)
Генерация кода для цели RSim оказывает идентичную поддержку как Simulink; все другие цели генерации кода поддерживают только двойные, одномерные, действительные сигналы в массиве с форматом времени.
Чтобы сгенерировать код, который создает ERT или цели GRT или использует SIL или режимы PIL симуляции, MAT-файл должен содержать непустую, конечную, действительную матрицу по крайней мере с двумя строками.
Для получения дополнительной информации о генерации кода C/C++ с блоком From File смотрите Генерацию кода.
Параметры блоков:
FileName
|
Ввод: символьный вектор |
Значения: имя MAT-файла |
Значение по умолчанию:
'untitled.mat'
|
Output data type
— Тип выходных данныхInherit: auto
(значение по умолчанию) | double
| single
| int8
| uint8
| int16
| uint16
| int32
| uint32
| boolean
| fixdt(1,16,0)
| fixdt(1,16,2^0,0)
| Enum: <class_name>
| Bus: <bus_object>
| <data type expression>
Тип данных для данных, что блок From File выходные параметры. Для типов нешины можно использовать Inherit: auto
пропускать любую верификацию типа данных. Если вы задаете тип выходных данных, то блок From File проверяет, что данные в файле совпадают с заданным типом данных. Для получения дополнительной информации смотрите Типы данных Управляющего сигнала.
Если вы устанавливаете Output data type как объект шины, объект шины должен быть доступным, когда вы компилируете модель. Для каждого сигнала в данных о шине, the From File блок проверяет, что тип данных, размерности и сложность являются тем же самым для данных и для объекта шины.
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить атрибуты типа данных. Для получения дополнительной информации смотрите, Задают Типы данных Используя Ассистент Типа данных.
Параметры блоков:
OutDataTypeStr
|
Ввод: символьный вектор |
Значения:
'Inherit: auto' | 'double' | 'single' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'boolean' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' | 'Enum: <class name>' | 'Bus: <object name>' | '<data type expression>' |
Значение по умолчанию:
'Inherit: auto'
|
Sample time
— Выборка периода и смещения
| скаляр | векторЗадайте период расчета и возместите.
Блок From File загружает данные из MAT-файла, с помощью шага расчета что также:
Вы задаете для блока From File.
Блок From File наследовался блокам, в которые блок From File подает данные.
Шагом расчета по умолчанию является 0
, который задает время непрерывной выборки. MAT-файл загружается на основном (самом быстром) уровне модели. Для получения дополнительной информации см. Настройку времени выборки.
Параметры блоков:
SampleTime
|
Ввод: символьный вектор |
Значения: скаляр | вектор |
Значение по умолчанию:
'0'
|
Data extrapolation before first data point
— Метод экстраполяции для времен симуляции перед начальной меткой времени в MAT-файлеLinear extrapolation
(значение по умолчанию) | Hold first value
| Ground value
Метод экстраполяции для времени симуляции совершил нападки, который происходит перед начальной меткой времени в MAT-файле. Выберите один из следующих методов экстраполяции.
Метод | Описание |
---|---|
Linear extrapolation | (Значение по умолчанию) Если MAT-файл содержит только одну выборку, то блок From File выводит соответствующее значение данных. Если MAT-файл содержит больше чем одну выборку, то блок From File линейно экстраполирует использование первых двух выборок:
Вы не можете использовать |
Hold first value | Использует значение First Data в файле |
Ground value | Использует значение, которое зависит от типа данных значений выборочных данных MAT-файла:
|
Чтобы сгенерировать код, который создает ERT или цели GRT или использует SIL или режимы PIL симуляции, необходимо установить этот параметр на Linear extrapolation
. Для получения дополнительной информации о генерации кода C/C++ с блоком From File смотрите Генерацию кода.
Параметры блоков:
ExtrapolationBeforeFirstDataPoint
|
Ввод: символьный вектор |
Значения:
'Linear extrapolation' | 'Hold first value' | 'Ground value'
|
Значение по умолчанию:
'Linear extrapolation'
|
Data interpolation within time range
— Метод интерполяции для времен симуляции, которые падают между двумя метками времени в MAT-файлеLinear interpolation
(значение по умолчанию) | Zero order hold
Метод интерполяции, который Simulink использует для хита времени симуляции между двумя метками времени в MAT-файле. Выберите один из этих методов интерполяции.
Метод | Описание |
---|---|
Linear interpolation | (Значение по умолчанию) Блок From File интерполирует использование двух соответствующих выборок MAT-файла:
|
Zero order hold | Использует данные из первой из этих двух выборок |
Вы не можете использовать Linear interpolation
опция с перечислимым (enum
данные. Все сигналы в шине используют ту же установку интерполяции. Если какой-либо сигнал в шине использует enum
данные, затем вы не можете использовать Linear interpolation
опция.
Чтобы сгенерировать код, который создает ERT или цели GRT или использует SIL или режимы PIL симуляции, необходимо установить этот параметр на Linear interpolation
. Для получения дополнительной информации о генерации кода C/C++ с блоком From File смотрите Генерацию кода.
Параметры блоков:
InterpolationWithinTimeRange
|
Ввод: символьный вектор |
Значения:
'Linear interpolation' | 'Zero order hold'
|
Значение по умолчанию:
'Linear interpolation'
|
Data extrapolation after last data point
— Метод экстраполяции для времен симуляции после последней метки времени в MAT-файлеLinear extrapolation
(значение по умолчанию) | Hold last value
| Ground value
Метод экстраполяции для времени симуляции совершил нападки, который происходит после последней метки времени в MAT-файле. Выберите один из этих методов экстраполяции.
Метод | Описание |
---|---|
Linear extrapolation | (Значение по умолчанию) Если MAT-файл содержит только одну выборку, то блок From File выводит соответствующее значение данных. Если MAT-файл содержит больше чем одну выборку, то блок From File линейно экстраполирует значения данных использования последних двух выборок:
|
Hold last value | Использует последнее значение данных в файле |
Ground value | Использует значение, которое зависит от типа данных значений выборочных данных MAT-файла:
|
Вы не можете использовать Linear extrapolation
опция с перечислимым (enum
данные. Все сигналы в шине используют ту же установку экстраполяции. Если какой-либо сигнал в шине использует enum
данные, затем вы не можете использовать Linear extrapolation
опция.
Чтобы сгенерировать код, который создает ERT или цели GRT или использует SIL или режимы PIL симуляции, необходимо установить этот параметр на Linear extrapolation
. Для получения дополнительной информации о генерации кода C/C++ с блоком From File смотрите Генерацию кода.
Параметры блоков:
ExtrapolationAfterLastDataPoint
|
Ввод: символьный вектор |
Значения:
'Linear extrapolation' | 'Hold last value' | 'Ground value'
|
Значение по умолчанию:
'Linear extrapolation'
|
Enable zero-crossing detection
— Включите обнаружение пересечения нулемoff
(значение по умолчанию) | on
Включает обнаружение пересечения нулем.
Параметр Обнаружения Пересечения нулем применяется, только если параметр Sample time устанавливается на 0
(непрерывный).
Simulink использует метод, который, как известно как обнаружение пересечения нулем, определял местоположение разрыва в метках времени, не обращаясь к чрезмерно маленьким временным шагам. “Пересечение нулем” представляет разрыв.
Для блока From File обнаружение пересечения нулем происходит только в метках времени в файле. Simulink исследует только метки времени, не значения данных.
Для сигналов шины Simulink обнаруживает нулевые пересечения через все листовые элементы шины.
Если входной массив содержит дублирующиеся метки времени (больше чем одна запись с той же меткой времени), Simulink обнаруживает нуль, пересекающийся в тех метках времени. Например, предположите, что входной массив имеет эти данные.
time: 0 1 2 2 3 signal: 2 3 4 5 6
Во время 2, существует нуль, пересекающийся от разрыва входного сигнала.
Для недублирующихся меток времени обнаружение пересечения нулем зависит от настроек этих параметров:
Data extrapolation before first data point
Data interpolation within time range
Data extrapolation after last data point
Определение блока From File того, когда пересечение нулем происходит, зависит от метки времени.
Метка времени | Установка |
---|---|
Сначала | Data extrapolation before first data point установлен в |
Между в общем и целом | Data interpolation within time range установлен в |
В последний раз | Один или обе из этих настроек применяйтесь:
|
Этот рисунок иллюстрирует обнаружение пересечения нулем для данных, к которым получает доступ блок From File, который имеет эти настройки:
Data extrapolation before first data point — Linear extrapolation
Data interpolation within time range (для внутренних точек) — Zero order hold
Data extrapolation after last data point — Linear extrapolation
Этот рисунок является другим рисунком обнаружения пересечения нулем для данных, к которым получает доступ блок From File. Блок имеет следующие настройки для меток времени (точки):
Data extrapolation before first data point — Hold first value
Data interpolation within time range — Zero order hold
Data extrapolation after last data point — Hold last value
Чтобы сгенерировать код, который создает ERT или цели GRT или использует SIL или режимы PIL симуляции, снимите этот флажок. Для получения дополнительной информации о генерации кода C/C++ с блоком From File смотрите Генерацию кода.
Параметры блоков: ZeroCross |
Ввод: символьный вектор |
Значения: 'off' | 'on' |
Значение по умолчанию: 'on' |
Не рекомендуемый для производственного кода.
Генерация кода для цели RSim оказывает идентичную поддержку как Simulink; все другие цели генерации кода поддерживают только двойные, одномерные, действительные сигналы в массиве с форматом времени.
Для блока From File, генерируя код, который создает ERT или цели GRT или использует SIL или режимы PIL симуляции, требует что:
MAT-файл содержит непустую, конечную, действительную матрицу по крайней мере с двумя строками.
Используйте тип данных double
для матрицы.
Не включайте NaN, Inf или-Inf элементы в матрице.
В От диалогового окна параметров блоков Файла:
Установите Data extrapolation before first data point и параметры Data extrapolation after last data point к Linear extrapolation
.
Установите параметр Data interpolation within time range на Linear interpolation
.
Очистите параметр Enable zero-crossing detection.
Поддержки до 32-битных типов данных с фиксированной точкой.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.