exponenta event banner

Модели установок для настройки контроллера усиления по расписанию

Планирование усиления является управляющим подходом для управления нелинейной установкой. Для настройки системы управления с планированием усиления необходим набор линейных моделей, аппроксимирующих нелинейную динамику вблизи выбранных точек проектирования. Обычно динамика растения описывается нелинейными дифференциальными уравнениями вида:

x˙=f (x, u, λ) y = g (x, u, λ).

Здесь x - вектор состояния, u - входной сигнал установки, y - выходной сигнал установки. Эти нелинейные дифференциальные уравнения могут быть известны явно для конкретной системы. Чаще всего они задаются неявно, например моделью Simulink ® .

Можно преобразовать эти нелинейные динамики в семейство линейных моделей, которые описывают локальное поведение растения вокруг семейства рабочих точек (x (λ), u (λ)), параметризованных по переменным планирования, λ. Отклонения от номинального рабочего состояния определяются как:

δx = x x (λ), δu = u − u (λ).

Эти отклонения регулируются в первом порядке линейной динамикой изменения параметров:

δ˙x=A (λ) δx + B (λ) δu, δy = C (λ) δx + D (λ) δu, A (λ) =∂f∂x (x (λ), u (λ)) B (λ) =∂f∂u (x (λ), u (λ)) C (λ) =∂g∂x (x (λ), u (λ)) D (λ) =∂g∂u (x (λ), u (

Этот континуум линейных аппроксимаций к нелинейной динамике называется линейной изменяющейся по параметрам (LPV) моделью:

dxdt = A (λ) x + B (λ) uy = C (

Модель LPV описывает изменение линеаризованной динамики завода в зависимости от времени, условий эксплуатации или любой другой переменной планирования. Например, динамика оси тангажа самолета может быть аппроксимирована моделью LPV, которая зависит от угла падения, α, скорости воздуха, V и высоты, h.

На практике, вы заменяете этот континуум моделей растений на конечный набор линейных моделей, полученных для подходящей сетки, состоящей из λ значений. Эта замена равнозначна выборке динамики LPV в рабочем диапазоне и выбору репрезентативного набора δ значений, ваших расчетных точек.

Контроллеры с запланированным коэффициентом усиления дают наилучшие результаты при плавном изменении динамики установки в различных точках проектирования.

Получение семейства линейных моделей

Если у вас нет этого семейства линейных моделей, существует несколько подходов к его получению, в том числе:

Для настройки графиков усиления после получения семейства линейных моделей необходимо связать его с slTuner интерфейс для построения семейства настраиваемых моделей с замкнутым контуром. Для этого используйте подстановку блоков, как описано в разделе «Несколько точек проектирования в интерфейсе slTuner».

Настройка планирования усиления путем линеаризации в точках проектирования

В этом примере показано, как линеаризовать модель установки в наборе точек проектирования для настройки контроллера с запланированным коэффициентом усиления. Затем в примере используются полученные линеаризованные модели для настройки slTuner интерфейс для настройки графика усиления.

Откройте окно rct_CSTR модель.

mdl = 'rct_CSTR';
open_system(mdl)

В этой модели Concentration controller и Temperature controller оба зависят от выходной концентрации Cr. Для настройки этой запланированной системы усиления необходимо провести линеаризацию установки в наборе установившихся рабочих точек, которые соответствуют различным значениям параметра планирования. Cr. Иногда удобно использовать отдельную модель установки для обрезки и линеаризации при различных условиях эксплуатации. Например, в этом случае наиболее простым способом получения этих линеаризаций является использование отдельной модели растения с разомкнутым контуром, rct_CSTR_OL.

mdl_OL = 'rct_CSTR_OL';
open_system(mdl_OL)

Обрезка установки в расчетных точках

Предположим, что вы хотите управлять этим заводом в диапазоне Cr значения из 4 кому 8. Обрезать модель, чтобы найти установившиеся рабочие точки для набора значений в этом диапазоне. Эти значения являются точками проектирования для настройки.

Cr = (4:8)';        % concentrations
for k=1:length(Cr)
   opspec = operspec(mdl_OL);
   % Set desired residual concentration
   opspec.Outputs(1).y = Cr(k);
   opspec.Outputs(1).Known = true;
   % Compute equilibrium condition
   [op(k),report(k)] = findop(mdl_OL,opspec,findopOptions('DisplayReport','off'));
end

op представляет собой массив стационарных рабочих точек. Дополнительные сведения об установившихся рабочих точках см. в разделе Сведения об рабочих точках (Simulink Control Design).

Линеаризация в точках проектирования

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

G = linearize(mdl_OL,'rct_CSTR_OL/CSTR',op);

Создать slTuner Интерфейс с подстановкой блоков

Настройка системы управления rct_CSTR, создайте slTuner интерфейс, линеаризующий систему в этих точках проектирования. Замена блока для замены завода в rct_CSTR с линеаризованным массивом «завод-модель» G.

blocksub.Name = 'rct_CSTR/CSTR';
blocksub.Value = G;
tunedblocks = {'Kp','Ki'};
ST0 = slTuner(mdl,tunedblocks,blocksub);

Для этого примера только коэффициенты PI в Concentration controller обозначены как настроенные блоки. В целом, однако, tunedblocks перечисляет все настраиваемые блоки.

Дополнительные сведения об использовании подстановки блоков для настройки slTuner для настройки контроллера по расписанию усиления см. раздел Несколько точек проектирования в интерфейсе slTuner.

Для другого примера, который иллюстрирует отделку использования и линеаризацию, чтобы произвести семейство линейных моделей для намеченного на выгоду диспетчера, настраивающегося, посмотрите Отделку и Линеаризацию корпуса HL-20.

Пример системы в моментальных снимках моделирования

Если вы управляете системой вокруг эталонной траектории (x (λ), u (λ)), используйте линеаризацию снимка, чтобы выполнить выборку системы в различных точках вдоль этой траектории. Этот подход используется для изменяющихся во времени систем, в которых переменной календарного планирования является время.

Для линеаризации системы в наборе снимков моделирования используйте вектор положительных скаляров в качестве op входной аргумент linearize, slLinearizer, или slTuner. Эти скаляры являются временем моделирования для линеаризации модели. Используйте тот же набор значений времени, что и расчетные точки в настраиваемых поверхностях для системы.

Образец системы при различных значениях параметров

Если переменная планирования является параметром в модели Simulink, можно использовать вариацию параметров для выборки системы управления по сетке параметров. Например, предположим, что требуется настроить модель с именем suspension_gs который содержит два параметра, Ks и Bs. Каждый из этих параметров может изменяться в некотором известном диапазоне, и коэффициент усиления контроллера в модели изменяется в зависимости от обоих параметров.

Чтобы настроить такую модель для настройки, создайте сетку значений параметров. Для этого примера позвольте Ks варьируются от 1 до 5, и пусть Bs варьируют от 0,6 до 0,9.

Ks = 1:5;
Bs = [0.6:0.1:0.9];
[Ksgrid,Bsgrid] = ndgrid(Ks,Bs);

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

params(1) = struct('Name','Ks','Value',Ksgrid);
params(2) = struct('Name','Bs','Value',Bsgrid);
STO = slTuner('suspension_gs','K',params);

slTuner примеры модели на всех (Ksgrid,Bsgrid) значения, указанные в params.

Затем используйте те же точки проектирования для создания настраиваемой поверхности усиления для параметризации K.

design = struct('Ks',Ksgrid,'Bs',Bsgrid);
shapefcn = @(Ks,Bs)[Ks,Bs,Ks*Bs];
K = tunableSurface('K',1,design,shapefcn);
setBlockParam(ST0,'K',K);

После параметризации всех запланированных выигрышей можно создать цели настройки и настроить систему с помощью systune.

Исключение образцов в ненужных точках проектирования

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

Существуют и другие инструменты для управления тем, какие модели способствуют проектированию и анализу. Например, может потребоваться следующее:

  • Сохраните модель в сетке для анализа, но исключите ее из настройки.

  • Сохранение модели в сетке для настройки, но исключение ее из определенной цели конструирования.

Дополнительные сведения см. в разделе Изменение требований с учетом условий эксплуатации.

Установки LPV в MATLAB

В MATLAB ® можно использовать массив моделей завода LTI, чтобы представить систему LPV, отобранную при различных значениях λ. Чтобы связать каждую линейную модель в наборе с нижележащими точками конструкции, используйте SamplingGrid свойство массива модели LTI λ. Одним из способов получения такого массива является создание параметрического обобщённого состояния-пространства (genss) модель системы и образец модели с изменением параметров для генерации массива. Пример см. в разделе Изменение параметров исследования с помощью выборки настраиваемой модели.

См. также

| (Simulink Control Design) | (Проект управления Simulink)

Связанные темы