Создайте настраиваемую поверхность усиления для табличного управления
tunableSurface
позволяет вам параметризовать и настроить gain schedules, которые являются усилениями, которые варьируются как функция от одной или нескольких переменных планирования.
В целях настройки удобно параметризовать переменный коэффициент усиления как плавную gain surface вида:
где
σ является вектором переменных планирования.
n (σ) является функцией нормализации (см. Normalization
свойство выходного аргумента K
).
γ является масштабным коэффициентом (см. Normalization
свойство выходного аргумента K
).
F 1,..., FM являются выбранными пользователем базисными функциями.
K 0,..., KM являются коэффициентами, которые будут настроены
Можно использовать условия в родовом полиномиальном расширении как базисные функции. Или, когда известна ожидаемая форма K (σ), можно использовать более конкретные функции. Затем можно использоватьsystune
чтобы настроить коэффициенты K 0,..., KM, удовлетворяющие вашим проектам требованиям, над областью значений значений переменных планирования.
создает настраиваемую поверхность усиления: K
= tunableSurface(name
,K0init
,domain
,shapefcn
)
Настраиваемая поверхность K
сохраняет базисные функции, заданные shapefcn
и множество значений σ (design points), заданных domain
. Настраиваемая поверхность усиления имеет настраиваемые коэффициенты K 0,..., KM. Значение усиления инициализируется к постоянному усилению K0init
. Можно комбинировать K
с другими статическими или динамическими элементами, чтобы создать модель с обратной связью вашей системы управления с запланированным усилением. Или используйте K
для параметризации интерполяционной таблицы в slTuner
интерфейс с Simulink® модель. Затем используйте systune
чтобы настроить K 0,..., KM так, чтобы система с обратной связью удовлетворяла вашим проектом требованиям в выбранных точках проекта.
Чтобы настроить поверхность усиления в системе управления, смоделированной в MATLAB®: Соедините поверхность усиления с массивом моделей объекта управления, соответствующих проектным точкам в domain
. Например, предположим G
является таким массивом, и K
представляет переменное время интегрирования. Следующая команда создает модель с обратной связью, которую можно настроить с systune
команда.
C0 = tf(K,[1 0]); T0 = feedback(C0*G,1);
Чтобы настроить поверхность усиления в системе управления, смоделированной в Simulink: Используйте поверхность усиления, чтобы параметризовать интерполяционную таблицу или MATLAB function блока в модели Simulink. Например, предположим ST0
является slTuner
интерфейс с моделью Simulink и GainTable
- имя настроенного блока в интерфейсе. Следующая команда устанавливает параметризацию GainTable
к настраиваемой поверхности усиления.
ST0 = setBlockParam(ST0,'GainTable',K);
Смотрите Параметризация графиков усиления для получения дополнительной информации.
Когда вы используете writeBlockValue
(Simulink Control Design), чтобы записать настроенную поверхность усиления назад в модель Simulink, программное обеспечение использует codegen
чтобы сгенерировать код MATLAB для поверхности усиления. Вы можете использовать codegen
сам, чтобы изучить этот код.