Когда упорядочивание вызова функции достаточно просто быть заданным как образцовый входной параметр, моделирование с помощью входной матрицы является предпочтительным методом для тестирования модели экспорта функций.
Создайте временные векторы, которые задают времена вызова функции.
Создайте матрицу, которая добавляет входные данные к временным векторам.
Запустите моделирование.
Чтобы создать модель в этом примере, смотрите, Создают Модель Экспорта функций.
Создайте временные векторы, указывающие, когда события будут иметь место для вызова функции корневого уровня блоки Inport и векторы данных для данных корневого уровня блоки Inport.
Для Inport 1 и блоков Inport 2, создайте векторы - столбцы с временными шагами 0.1
и 0.01
. В окне MATLAB Command войти
t1 = [0:0.1:10]' t2 = [0:0.01:10]'
Тип данных временного вектора должен быть двойным и монотонно увеличиться.
Если Частота дискретизации для блока Inport вызова функции задана, временной вектор должен быть периодическим рядом, увеличивающимся с заданным значением.
Чтобы задать несколько вызовов функции в установленный срок продвигаются, повторяют временную стоимость соответственно. Например, чтобы задать три события в t = 0,1 и 2 события в t = 0.5, список 0.1 три раза и 0.5 дважды в вашем временном векторе, t = [0.1 0.1 0.1 0.5 0.5]'
.
Если вы хотите использовать апериодический временной вектор, установите Частоту дискретизации блока Inport на -1
и обеспечьте апериодический временной вектор, t1 = [0, 0.1, 0.2, 0.4, 0.8]
Создайте матрицу с временными шагами и значениями данных для блока Inport 3
.
sine_data = sin(0:0.01:10)' d3 =[t2,sine_data]
Ввод данных может использовать любой поддерживаемый формат, как описано в Формах Входных данных.
Следующая таблица предоставляет дополнительную информацию для определения временного вектора t
.
Тип частоты дискретизации для внутреннего Триггерного набора Блокировки порта к: | Блок Function-Call Inport корневого уровня с наследованной частотой дискретизации (-1) | Блок Function-Call Inport корневого уровня с дискретной частотой дискретизации |
---|---|---|
| Неуменьшение вектора - столбца. Подсистема вызова функций выполняется во времена, заданные вектором - столбцом. Частоты дискретизации могут быть периодическими или апериодическими. Если вы задаете пустую матрицу ( | Неуменьшение вектора - столбца. Каждый элемент в векторе - столбце должен быть целочисленным кратным частота дискретизации, заданная блоком Inport. Подсистема вызова функций выполняется во времена, заданные вектором - столбцом. Также задайте пустую матрицу ( |
| Настройка, не позволенная. | Пустая матрица ( Подсистема вызова функций выполняется во времена, заданные блоком Inport, вызывая его. |
Моделируйте модель экспорта функций, чтобы протестировать и наблюдать ее поведение прежде, чем сгенерировать код.
Импортируйте время и данные из рабочей области MATLAB®. В Параметрах конфигурации> панель Импорта/Экспорта Данных, установленная Входной параметр на t1, t2, d3
.
t1
и t2
являются векторами - столбцами, содержащими времена события для вызова функции, Inport блокирует 1
и 2
. d3
является таблицей входных значений по сравнению со временем для блока Inport данных 3
.
Запустите моделирование.
Постройте график результатов. В Окне Команды MATLAB войти.
plot(yout.time, yout.signals(1).values) hold plot(yout.time, yout.signals(2).values)
Измените t1
, чтобы предоставить событиям каждый 0.5
секунды. 0.5
является целочисленным кратным 0.1
, заданный в блоке Inport 1.
t1 = [0:0.5:10]'
Повторно выполните моделирование.
После того, как вы протестируете свою модель, можно сгенерировать код для функций. Смотрите Генерируют Код для Модели Экспорта функций.