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

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

Инструкции по импорту Теста

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

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

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

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

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

Можно загрузить данные следующих типов:

  • A 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-файла.

Похожие примеры

Подробнее о