簡體   English   中英

轉賬function一直空着

[英]Transfer function keeps coming up as empty

運放

clear all
close all
clc
format short eng

R1=100;
R2=100;
R3=500;
R4=100;
R5=50;

C1=1e-6;
C2=1e-6;
C3=2e-6;

syms s Vin Va Vb Vc Vd Ve Vf C1 C2 C3 R1 R2 R3 R4 R5 Vout

Zc1=1/(s*C1);
Zc2=1/(s*C2);
Zc3=1/(s*C3);

e(1)=Vin==Va; %KVL Op Amp
e(2)=Ve==Vf;
e(4)=((Va-Vb)/Zc1)-((Vb-Vd)/Zc2)-(Vb/R5)==0; % KCL Node B
e(5)=((Va-Vc)/R1)-((Vc-Vd)/R2)-((Vc-Ve)/Zc3)==0; %KCL Node C
e(6)=((Vb-Vd)/Zc2)-((Vc-Vd)/R2)==0; %KCL Node D
e(7)=((Vc-Ve)/Zc3)-((Ve-Vf)/R3)==0; %KCL Node E
e(8)=((Ve-Vf)/R3)-(Vf/R4)==0; %KCL Node F

sol=solve(e,Va,Vb,Vc,Vd,Ve,Vf,Vout); %Sol
Vout=sol.Vf/R5+R4;
Vout=eval(sol.Vout)
H=Vout/Vin % Gain is output over input

當你已經有了它們的值時,你不能將電阻器R1 R2 R3 R4 R5定義為符號,它們會被覆蓋。 與電容器C2 C3相同,並為Vin提供一些值以獲得 Vout 的值。 另外,不要將方程式作為變量的向量, Vout不是變量。 只需單獨編寫方程式並保留變量 MATLAB 自動確定。 最后檢查公式Vout = Vf/R5 + R4 ,是否准確?

clear, clc

R1 = 100;  R2 = 100;  R3 = 500; R4 = 100; R5 = 50;
C1 = 1e-6; C2 = 1e-6; C3 = 2e-6;

Vin = 5;  % Give it some value to get Vout
syms s Va Vb Vc Vd Ve Vf

Zc1=1/(s*C1);
Zc2=1/(s*C2);
Zc3=1/(s*C3);

e1 = Vin == Va; % KVL Op Amp
e2 = Ve == Vf;
e4 = (Va-Vb)/Zc1 - (Vb-Vd)/Zc2 - Vb/R5       == 0; % KCL Node B
e5 = (Va-Vc)/R1  - (Vc-Vd)/R2  - (Vc-Ve)/Zc3 == 0; % KCL Node C
e6 = (Vb-Vd)/Zc2 - (Vc-Vd)/R2 == 0; % KCL Node D
e7 = (Vc-Ve)/Zc3 - (Ve-Vf)/R3 == 0; % KCL Node E
e8 = (Ve-Vf)/R3  - Vf/R4      == 0; % KCL Node F

sol = solve(e1,e2,e4,e5,e6,e7,e8); %Sol
Vout = sol.Vf/R5 + R4;
H = Vout/Vin % Gain is output over input

Output:

H =
 20
 20
 20

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM