matlab在电路分析中的应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
M A T L A B在电路分析中的应用(总
10页)
--本页仅作为文档封面,使用时请直接删除即可--
--内页可以根据需求调整合适字体及大小--
《MATLAB语言》课程论文
MATLAB 在电路分析中的应用
姓名:李娜
学号:
专业:2010级通信工程
班级:(1)班
指导老师:汤全武
学院:物理电气信息学院
完成日期:
MATLAB 在电路分析中的应用
(李娜 2010级通信1班)
[ 摘要] 本文将Matlab软件的模拟功能用于电路分析研究,以基本电路理论中典型的直流电阻电路和含有复数运算的正弦稳态电路的计算为例,详述了如何分别运用MATLAB语言编程的方法来对电路进行仿真分析和计算。
结论表明,应用这两种方法可以是复杂电路的分析和计算变得非常快捷·方便,从而为电路分析提供了一个有效的辅助工具。
[ 关键词] MATLAB; 电路分析;模拟;正弦稳态;向量图
一、问题的提出
MATLAB 语言结构紧凑·语句精炼,指令表达式和数字表达式非常接近,仅需几条简单的语句,就可以完成一大串其他高级语言才能完成的任务,可大大节省编程时间,提高计算效率。
基本电路是电类专业非常重要的专业基本课,不仅为后继课程提供了深厚的理论基础,也为电路的分析计算提供了各种方法。
其中,在电路分析理论中一般将关于时间的微分方程转化为复数方程求解,在一些电路比较复杂的·方程数量多的情况下,都可以运用MATLAB程序来解决。
运用该程序不仅可以节约时间,还可以非常方便的调试电路参数,直观的观察电路中的电流·电压和功率波形。
二、应用
1 典型直流电阻电路的分析计算
图1所示为典型的直流电阻电路,含有电压控制的受控电流源VCCS,其
中,R1=1Ω,R2=2Ω,R3=3Ω,Us=10v,Is=15A,VCCS=,现需分析计算电流i
1和电压u2
图1 典型直流电阻电路
基本电路分析的基本方法实现建立数学模型,一般是电路方程组。
然后通过求解方程组,得到各支路电压和电流。
对图1应用回路电流法,可列出如下方程组:
R11I m1+R12Im2+R13I m3=U s11
R21I m1+R22I m2+R23I m3=U s22
R31I m1+R32I m2+R33I m3=U s33
其中,R11=R1+R2,R22=R1+R3,
R33=R2+R3,R12=R21=-R1,R13=R31=-R2,R23=R32=-R3,
U S11=Us,U s22=U1,U s33=-U3
而I1=I m1-I m2,I m2=I s=15,I m3=,U2=R2(I m1-I m3)
整理以上方程,并写出形如AX=BU的矩阵方程形式,可得
R11 R13 0 0 I m1 1 -R12
R 21 R 23 -1 0 I m3 = 0 -R 22 U S (1) R 31 R 32 0 1 U 1 0 -R 32 I S
0 0 U 3 0 0
MATLA 语言编程法
应用MATLAB 语言编程如下: CLEAR;
US=10;IS=15;R1=1;R2=2;R3=3; % 为给定元件赋值
R11=R1+R2;R12=-R1;R21=-R1;R13=-R2;R31=-R2; % 为系数矩阵各元素赋值
R22=R1+R3;R23=-R3;R32=-R3;R33=R2+R3;
A=[R11 R13 0 0;R21 R23 -1 0;R31 R33 0 1;*R2 *R2 0 0]; % 列出系数矩阵A B=[1 -R12;0 -R22;0 -R23;0 0];USS=[US;IS]; % 列出系数矩阵B X=A\B*USS; % 解出X
I1=X(1)-IS % 显示要求的分量I1和U2 U2=2*(X(1)-X(2)) 程序运行结果 I1= , U2=20
2 典型的正弦稳态电路的分析与计算 图2所示为典型的正弦稳态电路,其中
,
1000
,10001,4.01,22,11,15.0,4510s
rad
F C m L R R VCCS S ==H =Ω=Ω==︒-∠=•
•ωμ 现需分析该含源一端口在b-o 端口间戴维南等效电路
图2 典型的正弦稳态电路
图3 在b-o端口间外加电流源后的电路首先建立数学模型。
我们在原含源一端口电路的b-o端子间外加一个正弦电流源,如图3所示。
对图3应用结点电压法,并以o点为参考结点,则有如下
方
程组:
Y11úao+Y21úbo=ús11
Y12úao+Y22úbo=ús22
其中,
整理以上方程,并转换成形如AX=BU的矩阵方程形式为:
MATLAB 语言编程法实现电路的分析计算
根据式(2),我们设想,若令íb=0,代入ús=10∠-45︒, 则可求得戴维南等效电源电压úOC,它就等于此时的úbo;然后再令ús=0,将原电路(图2)变成一个无源一端口,并设íb=1∠0︒,代入式(2)即可求得戴维南等效阻抗,即
据此,可设计MATLAB程序。
应用MATLAB 语言编程如下:
clear;
R1=1;R2=2;L1=4e-4;C1=1e-3;US=5*sqrt(2)-j*5*sqrt(2); % 为给定元件赋值W=1000; ZR1=1;ZR2=2;ZL1=j*W*L1;ZC1=1/(j*W*C1);
Y11=1/(ZR1+ZC1)+1/ZL1+1/ZR2;Y22=1/ZR2; % 为系数矩阵各元素赋值Y12=-1/ZR2;Y21=-1/ZR2;
A=[Y11 Y21; Y22];B=[1/(ZR1+ZC1) 0;0 1]; % 列出各系数矩阵
X0=A\B*[US;0]; % 戴维南等效电源电压UOC等于b=0, s=2 0 时的U bo,是一个复数UOC=X0(2),
uoc=abs(UOC),uang=angle(UOC) % 求戴维南等效电源电压的模和辐角 X1=A\B*[0;1]; % 再令 s =0,并设 b =1 0 ,求戴维南等效阻抗Ze Zeq =X1(2)
ze=abs(Zeq),zang=angle(Zeq) % 求戴维南等效阻抗Zeq 的模和辐角 程序运行结果
UOC = + uoc = uang = Zeq = + ze = zang = 3 向量与电路
图4 电路图
电路如图4所示,其中的
,
08,012,8.03,1.02,21,13,32,4121︒∨∠=︒∨∠=Ω-=-Ω-=-Ω=Ω=Ω=Ω=U U S S jx jx jx R R R 求各支路电流并画向量图。
这是一个交流稳态电路,对二个独立结点列结点电压方程:
Y 11U 1 +Y 12U 2 =I S1
Y21U1 +Y22U2 =I S2
其中:Y11=G2+G3;Y12=-(G2+G3+G5)
Y21=G1+G2+G3+G4;Y22=-(G2+G3)
I S1=G5U S2;I S2=G1U S1
G1=1/R1;G2=1/(R2-jx2);G3=1/-jx3;
G4=1/jx4;G5=1/R3.
用Matlab语言编程实现上述计算,程序如下:
R1=4;R2=3;R3=1;X1=2;X2=;X3=;US1=12;US2=8; %输入初始参数G1=1/R1;G2=1/(R2一j*X2);
G3=1/-j*X3;G4=1/j*X1;G5=I/R3;
Y11=G2+G3;Y12=-(G2+G3+G5);
Y21=G1+G2+G3+G4;Y22=-(G2+G3);
IS1=G5*US2;IS2=G1*US1 %计算线性方程组系数矩阵中以上各元素的值
A=[Y11,Y12;Y21,Y22]
B=[Is1;Is2] %组成方程组A、B
U=A\B %解结点电压
I1=G1*(U(1)一US1) %求支路电流I1
I2=G2*(U(1)一U(2)) %求支路电流I2
I3= G3*(U (1)一lJ(2)) %求支路电流I3
I4=G4*U(1) %求支路电流I4
I5=G5*(U(2)一US2) %求支路电流I5
程序运行结果为:
I1=+
I2= +
I3=
I4=
I5=
三、MATLAB应用在电路稳态分析
1 直流稳态分析实例
在图5所示电路中,
4
,
2
2
,
1
4
3
1
,
16=
Ω
=
Ω
=
=
=
∨
=K
R
R
R
R
U S,
求U10 .
图5 直流稳态分析用的实例求解此题的方程组为
对应的M 文件为
A=[7 -2 0;-3 2 0;1 0 1]; % 定义方程组的系数矩阵A
B=[16 0 16]; % 定义右端矩阵B
C=A\B % 求解未知变量矩阵C
C=
% 此为U 10 值
2 交流稳态分析
在图6所示的电路中,
.
1,100sin 2,100sin 10,629,614,11,18,16327=A =∨=-=-=H ==Ω==g t t F e C F e C L S G R R I U S S 用2b 法求各支路的变量(本例中只比较R 6 上的电压)。
图6 交流稳态分析的实例
与图6对应的2b 方程的矩阵形式为
矩阵方程中各子阵的列可写成下面给出其M文件:
A=[-1 0 0 0 0 1 0 0 0;-1 1 0 0 0 1 0 0;0 1 0 0 0 -1 0 1 1;0 0 0 1 0 0 -1 0 0;0 0 0 0 -1 0 0 0 -1] %输入矩阵A
B=[1 1 0 0 0 1 0 0 0;0 0 1 -1 0 0 -1 0 0;0 -1 -1 0 0 0 0 1 0; 0 0 0 0 -1 0 0 -1
1] %输入矩阵B
C=[-1 0 -1 j*1E -4 0 -1 1 1 j*2E -4]; %输入矩阵C
Y e=diag(C)
Y e(5,6)=-1 %产生零矩阵为-1
D=[j*1 0 0 1 1 -1 1 1 0 -1 -1];
Ze=diag(D)
Us=[0 0 0 0 0 0 1 0+j*0 0 0] ; % 输入电压Us
Is=[0 -2+j*0 0 0 0 0 0 0 0] ; %输入电流Is
E=zeros(5,9) %产生零矩阵E
F=zeros(4,9) %产生零矩阵F
G=[0 0 0 0 0]' %输入矩阵G
H=[0 0 0 0]' %输入矩阵 H
W=[E A;B F;Ye Ze] %输入矩阵W
N=[G;H;Us+Is] %输入矩阵N
Xn=W\N %求解支路电压
第6条支路的电压向量为+002*+;
计算其峰值为:。
3 MATLAB应用在电路暂态分析
图7所示的电路中,开关s闭合前已达稳定状态。
已知:
()(),5
Ω
=
=
=t e
=
L
C
R
F
∨
e
t
H
,
1.0
1
=
,
,
10
1∨
1
1.0
,
1
求开关s在时间t=0瞬时闭合后,电感支路上的电流i L(t).
图7 暂态分析所用的电路
此题求解的二阶微分方程如下:
对应的M文件为
Desolve('D2y+10*Dy+10*y=1000','Dy(0)=100','Y(0)=0')
Ans=*exp*t)+*exp*t)
其解为
i L(t)=
由此例看出,用MATLAB自身提供的数值微分函数dsolve求解微分方程简便快捷,大大节省了编程时间,采用同一算法的Fortran语言和C语言程序却多达百条.
四、结论
本文通过基本电路理论中的典型题目介绍了如何应用MATLAB语言编程的方法来对复杂的电路进行分析和计算。
该方法不仅可以节约计算时间,方便的调试电路参数,而且还可以非常直观地观察和测量电路中的电压,电流功率等物理量。
结论表明,MATLAB提供了高效简洁的编程方法,其强大而简洁的绘图功能,矩阵和数组的运算能力以及很强的扩充性,能充分满足基本电路分析,计算的需要,从而可以大大的提高计算精度和工作效率,在电路理论学科研究与工程实践中具有很好的应用价值。
五、课程体会
经过一学期紧张而有序的课程学习,在忙碌之余也得到了颇多的体会。
我深深体会到MATLAB语局简练,功能强大,简单实用,用途广泛,不仅可以大大的提高操作效率,缩短编程时间,是一种简单实用的工具,而且还可以应用于其他学科领域,此次在电路分析中,它有效又简洁地解决了许多的复杂电路问题,给我带来了许多的方便。
正是由于我的任课老师汤全武老师的精彩授课和认真的讲解,使我学到了更多的MATLAB语言的知识,并且更好的应用于生活学习中……非常感谢汤老师这一学期的教育,愿MATLAB语言有着更广泛的应用前景……
[参考文献]:
[1] 邱关源.电路(第三版)[M].北京:高等教育出版社,1989
[2] 王炳武.MATLAB5.3实用教程[M].北京:中国水利水电出版社,2000
[3]李瀚荪.电路分析基础[M].北京:高等教育出版社,1986
[4] 邱关源.电路[M].北京:高等教育出版社,1990
[5] 童诗自等.模拟电子技术基础简明教程[M]、北京:高等教育出版社,1985
[6]陈洪亮,王蔼. 基本电路理论 .上海科学技术文献出版社 . 2002
[7] MATLAB User’s Guide. The Mathworks Inc. 2000
[8]陈怀琛,吴大正,高西全. MATLAB及在电子信息课程中的应用.北京:电子工业出版社.2002. .。