В Формулировке Конструктивных требований как Ограничения H-бесконечности вы выразили свои конструктивные требования как ограничение на H ∞ норма передаточной функции с обратной связью H (s).
Следующий шаг должен создать модель Generalized LTI (Control System Toolbox) H (s), который включает все фиксированные и настраиваемые элементы системы управления. Модель также включает любые функции взвешивания, которые представляют ваши конструктивные требования. Существует два способа получить эту настраиваемую модель вашей системы управления:
Создать настраиваемую обобщенную линейную модель вашей системы управления с обратной связью в MATLAB®:
Используйте команды, такие как tf
, zpk
и ss
, чтобы создать числовые линейные модели, которые представляют фиксированные элементы вашей системы управления и любых функций взвешивания, которые представляют ваши конструктивные требования.
Используйте настраиваемые модели (любой Control Design Blocks или Generalized LTI модели), чтобы смоделировать настраиваемые элементы вашей системы управления. Для получения дополнительной информации о настраиваемых моделях, см. Модели с Настраиваемыми Коэффициентами (Control System Toolbox).
Используйте команды соединения моделей, такие как series
, parallel
и connect
, чтобы создать вашу систему с обратной связью из числовых и настраиваемых моделей.
Этот пример показывает, как создать настраиваемую обобщенную линейную модель следующей системы управления для настройки с hinfstruct
.
Эта блок-схема представляет блок главного диска (HDA) в жестком диске. Архитектура включает объект G
в обратную связь с контроллером PI C
и фильтр нижних частот, F = a/(s+a)
. Настраиваемые параметры являются усилениями PI C
и параметра фильтра a
.
Блок-схема также включает функции взвешивания LS и 1/LS, которые выражают формирующие цикл требования. Позволенный T (s) обозначают передаточную функцию с обратной связью от входных параметров (r, nw) к выходным параметрам (y, ew). Затем H ∞ ограничение:
приблизительно осуществляет целевую форму ответа разомкнутого цикла LS
. В данном примере целевая форма цикла
Это значение LS соответствует следующей форме ответа разомкнутого цикла.
Чтобы настроить систему управления HDA с hinfstruct
, создайте настраиваемую модель системы с обратной связью T (s), включая функции взвешивания, можно следующим образом.
Загрузите объект G
из сохраненного файла.
load hinfstruct_demo G
G
является 9-м порядком модель (ss
) пространства состояний SISO.
Создайте настраиваемую модель контроллера PI.
Можно использовать предопределенный Блок Системы управления tunablePID
, чтобы представлять настраиваемый контроллер PI.
C = tunablePID('C','pi');
Создайте настраиваемую модель фильтра нижних частот.
Поскольку нет никакого предопределенного Блока Системы управления для фильтра F = a/(s+a)
, используйте realp
, чтобы представлять настраиваемый параметр фильтра a
. Затем создайте настраиваемую модель genss
, представляющую фильтр.
a = realp('a',1);
F = tf(a,[1 a]);
Укажите, что целевой цикл формирует LC
.
wc = 1000;
s = tf('s');
LS = (1+0.001*s/wc)/(0.001+s/wc);
Маркируйте вводы и выводы всех компонентов системы управления.
Маркировка I/Os позволяет вам соединять элементы, чтобы создать систему с обратной связью T (s).
Wn = 1/LS; Wn.InputName = 'nw'; Wn.OutputName = 'n'; We = LS; We.InputName = 'e'; We.OutputName = 'ew'; C.InputName = 'e'; C.OutputName = 'u'; F.InputName = 'yn'; F.OutputName = 'yf';
Задайте соединения подведения итогов с точки зрения меток ввода-вывода других компонентов системы управления.
Sum1 = sumblk('e = r - yf'); Sum2 = sumblk('yn = y + n');
Используйте connect
, чтобы объединить все элементы в полную модель системы с обратной связью T (s).
T0 = connect(G,Wn,We,C,F,Sum1,Sum2,{'r','nw'},{'y','ew'});
T0
является объектом genss
, который является моделью Generalized LTI, представляющей систему управления с обратной связью с функциями взвешивания. Свойство Blocks
T0
содержит настраиваемые блоки C
и a
.
T0.Blocks
ans = struct with fields:
C: [1x1 tunablePID]
a: [1x1 realp]
Для получения дополнительной информации об обобщенных моделях систем управления, которые включают и числовые и настраиваемые компоненты, см. Модели с Настраиваемыми Коэффициентами (Control System Toolbox).
Можно теперь использовать hinfstruct
, чтобы настроить параметры этой системы управления. Смотрите Мелодию Параметры Контроллера.
В этом примере модель T0
системы управления является непрерывно-разовой моделью (T0.Ts
= 0). Можно также использовать hinfstruct
с моделью дискретного времени, при условии, что вы задаете определенный шаг расчета (T0.Ts
≠ –1).
Если у вас есть модель Simulink вашей системы управления и программное обеспечение Simulink Control Design, используйте slTuner
, чтобы создать интерфейс к модели Simulink вашей системы управления. Когда вы создаете интерфейс, вы задаете который блоки настроить вашу модель. Интерфейс slTuner
позволяет вам извлекать модель с обратной связью для настройки с hinfstruct
. (Основанная на Simulink функциональность не доступна в MATLAB Online™.)
Этот пример показывает, как создать настраиваемую обобщенную линейную модель системы управления в модели Simulink rct_diskdrive
.
Создать обобщенную линейную модель этой системы управления (включая формирующие цикл функции взвешивания):
Откройте модель.
open('rct_diskdrive');
Создайте интерфейс slTuner
к модели. Интерфейс позволяет вам задавать настраиваемые блоки, и извлечение линеаризовало разомкнутый цикл и ответы с обратной связью. (Для получения дополнительной информации об интерфейсе, смотрите страницу с описанием slTuner
.)
ST0 = slTuner('rct_diskdrive',{'C','F'});
Эта команда указывает, что C
и F
являются настраиваемыми блоками в модели. Интерфейс slTuner
автоматически параметризует эти блоки. Параметризация по умолчанию блока F
передаточной функции является передаточной функцией с двумя свободными параметрами. Поскольку F
является фильтром нижних частот, необходимо ограничить его коэффициенты. Для этого задайте пользовательскую параметризацию F
.
a = realp('a',1); % filter coefficient setBlockParam(ST0,'F',tf(a,[1 a]));
Извлеките настраиваемую модель передаточной функции с обратной связью, которую вы хотите настроить.
T0 = getIOTransfer(ST0,{'r','n'},{'y','e'});
Эта команда возвращает модель genss
линеаризовавшей передаточной функции с обратной связью из ссылки, и шум вводит r,n
к измерению и ошибке выходные параметры y,e
. Вывод ошибок необходим для формирующей цикл функции взвешивания.
Задайте формирующие цикл функции взвешивания и добавьте их к T0
.
wc = 1000;
s = tf('s');
LS = (1+0.001*s/wc)/(0.001+s/wc);
T0 = blkdiag(1,LS) * T0 * blkdiag(1,1/LS);
Обобщенная линейная модель T0
является настраиваемой моделью передаточной функции с обратной связью T (s), обсужденный в Примере: Моделирование Системы управления С Настраиваемым Контроллером PI и Настраиваемым Фильтром. T (s) является взвешенной моделью с обратной связью системы управления rct_diskdrive
. Настройка T0
, чтобы осуществить H ∞ ограничение
приблизительно осуществляет целевую форму цикла LS
.
Можно теперь использовать hinfstruct
, чтобы настроить параметры этой системы управления. Смотрите Мелодию Параметры Контроллера.