Загрузите данные для входного теста

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

Инструкции для импорта теста

Обычно при импортировании данных о тесте, вы хотите минимизировать количество моментов времени. Тестовые данные фокусируются на разрывах в данных сигнала.

  • Создайте сигнал, который имеет пандусы и шаги. Другими словами, сигнал имеет один или несколько разрывов.

  • Создайте сигнал с помощью наименьшего количества возможных точек.

  • Имейте Simulink® решатель выполняется в заданных разрывах.

Чтобы импортировать этот сигнал в Simulink, используйте From Workspace, From File или блок Signal Editor, все из которых поддерживают обнаружение пересечения нулем.

Можно загрузить данные этих типов:

  • Simulink.SimulationData.Dataset

  • Массив

  • Simulink.SimulationData.Signal

  • Структура

  • Массив структур, содержащий данные для всех входных портов (не поддерживаемый блоком Signal Editor)

  • Пустая матрица — Использование пустая матрица для портов, для которых вы хотите использовать наземные значения, не имея необходимость создавать значения данных

  • Выражение времени (не поддерживаемый блоком Signal Editor)

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

Используйте любой из форматов входных данных, описанных в Формах Входных данных, за исключением MATLAB® выражения времени.

Пример данных о тесте

Следующее является примером данных о тесте:

Следующие два примера используют эти данные о тесте.

Используйте от блока рабочей области для теста

  1. Откройте модель ex_data_import_test_case_from_workspace.

  2. Включите обнаружение пересечения нулем. В диалоговом окне блока From Workspace выберите Enable zero-crossing detection. Обнаружение пересечения нулем позволяет вам получать разрывы точно.

  3. Создайте структуру сигнала для теста. В каждом разрыве введите дублирующуюся запись во временной вектор, который генерирует нулевое пересечение и обеспечивает решатель переменного шага, чтобы взять временной шаг в это точное время. Для получения дополнительной информации смотрите, что Данные о Загрузке Используют От Блока Рабочей области.

    Задайте var структура, представляющая тест:

    var.time = [0 1 1 5 5 8 8 10];
    var.signals.values = [0 0 2 2 2 3 3 3]';
    var.signals.dimensions = 1;
  4. Чтобы импортировать структуру теста, в От диалогового окна блока Рабочей области, в параметре Data, задают var.

  5. Симулируйте модель. Блок Scope отражает данные о тесте.

Используйте блок редактора сигнала для теста

Вместо того, чтобы использовать блок From Workspace, можно использовать блок Signal Editor для также:

  • Создайте сигнал в интерактивном режиме

  • Импортируйте сигнал из MAT-файла

  1. Создайте модель с Signal Editor, Gain и блоками Scope.

  2. Создайте структуру и сохраните ее в MAT-файле:

    scenario = Simulink.SimulationData.Dataset;
    time = [0 1 1 5 5 8 8 10];
    data = [0 0 2 2 2 3 3 3]';
    scenario{1} = timeseries(data,time);
    scenario{1}.Name = 'var';
    save var.mat scenario
    
  3. Откройте диалоговое окно Signal Editor путем двойного клика по блоку Signal Editor.

  4. В параметре Имени файла введите var.mat.

  5. В параметре Active scenario выберите scenario. Нажмите OK.

    Отображение блока Scope отражает данные о тесте из MAT-файла.

Связанные примеры

Больше о