Документация Engee

Extremum Seeking Control

Страница в процессе разработки.

Вычисляет параметры регулятора в реальном времени для нахождения экстремума целевой функции.

Тип: SubSystem

Путь в библиотеке:

/Control Systems/Adaptive Control/Extremum Seeking Control

Описание

Блок Extremum Seeking Control настраивает параметры регулятора, для нахождения экстремума целевой функции.

Чтобы настроить алгоритм поиска экстремума, задайте соответствующие частоты воздействия, сигналы демодуляции и модуляции, скорости обучения и начальные условия параметров. При настройке блока убедитесь, что динамика системы соответствует самому быстрому временному масштабу, частоты воздействия возмущений соответствуют среднему временному масштабу, а частоты среза фильтра соответствуют самому медленному временному масштабу. Можно реализовать регуляторы поиска экстремума как в непрерывном, так и в дискретном времени. Изменение временной области контроллера влияет на временную область фильтров верхних частот, фильтров нижних частот и интеграторов

Порты

Вход

# J — целевая функция
скаляр

Details

Целевая функция системы управления изменяется в результате реакции системы на возмущенные параметры.

Типы данных

Float64

Поддержка комплексных чисел

Нет

Выход

# theta — возмущенные параметры
скаляр | вектор

Details

Возмущенные параметры.

Типы данных

Float64

Поддержка комплексных чисел

Нет

# theta_hat — оцениваемые параметры
скаляр | вектор

Details

Используйте этот выходной порт для получения оценочных значений параметров до того, как они будут искажены модулирующим сигналом.

Если значение параметра Number of parameters равно 1, то theta_hat выводит скалярный сигнал. В противном случае theta_hat выводит векторный сигнал длиной, равной значению параметра Number of parameters.

Зависимости

Чтобы использовать этот порт, установите флажок Output estimated parameters.

Типы данных

Float64

Поддержка комплексных чисел

Нет

Параметры

Time Domain

# Time Domain — временная область фильтра и интегратора
Continuous time | Discrete time

Details

Выберите временную область для фильтров нижних частот, фильтров верхних частот и интегратора.

Значения

Continuous time | Discrete time

Значение по умолчанию

Continuous time

Имя для программного использования

timeDomainStatus

Настраиваемый

Нет

Вычисляемый

Да

Discrete-Time Settings

# Sample Time — время дискретизации

Details

Укажите время дискретизации для фильтров и интегратора.

Зависимости

Чтобы использовать этот параметр, укажите для параметра Time Domain значение Discrete time.

Значение по умолчанию

0.0

Имя для программного использования

SampleTime

Настраиваемый

Нет

Вычисляемый

Да

# Integrator method — метод интегрирования
Forward Euler | Backward Euler | Trapezoidal

Details

Для интеграторов с дискретным временем можно выбрать один из следующих методов интегрирования:

Прямой метод Эйлера ,

Обратный метод Эйлера ,

Метод трапеций ,

где

  • — выходной сигнал интегратора;

  • — входной сигнал;

  • — текущий момент времени;

  • — время выборки.

Зависимости

Чтобы использовать этот параметр, укажите для параметра Time Domain значение Discrete time.

Значения

Forward Euler | Backward Euler | Trapezoidal

Значение по умолчанию

Forward Euler

Имя для программного использования

IntegratorMethods

Настраиваемый

Нет

Вычисляемый

Да

Parameters

# Number of parameters — количество параметров

Details

Укажите количество параметров. Блок будет использовать отдельные настройки для каждого параметра.

Значение по умолчанию

1

Имя для программного использования

paramCount

Настраиваемый

Нет

Вычисляемый

Да

# Forcing frequency omega (rad/s) — частота воздействия

Details

Укажите частоту воздействия, которая ниже частот важных системных процессов и выше частот среза фильтров верхних и нижних частот.

Значение по умолчанию

1.0

Имя для программного использования

omega

Настраиваемый

Нет

Вычисляемый

Да

# Initial condition x0 — начальные значения параметров

Details

Начальные значения параметров.

Значение по умолчанию

0.0

Имя для программного использования

initialVal

Настраиваемый

Нет

Вычисляемый

Да

# Learning rate k — скорость обновления параметров

Details

Коэффициент усиления, который определяет скорость обновления параметров в блоке.

Значение по умолчанию

1.0

Имя для программного использования

gain

Настраиваемый

Нет

Вычисляемый

Да

Demodulation Signal

# Demodulation amplitude a — амплитуда демодуляции

Details

Укажите амплитуду сигнала, используемого для демодуляции целевой функции.

Значение по умолчанию

1.0

Имя для программного использования

demodAmp

Настраиваемый

Нет

Вычисляемый

Да

# Demodulation phase phi_1 (rad) — фаза демодуляции

Details

Укажите фазу сигнала, используемого для демодуляции целевой функции. Фаза модуляции. Фазу \демодуляции и модуляции следует выбрать так, чтобы .

Значение по умолчанию

0.0

Имя для программного использования

demodPhase

Настраиваемый

Нет

Вычисляемый

Да

Modulation Signal

# Modulation amplitude b — амплитуда модуляции

Details

Амплитуда сигнала возмущения, добавляемого к оцениваемым параметрам.

Значение по умолчанию

0.1

Имя для программного использования

modAmp

Настраиваемый

Нет

Вычисляемый

Да

# Modulation phase phi_2 (rad) — фаза модуляции

Details

Фаза сигнала возмущения, добавляемого к оцениваемым параметрам. Фазу демодуляции и модуляции следует выбрать так, чтобы .

Значение по умолчанию

0.0

Имя для программного использования

modPhase

Настраиваемый

Нет

Вычисляемый

Да

High-Pass Filter (HPF)

# Enable HPF — включить ФВЧ

Details

Включает фильтр верхних частот.

Значение по умолчанию

false (выключено)

Имя для программного использования

highPassEnable

Настраиваемый

Нет

Вычисляемый

Да

# HPF frequency omega_h (rad/s) — частота среза ФВЧ

Details

Частота среза фильтра верхних частот в радианах в секунду.

Зависимости

Чтобы использовать этот параметр, установите флажок Enable HPF.

Значение по умолчанию

1.0

Имя для программного использования

highPassCutoff

Настраиваемый

Нет

Вычисляемый

Да

Low-Pass Filter (LPF)

# Enable LPF — включить ФНЧ

Details

Включает фильтр нижних частот.

Значение по умолчанию

false (выключено)

Имя для программного использования

lowPassEnable

Настраиваемый

Нет

Вычисляемый

Да

# LPF frequency omega_I (rad/s) — частота среза ФНЧ

Details

Частота среза фильтра нижних частот в радианах в секунду.

Зависимости

Чтобы использовать этот параметр, установите флажок LPF frequency omega_I (rad/s).

Значение по умолчанию

1.0

Имя для программного использования

lowPassCutoff

Настраиваемый

Нет

Вычисляемый

Да

Ports

# Output estimated parameters — добавить вывод оцениваемых параметров

Details

Включите эту настройку, чтобы добавить выходной порт theta_hat.

Значение по умолчанию

false (выключено)

Имя для программного использования

estimatedVarOn

Настраиваемый

Нет

Вычисляемый

Да