Циклограмма
![]() |
![]() |
| Векторный | Си
|
|
| в палитре | на схеме |
Описание
Блок реализует функции управляемого функционального генератора и предоставляет возможность задания произвольных периодических функций в виде последовательности опорных точек, которые интерполируются в соответствии с выбранным методом. Позволяет заменить блоки типа Меандр, Треугольный сигнал, Пила, Обратная пила, Кусочно-постоянная и расширить их возможности.
Входные порты
| Имя | Описание | Тип линии связи |
|---|---|---|
| state flag | Управляющий вход. Может иметь 3 состояния: 0 – источник выключен; 1 – источник включен; 2 – источник установлен на паузу. В случае выключения источника, на выходе устанавливается начальное значение циклограммы. | Математическая |
|
modulation |
Дополнительный вход, включающийся в свойствах блока, позволяет задавать скорость выполнения циклограммы заданием на нем коэффициента ускорения относительно модельного времени. | Математическая |
Выходные порты
| Имя | Описание | Тип линии связи |
|---|---|---|
| out value | Функциональный выход блока. Имеет значение в соответствии с текущим моментом времени заданной циклограммы, если блок в работе. | Математическая |
|
end of cycle |
Дискретный выход. В моменты окончания циклограммы переключается в единицу. Переключение происходит импульсно, если блок настроен на циклическое выполнение функции. | Математическая |
| cycletime | Дополнительный выход, включающийся в свойствах блока. Показывает текущее время циклограммы. | Математическая |
Свойства
| Название | Имя | Описание | По умолчанию | Тип данных |
|---|---|---|---|---|
| Временные отсчёты, сек | t | Массив времён для табличного представления произвольной функции. | [[1 , 2 , 5 , 10]] | Матрица |
| Значения | y | Массив значений функции в соответствующие участки времени. | [[0.5 , 1.5 , 2.5 , 3.5]] | Матрица |
| Циклический источник | is_cyclic | Опция указывает выполнится ли функция на выходе только один раз или будет выполняться циклично. Если установлено значение "Нет", то после однократного воспроизведения функции, на выходе блока остается последнее значение функции. | Да | Двоичное |
| Метод интерполяции выхода | interp_method | Выбор способа интерполяции (соединения соседних точек). Либо ступенчатый (соединение точек ступенькой), либо линейный (соединение точек линейной функцией). | Ступенчатая | Перечисление |
| Вывод времени цикла | out_cycle_time | Включение либо выключение дополнительного выхода (cycletime), показывающего текущий момент времени заданной функции (циклограммы). | Нет | Двоичное |
| Вход для задания коэффициента ускорения | modulation_in | Включение либо выключение дополнительного входа, позволяющего управлять скоростью выполнения циклограммы с помощью задания на нем коэффициента ускорения относительно модельного времени. | Нет | Двоичное |
Произвольная функция (циклограмма) задается в свойствах блока в табличном виде ([x 1, x i, x n], [y 1, y i, y n]), причем значение функции y i поддерживается ДО момента времени x i. После чего происходит переключение на значение функции y i+1, которое в свою очередь поддерживается на выходе до момента времени x i+1.
Параметры
Блок не имеет параметров.
Промпт
//Описание блока, реализующего функции управляемого функционального
//генератора. Позволяет задавать произвольные периодические функции в виде
//последовательности опорных точек, которые интерполируются в соответствии
//с выбранным методом. Позволяет заменить блоки типа "Меандр", "Треугольный сигнал",
//"Пила", "Обратная пила", "Кусочно-постоянная" и расширить их возможности
// t - временные отсчёты, сек. Массив времён для табличного представления
//произвольной функции. По умолчанию [[1 , 2 , 5 , 10]]
// y - значения. Массив значений функции в соответствующие участки времени.
//По умолчанию [[0.5 , 1.5 , 2.5 , 3.5]]
// is_cyclic - циклический источник. Опция указывает, выполнится ли функция на выходе
//только один раз или будет выполняться циклично. Если установлено значение "Нет",
//то после однократного воспроизведения функции на выходе блока остаётся последнее
//значение функции. По умолчанию: Да
// interp_method - метод интерполяции выхода. Выбор способа интерполяции (соединения
//соседних точек). Либо ступенчатый (соединение точек ступенькой), либо линейный
//(соединение точек линейной функцией). По умолчанию: Ступенчатая
// out_cycle_time - вывод времени цикла. Включение либо выключение дополнительного
//выхода (cycletime), показывающего текущий момент времени заданной функции
//(циклограммы). По умолчанию: Нет
// modulation_in - вход для задания коэффициента ускорения. Включение либо выключение
//дополнительного входа, позволяющего управлять скоростью выполнения циклограммы
//с помощью задания на нём коэффициента ускорения относительно модельного времени.
//По умолчанию: Нет
//Произвольная функция (циклограмма) задаётся в свойствах блока в табличном виде
//([x1, xi, xn], [y1, yi, yn]), причём значение функции yi поддерживается ДО момента
//времени xi. После чего происходит переключение на значение функции yi+1, которое
//в свою очередь поддерживается на выходе до момента времени xi+1
//Входы:
// state flag - управляющий вход. Может иметь 3 состояния: 0 - источник выключен;
//1 - источник включён; 2 - источник установлен на паузу. В случае выключения
//источника на выходе устанавливается начальное значение циклограммы
// modulation - дополнительный вход, включающийся в свойствах блока, позволяет
//задавать скорость выполнения циклограммы заданием на нём коэффициента ускорения
//относительно модельного времени
//Выходы:
// out value - функциональный выход блока. Имеет значение в соответствии с текущим
//моментом времени заданной циклограммы, если блок в работе
// end of cycle - дискретный выход. В моменты окончания циклограммы переключается
//в единицу. Переключение происходит импульсно, если блок настроен на циклическое
//выполнение функции
// cycletime - дополнительный выход, включающийся в свойствах блока. Показывает
//текущее время циклограммы
block: (
type = "Циклограмма",
points=[(-200 , 0),(-184 , 0),(-200 , -16),(408 , 308)],
t = [[1 , 2 , 5 , 10]],
y = [[0.5 , 1.5 , 2.5 , 3.5]],
is_cyclic = Да,
interp_method = Ступенчатая,
out_cycle_time = Нет,
modulation_in = Нет
),

