[Controlli Automatici] Progetto controllore in s
Dato una sistema LTI descritto dalla fdt:
$G(s)=\frac{100}{s+500}$
si progetti un controllore a retroazione di uscita, senza cancellare i poli di G(s), tale da garantire:
i. errore a regime nullo a fronte di un riferimento a rampa $r(t)=5t*1(t)$
ii. $w_c\geq3$ rad/s
iii. $\phi>40$ gradi
Impongo $w_c=10$ rad/s.
Divido il problema del controllore in due parti: $C_1(s)=\frac{\mu}{s^2}$ $C_2(s)=(1-\taus)$ dove la seconda parte mi serve per soddisfare la specifica sul margine di fase (iii).
Il MF lo calcolo come $\phi_m=180-abs(\mu_G+\mu_{C1}+\mu_{C2})$ dove $\mu_G+\mu_{C1}+\mu_{C2}$ sono i contributi al MF delle parti che compongono la mia funzione di anello $L(s)=G(s)*C_1(s)*C_2(s)$.
Affinchè il MF sia 50 gradi faccio in modo che il terzo contributo $\mu_{C2}$ valga -50 gradi, pertanto ho che:
$\mu_{C2}=arg(1+10j\tau)=arctg(10\tau)$, quindi $\tau=-0.12$.
Regolando poi il guadagno $\mu$ di $C_1(s)$ faccio in modo che la mia pulsazione critica sia effettivamente 10 rad/s, quindi $\mu=320.6$.
Allora $\phi_m~51$ gradi. Matlab invece mi dice $\phi_m~-51$ gradi.
I vari contributi li ho calcolati nel modo seguente:
$\mu_G=arg(100)-arg(500+10i)=-arctg(\frac{10}{500})=-1.15$ gradi
$\mu_{C1}=arg(\frac{\mu}{-100})=180$ gradi
$\mu_{C2}=arg(1-1.2i)=-arctg(1.2)=-50$ gradi
$G(s)=\frac{100}{s+500}$
si progetti un controllore a retroazione di uscita, senza cancellare i poli di G(s), tale da garantire:
i. errore a regime nullo a fronte di un riferimento a rampa $r(t)=5t*1(t)$
ii. $w_c\geq3$ rad/s
iii. $\phi>40$ gradi
Impongo $w_c=10$ rad/s.
Divido il problema del controllore in due parti: $C_1(s)=\frac{\mu}{s^2}$ $C_2(s)=(1-\taus)$ dove la seconda parte mi serve per soddisfare la specifica sul margine di fase (iii).
Il MF lo calcolo come $\phi_m=180-abs(\mu_G+\mu_{C1}+\mu_{C2})$ dove $\mu_G+\mu_{C1}+\mu_{C2}$ sono i contributi al MF delle parti che compongono la mia funzione di anello $L(s)=G(s)*C_1(s)*C_2(s)$.
Affinchè il MF sia 50 gradi faccio in modo che il terzo contributo $\mu_{C2}$ valga -50 gradi, pertanto ho che:
$\mu_{C2}=arg(1+10j\tau)=arctg(10\tau)$, quindi $\tau=-0.12$.
Regolando poi il guadagno $\mu$ di $C_1(s)$ faccio in modo che la mia pulsazione critica sia effettivamente 10 rad/s, quindi $\mu=320.6$.
Allora $\phi_m~51$ gradi. Matlab invece mi dice $\phi_m~-51$ gradi.
I vari contributi li ho calcolati nel modo seguente:
$\mu_G=arg(100)-arg(500+10i)=-arctg(\frac{10}{500})=-1.15$ gradi
$\mu_{C1}=arg(\frac{\mu}{-100})=180$ gradi
$\mu_{C2}=arg(1-1.2i)=-arctg(1.2)=-50$ gradi
Risposte
Dunque, dopo aver risolto il problema, i risultati che mi vengono sono:
1) $ C_1(s)=K_c/s^2 $
2) $ C_2(s)=(1+0,12s) $
3) $ K_c = 323,59 $
ottenendo una fdt per il controllore:
$ C(s) = (323,59)/s^2 (1+0,12s) $
Ottenendo i seguenti risultati:
$ F(s)=C(s)G(s)=(323,59)/s^2 (1+0,12s)100/(s+500) $
che, come si vede, soddisfa le specifiche imposte dal problema:
1) $ C_1(s)=K_c/s^2 $
2) $ C_2(s)=(1+0,12s) $
3) $ K_c = 323,59 $
ottenendo una fdt per il controllore:
$ C(s) = (323,59)/s^2 (1+0,12s) $
Ottenendo i seguenti risultati:
$ F(s)=C(s)G(s)=(323,59)/s^2 (1+0,12s)100/(s+500) $
che, come si vede, soddisfa le specifiche imposte dal problema:

Cioè in pratica ho sbagliato un solo segno.
In sintesi: si!
