% Avanço via LGR % Autor: JJC close all clear all % ============================================== % Compensador com ganho unitário % ============================================== % Define os polinômios do numerador e do denominador num1 = 4; den1 = [1 2 0]; % Define os valores dos ganhos para o traçado do LGR k1=0:0.01:2; % Traça o gráfico do LGR rlocus(num1,den1,k1) % "Segura" o gráfico hold on % Polinômio característico de malha fechada den_mf1 = [1 2 4]; % Polos de malha fechada p1 = roots(den_mf1); plot(p1,'r*') % Libera o gráfico hold off % ============================================== % Compensador por avanço de fase % ============================================== % Novo gráfico figure % Define os polinômios do numerador e do denominador num_av = [1 2.9]; den_av = conv([1 2 0],[1 5.4]); % Define os valores dos ganhos para o traçado do LGR k_av=0:0.001:20; % Traça o gráfico do LGR rlocus(num_av,den_av,k_av) % "Segura" o gráfico hold on % Polinômio característico de malha fechada % s^3+(2+5.4)*s^2+(2*5.4+18.7)*s+2.9*18.7 den_mf_av = [1 2+5.4 2*5.4+18.7 2.9*18.7]; % Polos de malha fechada p_av = roots(den_mf_av); plot(p_av,'r*') % ============================================== % Simulação para entrada degrau % ============================================== figure sim('resp_degrau_avanco') plot(t,y1,'b+',t,y2,'r') legend('Forma de polos e zeros','Forma de constantes de tempo') grid xlabel('Tempo (s)') ylabel('Saída') title('Respostas a degrau para o compensador escrito nas duas formas: i) polos e zeros; ii) constantes de tempo')