grafico della funzione di sensitività complementare
Inviato: 17 mar 2019, 11:03
Salve, ho uno schema di controllo con due gradi di libertà(ciclo aperto), e devo ricavarne la funzione di sensitività complementare tra il riferimento e l'output. In particolare sto cercando di fare questo in simulink(o matlab). In particolare devo vedere come varia l 'output di questa man mano che si mette un polo a più alta frequenza.Lo schema è il seguente:
Se vado a vedere l' output di simulink, il risultato è il seguente :
In particolare sto usando un ingresso a gradino.
Credo di stare sbagliando qualcosa dato che nel primo caso ottengo solo una linea orizzontale ed inoltre non sono sicuro che questa sia la funzione di sensitività complementare.
Ho tentato un altro approccio tramite Matlab, ma per fare il plot della funzione di sensitività complementare mi serve usare la funzione loopsens(), ma non riesco a capire come usarla nel caso di uno schema con due gradi di libertà. Quello che sto cercando di fare è questo:
Mi scuso per il post un po' lungo, ma ci sto sbattendo la testa da ormai due giorni e più che capire come fare mi sto confondendo sempre di più.
[EDIT]
Lo schema a blocchi di simulink è il seguente: (mi scuso ma ho dovuto cancellare un' immagine dato che il limite è di tre allegati)
Grazie in anticipo a chiunque mi aiuterà.
Se vado a vedere l' output di simulink, il risultato è il seguente :
In particolare sto usando un ingresso a gradino.
Credo di stare sbagliando qualcosa dato che nel primo caso ottengo solo una linea orizzontale ed inoltre non sono sicuro che questa sia la funzione di sensitività complementare.
Ho tentato un altro approccio tramite Matlab, ma per fare il plot della funzione di sensitività complementare mi serve usare la funzione loopsens(), ma non riesco a capire come usarla nel caso di uno schema con due gradi di libertà. Quello che sto cercando di fare è questo:
Codice: Seleziona tutto
s = tf("s");
Plant = 1/[(1+s)*(1+0.05s)^2];
Plant = 1/[(1+s)*(1+0.05*s)^2];
Controller_1 = (s+1)/s;
Controller_2 = [(1+s)*(1+0.05*s)^2]/(1+0.01*s)^3;
loop = loopsens(Plant, ???);
bodemag(loop.Ti);Mi scuso per il post un po' lungo, ma ci sto sbattendo la testa da ormai due giorni e più che capire come fare mi sto confondendo sempre di più.
[EDIT]
Lo schema a blocchi di simulink è il seguente: (mi scuso ma ho dovuto cancellare un' immagine dato che il limite è di tre allegati)
Grazie in anticipo a chiunque mi aiuterà.