
clear all
clc
close all

s = tf('s');

G = (100*(s+10))/(s^2*(s+1)*(s+50))
bode(G)

%Solo proporzionale? No, il Kp varierebbe il modulo, dunque la wc, ma la
%fase è sempre sotto i 180, serve uno zero che mi mi cancelli un polo
%infatti
%C = 0.5 

%provo con un PI piazzando bene lo zero, ma....il polo in 0 dell'
%integratore peggiorerebbe ancora di più la situazione

%C = (s+20)/(s)

%provo con un PD, lo zero in 0 del derivatore dovrebbe migliorare la
%situazione

%provo kd = 1, kp = 1

C = 10*(1+s)  %potrebbe bastare, però margine fase basso, posso usare lo zero
%, aumento wc aumentando il guadagno, per avere sistema più veloce e
%stabile

%PD, kp = 10, kd/kp = 1 --> kd = 10

%C = 10*s, potrei con il solo derivativo che mi cancella un polo in 0 ma boh....

L = C*G
hold on
margin(L)

W = feedback(L,1);
figure(2)
bode(W)
figure(3)
step(W)