Często używam MATLABA do analizy obwodów. Czasami wolę przyprawy, innym razem przyprawy zależą od mojego nastroju i wymagań.
Oto następujące kroki:
- 1: weź transformatę Laplace'a w obwodzie
- 2: uzyskaj funkcję przesyłania
- 3: wykreśl / analizuj za pomocą funkcji MATLAB. wróży, impuls, częstotliwość i tak dalej.
Najtrudniejsze, co znalazłem, to wziąć transformatę Laplace'a i wyprowadzić równanie funkcji przenoszenia.
Istnieje wiele przykładów i podręczników dotyczących korzystania z Laplace'a w Internecie. Krótko mówiąc, celem jest uzyskanie równania w postaci
H(s)=as2+bs+cds2+es+f
gdzie do c jest licznikiem id od f do mianownika w przykładzie przedstawionym poniżej.acdf
Aby to zrobić, zamień wszystkie elementy pasywne na złożone impedancje. To jest
Następnie wyprowadź równanie dla swojego obwodu w postaci Vout / Vin.
Dla prostego filtra dolnoprzepustowego w postaci:
Vin -------R-------------- Vout
|
C
|
------------------------------
to dałoby:
V.o U TV.i n= s C.R + s C.
Napisz powyższe równanie w postaci num i den dla MATLAB:
num = [C 0];
den = [C R];
Następnie skorzystaj z dowolnej funkcji matlab, którą chcesz przeanalizować funkcję przenoszenia (bode), schemat bieguna zerowego itd.
Poniżej znajduje się przykład filtra, z którym ostatnio bawiłem się i próbowałem dostroić wartości:
R1 = 20e3;
C1 = 235e-9;
R2 = 2e3;
C2 = 22e-9;
num = [2*R2*C1 0];
den = [C1*R1*C2*R2*2 (2*C1*R1 + C2*2*R2) 2];
g = tf(num,den);
P = bodeoptions; % Set phase visiblity to off and frequency units to Hz in options
P.FreqUnits = 'Hz'; % Create plot with the options specified by P
bode(g,P);
%[num,den] = eqtflength(num,den); % Make lengths equal
%[z,p,k] = tf2zp(num,den) % Obtain zero-pole-gain form