В блоке Test Sequence можно сгенерировать сигналы использовать для тестирования. Во-первых, задайте символ выходных данных с помощью панели Data Symbols, и затем используйте то выходное имя с функцией генерации сигнала на тестовом шаге. Для получения информации о добавляющих символах смотрите, Управляют Входом, Выходом и Объектами данных. Для примера, который показывает, как реализовать функции сигнала в блоке Test Sequence, смотрите Функции Синусоидального и Случайного числа в Тестовых Последовательностях
В следующей таблице перечислены общие функции, которые можно использовать в блоке Test Sequence, чтобы создать тестовые сигналы, значения случайных чисел и естественные экспоненты. Это также описывает latch
функция, которая сохраняет и возвращает определенное значение, оцененное в тестовом шаге последовательности.
Некоторые функции генерации сигнала используют темпорального оператора et
, который является прошедшим временем тестового шага в секундах. Для дополнительных операторов, связанных с et
то, что можно использовать на тестовых шагах последовательности, смотрите Темпоральных операторов
Примечание
Масштабирование, округляясь, и другие приближения значений аргументов может влиять на функциональные выходные параметры.
Функция | Синтаксис | Описание | Пример |
---|---|---|---|
sin | sin(x) | Возвращает синус | Синусоида с периодом 10 секунд: sin(et*2*pi/10) |
cos | cos(x) | Возвращает косинус | Волна косинуса с периодом 10 секунд: cos(et*2*pi/10) |
square | square(x) | Прямоугольная волна выводится с периодом В интервале
| Выведите прямоугольную волну с периодом square(et/10) |
sawtooth | sawtooth(x) | Пилообразный выход волны с периодом В интервале
| Выведите пилообразную волну с периодом sawtooth(et/10) |
triangle | triangle(x) | Треугольный выход волны с периодом В интервале
| Выведите треугольную волну с периодом triangle(et/10) |
ramp | ramp(x) | Сигнал пандуса наклонного
| Пандус один модуль в течение каждых 5 секунд теста продвигается прошедшее время: ramp(et/5) |
heaviside | heaviside(x) | Heaviside продвигаются сигнал, возвращая
| Выведите сигнал heaviside после heaviside(et-5) |
exp | exp(x) | Возвращает натуральную экспоненциальную функцию, . | Экспоненциальный сигнал, прогрессирующий в одной десятой теста, продвигается прошедшее время: exp(et/10) |
rand | rand | Равномерно распределенные псевдослучайные значения | Сгенерируйте новые случайные значения для каждой симуляции путем объявления coder.extrinsic('rand')
nr = rand
sg = a + (b-a)*nr |
randn | randn | Нормально распределенные псевдослучайные значения | Сгенерируйте новые случайные значения для каждой симуляции путем объявления coder.extrinsic('randn')
nr = randn
sg = nr*2 |
latch | latch(x) | Сохраняет значение
| Фиксируйте b = latch(torque) |
В этом примере показано, как произвести синус и тестовый сигнал случайных чисел в блоке Test Sequence.
Шаг Sine
выводит синусоиду с периодом 10 секунд, заданных аргументом et*2*pi/10
. Шаг Random
выводит случайное число в интервале -0.5 to 0.5
.
Тестовая последовательность производит sg
сигнала.
Test Sequence | Протестируйте синтаксис последовательности и оценки