Em contextos industriais, controladores convencionais como o PID podem degradar o desempenho na presença de perturbações e incertezas modelares. O controle H∞ proporciona uma estrutura robusta para lidar com tais desafios. Este artigo apresenta uma metodologia prática para síntese e simulação de controladores H∞ utilizando MATLAB, com ênfase na mitigação de efeitos de incertezas.
Para ilustrar, consideremos um modelo dinâmico de segunda ordem com parâmetros sujeitos a variações e perturbações externas. Definimos a planta nominal e incroporamos incertezas através de objetos do Robust Control Toolbox:
variavel_s = tf('s');
PlantaBase = 2/(variavel_s^2 + 0.9*variavel_s + 1.5);
ParamIncerto = ureal('param',0,'Range',[-0.4,0.4]);
FuncaoPeso = 0.15*(variavel_s+8)/(variavel_s+0.05);
PlantaPerturbada = PlantaBase * (1 + ParamIncerto * FuncaoPeso);
A seguir, estruturamos o objeto generalizado para formulação do problema de otimização H∞, definindo entradas e saídas relevantes:
sistemas = '{PlantaPerturbada FuncaoPeso}';
variaveis_entrada = '[disturbio(2); acao_control]';
variaveis_saida = '[FuncaoPeso; PlantaPerturbada+disturbio(1)]';
conexão_planta = '[acao_control+disturbio(2)]';
conexão_peso = '[disturbio(1)]';
ObjetoGeneral = sysic;
Com o modelo generalizado, aplicamos a função hinfsyn para projetar o controlador H∞:
[ControladorHinf, MalhaFechadaHinf, gamma] = hinfsyn(ObjetoGeneral, 1, 1);
disp(['Índice de desempenho H∞: ', num2str(gamma)]);
Para análise comparativa, implementamos um controlador PID e simulamos ambos sob perturbações harmônicas:
vetor_tempo = 0:0.01:12;
sinal_perturbacao = 0.6*sin(2*pi*0.4*vetor_tempo);
resposta_PID = lsim(feedback(PlantaBase*pid(1.8,0.7,0.25),1), sinal_perturbacao, vetor_tempo);
resposta_Hinf = lsim(MalhaFechadaHinf(1,1), sinal_perturbacao, vetor_tempo);
figure
plot(vetor_tempo, resposta_PID, 'r-', vetor_tempo, resposta_Hinf, 'b--', 'LineWidth', 2)
legend('Controlador PID', 'Controlador H∞')
title('Resposta Dinâmica sob Perturbações e Incertezas')
Adicionalmente, avaliamos a robustez através de diagramas de valores singerais para verificar estabilidade frente a variações paramétricas:
figure
sigma(MalhaFechadaHinf(1,1), PlantaPerturbada*ControladorHinf, 'k:', PlantaBase*ControladorHinf, 'm-')
grid on
title('Análise de Estabilidade via Valores Singulares')
Este procedimento demonstra a eficácia do controle H∞ na rejeição de perturbações, mas a calibração das funções de ponderação exige iterações baseadas em simulações extensivas para assegurar viabilidade prática em sistemas reais.