Pulse Generator
Генератор прямоугольных импульсов заданной частоты.
Описание
Блок Pulse Generator генерирует прямоугольные импульсы с регулярными интервалами. Параметры формы сигнала блока Amplitude, Pulse Width, Period и Phase delay определяют форму выходного сигнала. На следующей диаграмме показано, как каждый параметр влияет на форму сигнала.
Блок Pulse Generator может выдавать скалярные, векторные или матричные сигналы. Чтобы сгенерировать скалярный сигнал, используйте скаляры для задания параметров формы сигнала. Чтобы сгенерировать сигнал вектора или матрицы, используйте векторы или матрицы соответственно. Каждый элемент параметров формы сигнала влияет на соответствующий элемент выходного сигнала. Например, первый элемент параметра амплитуды вектора определяет амплитуду первого элемента выходного импульса вектора.
Блок может работать в двух режимах, определяемых параметром Pulse type:
-
Режим на основе времени симуляции (
Time-Based
). -
Режим на основе шагов расчета (
Sample-Based
).
Режим на основе времени симуляции
В режиме на основе времени симуляции Engee вычисляет значение выходного сигнала блока только тогда, когда выходные данные фактически изменяются. Этот подход приводит к меньшему количеству вычислений. Для включения этого режима установите параметр Pulse type в значение Time based
.
Блок не поддерживает конфигурацию, которая приводит к постоянному выходному сигналу. Engee возвращает ошибку, если параметры Pulse Width и Period удовлетворяют любому из этих условий:
Блок Pulse Generator в режиме Time based
Simulation Time
является дискретным, хотя у него нет поля Sample time. В качестве Sample time блок выбирает такое значение, которое будет укладываться одновременно целое количество раз и в ширину импульса и в период, чтобы не пропустить значения.
Формула следующая:
Если для блока установлен режим Time based
External Signal
, то все параметры, кроме Amplitude, должны быть кратны пришедшему на вход блоку Sample time, чтобы также не пропускать значения.
Если в блоке используются векторные параметры, то помимо взятия наибольшего общего делителя между поэлементными параметрами, он также возьмет наибольший делитель между рассчитанными значениями.
Режим на основе шагов расчета
В режиме на основе шагов расчета блок вычисляет свои выходные параметры через фиксированные интервалы, заданные параметрами блока. Для включения этого режима установите параметр Pulse type в значение Sample based
.
В режиме Sample Based
блок всегда дискретный.
Блок не поддерживает режим Sample Based
External Signal
Важным отличием между режимами на основе времени и на основе шагов расчета является то, что в режиме на основе времени выходные данные блока основаны на времени симуляции, а в режиме на основе шагов расчета выходные данные блока зависят только от начала симуляции, независимо от прошедшего времени.
Порты
Параметры
Pulse type — режим работы
Time based (по умолчанию)
| Sample based
Режим работы блока: Time based
или Sample based
.
Некоторые параметры в диалоговом окне активны в зависимости от того, какой режим выбран.
Параметр блока |
|
Значение |
|
По умолчанию |
|
Time (t) — источник времени
Use simulation time (по умолчанию)
| Use external signal
Выбор источника времени для вычисления значения сигнала.
Use simulation time
— блок генерирует выходной сигнал на основе времени симуляции.
Use external signal
— блок генерирует выходной импульс на основе значения на входном порту t (может отличаться от времени симуляции). На значке блока отображается входной порт для подключения источника.
Параметр блока |
|
Значение |
|
По умолчанию |
|
Amplitude — амплитуда сигнала
1 (по умолчанию)
| скаляр
| вектор
| матрица
Амплитуда сгенерированного сигнала.
Параметр блока |
|
Значение |
|
По умолчанию |
|
Period (secs) — период импульсов
10 (по умолчанию)
| скаляр
| вектор
| матрица
Период импульса задается в секундах, если для параметра Pulse type установлено значение Time based
.
Параметр блока |
|
Значение |
|
По умолчанию |
|
Period (number of samples) — период импульсов
10 (по умолчанию)
| скаляр
| вектор
| матрица
Если для параметра Pulse type установлено значение Sample based
, то период задается как количество шагов выборки.
Параметр блока |
|
Значение |
|
По умолчанию |
|
Pulse Width (% of period) — ширина импульса
5 (по умолчанию)
| скаляр
| вектор
| матрица
Ширина импульса определяется как:
-
доля в процентах от периода, если для параметра Pulse type установлено значение
Time based
.
Значение должно быть в диапазоне [0,100].
Параметр блока |
|
Значение |
|
По умолчанию |
|
Pulse Width (number of samples) — ширина импульса
5 (по умолчанию)
| скаляр
| вектор
| матрица
Ширина импульса определяется как:
-
количество шагов расчета, если для параметра Pulse type установлено значение
Sample based
.
Значение должно быть в диапазоне [0,100].
Параметр блока |
|
Значение |
|
По умолчанию |
|
Phase Delay (secs) — задержка перед первым импульсом
0 (по умолчанию)
| скаляр
Задержка перед генерацией первого импульса, указанная в секундах, если для параметра Pulse type установлено значение Time based
.
Параметр блока |
|
Значение |
|
По умолчанию |
|
Phase Delay (number of samples) — задержка перед первым импульсом
0 (по умолчанию)
| скаляр
Задержка перед генерацией первого импульса, указанная как количество шагов расчета, если для параметра Pulse type установлено значение Sample based
.
Параметр блока |
|
Значение |
|
По умолчанию |
|
Sample time — интервал между шагами расчета
-1 (по умолчанию)
| скаляр
Укажите интервал между шагами расчета как неотрицательное число.
Чтобы наследовать шаг расчета, установите для этого параметра значение -1
.
Зависимости
Чтобы использовать этот параметр, установите для параметра Pulse type значение Sample based
.
Параметр блока |
|
Значение |
|
По умолчанию |
|