Эта модель показывает метод для измерения частотной характеристики непрерывной системы времени (объект) с помощью Stateflow®. Это иллюстрирует несколько функций Stateflow, таких как обнаружение функции и изменения temporalCount
. Обратите внимание на то, что этот график использует MATLAB® в качестве языка действия.
Кратко, модель состоит из нескольких этапов:
Синусоидальный генератор сигнала, который производит комплексные синусоидальные сигналы увеличивающейся частоты.
Второй порядок непрерывная система времени, чья частотная характеристика мы хотим измериться.
Диаграмма Stateflow (Analyzer
), который измеряет значение и сдвиг фазы ответа непрерывной системы.
Диаграмма Stateflow (Unwrap
), который работает как функция MATLAB unwrap
и переносит частотную характеристику так, чтобы не было никаких резких скачков от к.
Генератор синусоиды является подсистемой, которая выводит комплексный сигнал увеличивающейся частоты. Для каждой частоты сигнал сохраняется на той частоте в течение данного времени задержки. Подсистема имеет два выходных параметров:
Скалярный f
, который является частотой тока
Комплексный y
сигнала, который является комплексным сигналом с частотой f
.
Поведение подсистемы параметризовано ее диалоговыми параметрами маски. Например, для приведенных ниже значений:
подсистема выводит синусоидальный сигнал, который запускается на уровне 10 Гц, содержит ту частоту в течение 0,2 секунд и затем увеличивает частоту на 10 Гц. Это продолжается, пока частота не достигает 1000 Гц.
Генератор синусоиды реализован с помощью диаграммы Stateflow как указано ниже:
Поскольку график использует MATLAB в качестве языка действия, логика, чтобы вычислить комплексный сигнал с частотой тока, f
может быть непосредственно введен как акт государственной власти:
yprev = y; y = exp(2*pi*f*t*1j);
Вход к этой функции является прошедшим временем (в секундах), поскольку мы в последний раз изменили частоту. Отметьте использование встроенной функции Stateflow temporalCount
, который рассчитывает, номер секунд протек, поскольку состояние в последний раз вводилось.
A
состояния повторно введен каждый раз, когда секунды delay
протекли, и мнимая часть вывода только пересекает нуль. Это гарантирует, что сигнал изменяет частоту, когда это имеет небольшую мнимую часть. Без дополнительной проверки вход к объекту переключился бы от высокого значения, чтобы обнулить в два последовательных такта. Это привело бы к выводу от объекта, берущего намного дольше, чтобы стабилизироваться на новой частоте.
Объект в этом примере является простым вторым порядком резонирующая система. В приложении реального мира это было бы реализовано через xPC D/A и блоки A/D, которые измерят ответ DUT (Устройство Под Тестом).
График анализатора берет в качестве входных параметров комплексный сигнал, который является входом к объекту и измеренному (действительному) выводу от объекта. Это выводит значение и фазу объекта вывод.
График анализатора работает путем поддержания двух рабочих сумм для каждой частоты. Сумма y
является накоплением (интеграл) продукта объекта вывод (вещественное число) с комплексным u
сигнала. Сумма yn
является накоплением продукта входа объекта с комплексным u
сигнала. Таким образом yn
представляет накопление гипотетического объекта с модульной передаточной функцией.
Когда частота переключается (который график Анализатора обнаруживает использование встроенной функции Stateflow hasChanged
), это вычисляет значение и фазу объекта, выведенного путем нормализации y
относительно yn
.
Имитаторы графика Unwrap
встроенная функция MATLAB разворачивают. Отметьте использование объединенной записи - во время действия, заданного с помощью синтаксиса en,du:
. Таким образом действие происходит оба, когда состояние сначала вводится, а также на время действия состояния.
Когда модель моделируется, значение и фаза непрерывной системы времени могут быть измерены как показано ниже. Мы видим, что объект достигает резонанса вокруг t = 10 секунд.
Если мы строим измеренное значение и фазу против входной частоты объекта, мы получаем измеренную частотную характеристику или диаграмму Боде для объекта. Как видно, измеренная резонансная частота составляет приблизительно 150 Гц с пиковой амплитудой приблизительно 1,6. Это тесно совпадает с динамикой объекта, которой дают:
с