Протестируйте симуляцию модели экспорта функций Используя входную матрицу

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

  • Создайте временные векторы, которые задают времена вызова функции.

  • Создайте матрицу, которая добавляет входные данные во временные векторы.

  • Запустите симуляцию.

Чтобы создать модель в этом примере, смотрите, Создают Модель Экспорта функций.

Создайте входные параметры вызова функции и вводы данных

Создайте временные векторы, указывающие, когда события будут иметь место для вызова функции корневого уровня блоки Inport и векторы данных для данных корневого уровня блоки Inport.

  1. Для вызова функции Inport блокирует 1 и 2, создайте вектор-столбцы с временными шагами 0.1 и 0.01. В Командном окне MATLAB® войти

    t1 = [0:0.1:10]';
    t2 = [0:0.01:10]';
    • Временной вектор должен монотонно увеличиваться и двойного типа данных.

    • Если шаг расчета для блока Inport вызова функции задан, значения в соответствующем временном векторе должны все быть целочисленными множителями заданного значения.

    • Чтобы задать несколько вызовов функции в установленный срок продвигаются, повторяют временную стоимость соответственно. Например, чтобы задать три события в t = 0,1 и 2 события в t = 0.5, список 0.1 три раза и 0.5 дважды в вашем временном векторе, t1 = [0.1 0.1 0.1 0.5 0.5]'.

    • Чтобы использовать апериодические шаги расчета, установите блок Inport Sample time на -1 и обеспечьте неоднородный временной вектор, например, t1 = [0, 0.1, 0.2, 0.4, 0.8].

  2. Создайте матрицу с временными шагами и значениями данных для блока Inport данных 3.

    sine_data = sin(0:0.01:10)';
    d3 = [t2,sine_data];

    Ввод данных может использовать любой поддерживаемый формат как описано в Формах Входных данных.

Следующая таблица предоставляет дополнительную информацию для определения временного вектора t.

Тип шага расчета для внутреннего набора блока Trigger Port к:

Блок Function-Call Inport корневого уровня с наследованным шагом расчета (-1)

Блок Function-Call Inport корневого уровня с дискретным шагом расчета

triggered

Неуменьшение вектор-столбца.

Подсистема вызова функций выполняется во времена, заданные вектор-столбцом. Шаги расчета могут быть периодическими или апериодическими.

Если вы задаете пустую матрицу ([]), подсистема вызова функций не выполняется.

Неуменьшение вектор-столбца. Каждым элементом в вектор-столбце должно быть целочисленное кратное шаг расчета, заданный блоком Inport.

Подсистема вызова функций выполняется во времена, заданные вектор-столбцом.

В качестве альтернативы задайте пустую матрицу ([]) и подсистема вызова функций выполняется однажды в каждом шаге расчета, заданном блоком Inport.

periodic

Настройка, не позволенная.

Пустая матрица ([]).

Подсистема вызова функций выполняется во времена, заданные блоком Inport, вызывая его.

Симулируйте модель экспорта функций

Симулируйте модель экспорта функций, чтобы протестировать и наблюдать ее поведение прежде, чем сгенерировать код.

  1. Импортируйте время и данные из рабочего пространства MATLAB.

    На вкладке Modeling выберите Model Settings . В диалоговом окне Configuration Parameters выберите панель Data Import/Export и установите параметр Input на t1, t2, d3.

    t1 и t2 вектор-столбцы, содержащие времена события для вызова функции, Inport блокирует 1 и 2. d3 таблица входных значений по сравнению со временем для блока Inport данных 3.

  2. Запустите симуляцию.

  3. Постройте результаты. В командном окне MATLAB войти.

    plot(yout.time, yout.signals(1).values)
    hold
    plot(yout.time, yout.signals(2).values)

  4. Измените t1 предоставлять событиям каждый 0.5 секунды (0.5 целочисленное кратное шаг расчета 0.1 заданный в блоке Inport 1).

    t1 = [0:0.5:10]';
  5. Повторно выполните симуляцию.

После того, как вы протестируете свою модель, можно сгенерировать код для функций. Смотрите Генерируют Код для Модели Экспорта функций.

Смотрите также

Блоки

Похожие темы