Jag har beräknat en överföringsfunktion för ett specifikt system (ett lågpassfilter):
$$ H (j \ omega) = \ frac {1} {RCj \ omega +1} $$
Det verkar för mig att det vanliga sättet att plotta frekvensresponsen på filtret är att använda en Bode-plot. Därför vill jag veta hur man gör det i Matlab.
Det finns en funktion bodeplot i Matlab som till exempel tar ett argument beräknat med tf
, som i sin tur tar en täljare och nämnare.
Jag förstår inte hur jag ska använda dessa funktioner med min redan beräknade formel ovan. Har jag redan beräknat någon del som skulle kunna göras med de ovan nämnda Matlab-funktionerna?
Så, hur skapar jag en Bode-plot från min överföringsfunktion i Matlab?
Här är min nuvarande Matlab-plot, som plottar frekvenssvaret (men inte med dB på y -skala):
f = 0:100000; R = 33e3; C = 220e-12; w = 2*pi*f; H_w = 1./(R.*C.*j.*w+1); xaxis = 0:100000; figure; semilogx(xaxis,abs(H_w));
Kommentarer
- Jag don ' vet inte matlab, men en bode-plot är på en logg-loggskala. Logg över amplitudsvaret mot logg för frekvensen.
Svar
Ring tf
med vektorer för koefficienterna för täljaren och nämnaren (eller härstammar från högsta kraft till lägsta):
H = tf([1],[RC 1]);
där RC
är din \ $ RC \ $ tidskonstant.
Ring sedan bode(H)
.
Se Matlab-dokumentation (särskilt exemplen).
Kommentarer
- Detta fungerar om du har verktygslådan för signaler. Det ' är mer av en uppgift om du inte gör det.