Jeg har beregnet en overføringsfunktion til et specifikt system (et lavpasfilter):
$$ H (j \ omega) = \ frac {1} {RCj \ omega +1} $$
Det forekommer mig, at den normale måde at plotte frekvensresponset på filteret er at bruge et Bode-plot. Derfor vil jeg vide, hvordan man gør det i Matlab.
Der er en funktion bodeplot i Matlab, som f.eks. Tager et argument beregnet med tf
, som igen tager en tæller og nævner.
Jeg forstår faktisk ikke, hvordan jeg skal bruge disse funktioner med min allerede beregnede formel ovenfor. Har jeg allerede beregnet en del, der kunne gøres med de ovennævnte Matlab-funktioner?
Så hvordan laver jeg et Bode-plot fra min overføringsfunktion i Matlab?
Her er mit nuværende Matlab-plot, som plotter frekvensresponset (men ikke 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
- Jeg don ' t kender matlab, men et bode-plot er på en log-log-skala. Log over amplituderespons vs log for frekvensen.
Svar
Ring tf
med vektorer af koefficienterne til tælleren og nævneren (eller dered fra højeste effekt til laveste):
H = tf([1],[RC 1]);
hvor RC
er din \ $ RC \ $ tidskonstant.
Ring derefter til bode(H)
.
Se Matlab-dokumentation (især eksemplerne).
Kommentarer
- Dette fungerer, hvis du har signalværktøjskassen. Det ' er mere af en opgave, hvis du ikke gør det.