55 lines
1.4 KiB
Matlab
55 lines
1.4 KiB
Matlab
clear; close all; clc;
|
|
%% Primeiro exemplo
|
|
G = tf([1], [1 0 -1]);
|
|
step(G)
|
|
pole(G)
|
|
%% Segundo exemplo
|
|
G = tf([1], [1 0 1]);
|
|
step(G)
|
|
pole(G)
|
|
%% Cancelamento ideal open loop
|
|
G = tf([1], [1 0 -1]);
|
|
Dol = tf([1 -1], [1 1]);
|
|
Tol = Dol*G;
|
|
step(Tol)
|
|
%% Cancelamento não ideal open loop
|
|
G = tf([1], [1 0 -1]);
|
|
Dol = tf([1 -0.999999], [1 1]);
|
|
Tol = Dol*G;
|
|
step(Tol)
|
|
%% Closed loop
|
|
G = tf([1], [1 0 -1]);
|
|
Dcl = 3.4*tf([1 1], [1 2.4]);
|
|
Tcl = G*Dcl/(1+G*Dcl) %% Não cancela polos com zeros
|
|
step(Tcl)
|
|
%% Closed loop com funções feedback e series
|
|
G = tf([1], [1 0 -1]);
|
|
Tcla = feedback(series(Dcl, G), 1) %% Já cancela polos com zeros
|
|
step(Tcla)
|
|
%% Zero no RHP
|
|
Tclb = tf([-3.4 3.4], [1, 2.4, 2.4, 1]) %% Tcla com sinal do zero trocado
|
|
step(Tclb)
|
|
%% Sistema tipo 0 com entrada degrau
|
|
G = tf(1, [1 1]);
|
|
D=1; %% Controlador P
|
|
Tcl = feedback(series(D, G), 1);
|
|
step(Tcl)
|
|
%% Sistema tipo 0 com entrada rampa
|
|
G = tf(1, [1 1]);
|
|
D=1; %% Controlador P
|
|
Tcl = feedback(series(D, G), 1);
|
|
t = 0:0.1:5; %% Não tem função ramp() no Matlab
|
|
u = t;
|
|
lsim(Tcl, u, t)
|
|
%% Sistema tipo 1 com entrada degrau
|
|
G = tf(1, [1 1 0]);
|
|
D=1; %% Controlador P
|
|
Tcl = feedback(series(D, G), 1);
|
|
step(Tcl)
|
|
%% Sistema tipo 1 com entrada rampa
|
|
G = tf(1, [1 1 0]);
|
|
D=1; %% Controlador P
|
|
Tcl = feedback(series(D, G), 1);
|
|
t = 0:0.1:5; %% Não tem função ramp() no Matlab
|
|
u = t;
|
|
lsim(Tcl, u, t) |