From File

Загрузка данных из MAT-файла

  • Библиотека:
  • Simulink/Источники

  • From File block

Описание

Блок From File загружает данные из MAT-файла в модель и выводит данные как сигнал. Данные являются последовательностью выборок. Каждая выборка состоит из метки времени и связанного значения данных. Данные могут быть в формате массива или MATLAB® timeseries формат.

Значок From File блока показывает имя MAT-файла, который поставляет данные в блок.

Можно иметь несколько блоков From File, которые загружаются из одного MAT-файла.

Поддерживаемые версии MAT-файлов: 7.0 или более ранняя версия и 7.3. Блок From File постепенно загружает данные из файлов версии 7.3.

Можно задать способ загрузки данных, включая:

  • Шаг расчета

  • Как обрабатывать данные для недостающих точек данных

  • Используется ли обнаружение пересечения нулем

Для получения дополнительной информации смотрите Загрузка данных с использованием блока From File.

Порты

Выход

расширить все

Данные MAT-файла, заданные как последовательность выборок. Каждая выборка состоит из метки времени и связанного значения данных. Данные могут быть в формате массива или MATLAB timeseries формат. Когда вы загружаете timeseries данные с использованием блока From File, тип данных временных данных должен быть double.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean | fixed point | enumerated | bus

Параметры

расширить все

Путь или имя файла MAT-файла, который содержит входные данные. Укажите путь или имя файла одним из следующих способов:

  • Перейдите к папке, содержащей допустимый MAT-файл.

    В UNIX® системы, имя может начинаться с символа tilde (~), что означает вашу домашнюю папку.

  • Введите путь к файлу в текстовом поле.

Имя файла по умолчанию untitled.mat. Если вы задаете имя файла без информации о пути, Simulink® загружает файл в текущую папку или по пути MATLAB. (Для определения текущей папки в командной строке MATLAB введите pwd.)

Зависимости

Генерация кода для цели RSim обеспечивает ту же поддержку, что и Simulink; все другие цели генерации кода поддерживают только двухмерные, одномерные, действительные сигналы в массиве с временным форматом.

Чтобы сгенерировать код, который строит ERT или GRT цели или использует SIL или PIL режимы симуляции, MAT-файл должен содержать непустую, конечную, действительную матрицу с по крайней мере двумя строками.

Для получения дополнительной информации о генерации кода C/C + + с блоком From File, смотрите Генерацию кода.

Программное использование

Параметры блоков: FileName
Тип: Вектор символов
Значения: имя MAT-файла
По умолчанию: 'untitled.mat'

Тип данных для данных, которые выводит блок From File. Для типов, отличных от bus, можно использовать Inherit: auto чтобы пропустить верификацию типа данных. Если вы задаете тип выходных данных, то блок From File проверяет, что данные в файле совпадают с заданным типом данных. Для получения дополнительной информации см. «Типы данных сигналов управления».

Если вы задаете Output data type как объект шины, объект шины должен быть доступен при компиляции модели. Для каждого сигнала в данных шины блок From File проверяет, что тип, размерности и сложность данных одинаковы для данных и для объекта шины.

Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, которая помогает вам задать атрибуты type данных. Для получения дополнительной информации смотрите Задать типы данных Используя 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'

Укажите период дискретизации и смещение.

Блок From File загружает данные из MAT-файла с помощью шага расчета, который либо:

  • Вы задаете для блока From File.

  • Блок From File наследует от блоков, в которые блок From File передает данные.

Значение по умолчанию шаг расчета 0, который задает непрерывный шаг расчета. MAT-файл загружается с базовой (самой быстрой) скоростью модели. Для получения дополнительной информации смотрите Задание шага расчета.

Программное использование

Параметры блоков: SampleTime
Тип: Вектор символов
Значения: скаляр | вектор
По умолчанию: '0'

Метод экстраполяции для хита времени симуляции, который происходит перед начальной меткой времени в MAT-файле. Выберите один из следующих методов экстраполяции.

МетодОписание
Linear extrapolation

(По умолчанию)

Если MAT-файл содержит только одну выборку, то блок From File выводит соответствующее значение данных.

Если MAT-файл содержит более одной выборки, то From File блок линейно экстраполируется, используя первые две выборки:

  • Для double данные, линейно экстраполирует значение с помощью первых двух выборок

  • Для Boolean данные, выводит первое значение данных

  • Для встроенного типа данных, отличного от double или Boolean, блок From File:

    • Повышает качество данных, чтобы double

    • Выполняет линейную экстраполяцию (как описано для double данные)

    • Понижает значение экстраполированных данных до исходного типа данных

Вы не можете использовать Linear extrapolation опция с перечисленным (enum) данные. Все сигналы в шине используют одну и ту же настройку экстраполяции. Если какой-либо сигнал в шине использует enum данные, тогда вы не можете использовать Linear extrapolation опция.

Hold first value

Использует первое значение данных в файле

Ground value

Использует значение, которое зависит от типа данных значений выборочных данных MAT-файла:

  • Типы данных с фиксированной точкой - использует значение земли

  • Числовые типы, отличные от фиксированной точки - Использует 0

  • Boolean - Использует false

  • Перечисленные типы данных - Использует значение по умолчанию

Зависимости

Чтобы сгенерировать код, который строит цели ERT или GRT или использует режимы симуляции SIL или PIL, вы должны задать этот параметр Linear extrapolation. Для получения дополнительной информации о генерации кода C/C + + с блоком From File, смотрите Генерацию кода.

Программное использование

Параметры блоков: ExtrapolationBeforeFirstDataPoint
Тип: Вектор символов
Значения: 'Linear extrapolation' | 'Hold first value' | 'Ground value'
По умолчанию: 'Linear extrapolation'

Метод интерполяции, который Simulink использует для времени симуляции, попадает между двумя метками времени в MAT-файле. Выберите один из следующих методов интерполяции.

МетодОписание
Linear interpolation

(По умолчанию)

Блок From File интерполируется с использованием двух соответствующих выборок MAT-файлов:

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

  • Для Boolean данные, использует false для первой половины выборки и true для второго тайма.

  • Для встроенного типа данных, отличного от double или Boolean, блок From File:

    • Повышает качество данных, чтобы double

    • Выполняет линейную интерполяцию, как описано для double данные

    • Понижает интерполированное значение до исходного типа данных

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'

Метод экстраполяции для хита времени симуляции, который происходит после последней метки времени в MAT-файле. Выберите один из следующих методов экстраполяции.

МетодОписание
Linear extrapolation

(По умолчанию)

Если MAT-файл содержит только одну выборку, то блок From File выводит соответствующее значение данных.

Если MAT-файл содержит более одной выборки, то блок From File линейно экстраполируется с использованием значений данных последних двух выборок:

  • Для double данные, экстраполирует значение с помощью двух последних выборок.

  • Для Boolean данные, выводит первое значение данных.

  • Для встроенных типов данных, отличных от double или Boolean:

    • Повышает качество данных, чтобы double

    • Выполняет линейную экстраполяцию, как описано для double данные

    • Понижает экстраполированное значение до исходного типа данных

Hold last value

Использует последнее значение данных в файле

Ground value

Использует значение, которое зависит от типа данных значений выборочных данных MAT-файла:

  • Типы данных с фиксированной точкой - использует значение земли

  • Числовые типы, отличные от фиксированной точки - Использует 0

  • Boolean - Использует false

  • Перечисленные типы данных - Использует значение по умолчанию

Ограничения

Вы не можете использовать 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'

Включает обнаружение пересечения нулем.

Параметр Zero-Crossing Detection применяется только, если для параметра 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 установлено на Ground value.

Между первым и последним

Data interpolation within time range установлено на Zero-order hold.

В последний раз

Одна или обе из этих настроек применяются:

  • Data extrapolation after last data point установлено на Ground value.

  • Data interpolation within time range установлено на Zero-order hold.

Этот рисунок иллюстрирует обнаружение пересечения нулем для данных, к которым обращается блок From File, который имеет эти настройки:

  • Data extrapolation before first data pointLinear extrapolation

  • Data interpolation within time range (для внутренних точек) - Zero order hold

  • Data extrapolation after last data pointLinear extrapolation

Этот рисунок является еще одной иллюстрацией обнаружения пересечения нулем для данных, к которым обращается блок From File. Блок имеет следующие настройки для меток времени (точек):

  • Data extrapolation before first data pointHold first value

  • Data interpolation within time rangeZero order hold

  • Data extrapolation after last data pointHold last value

Зависимости

Чтобы сгенерировать код, который создает ERT или GRT цели или использует SIL или PIL режимы симуляции, снимите этот флажок. Для получения дополнительной информации о генерации кода C/C + + с блоком From File, смотрите Генерацию кода.

Программное использование

Параметры блоков: ZeroCross
Тип: Вектор символов
Значения: 'off' | 'on'
По умолчанию: 'on'

Характеристики блоков

Типы данных

Boolean | bus | double | enumerated | фиксированную точку[a] | integer | single

Прямое сквозное соединение

no

Многомерные сигналы

yes

Сигналы переменного размера

no

Обнаружение пересечения нулем

yes

[a] Поддерживает до 32-битных типов данных с фиксированной точкой.

Расширенные возможности

.
Представлено до R2006a