1使用Matlab研究RLC电路电子信息和电气工程学院F07030245070309663曹龙飞Email:mathsniper@gmail.com摘要:此论文主要是结合Matlab功能分析RLC电路特性。关键字:Matlab,RLC。1使用Matlab分析使用Matlab分析ParallelRLC电路的目的在於测试不同的电阻R值对电路各变量值的影响情况。设有如下图:圖表1-1得出齐次二阶微分方程:22()1()1()0dvtdvtvtdtRCdtLC++=(1.1)因应R值不同,得出的解也会相应不同,分别有过阻尼(overdamped),临界阻尼(criticallydamped),欠阻尼(underdamped)和无阻尼(non-damped)四种情况。为了分析方便,以欠阻尼的情况分析:假设电感和电容值分别为L=0.1H和C=1mF,初始值为v(0)=10V和i_L(0)=-0.6A,而当电路参数满足12LRC(1.2)即电路是欠阻尼的情况。计算上式预设值,有1/2*sqrt(L/C)=5(Ohms)。由此可知,当电阻值大於5Ohms时,为欠阻尼,当等於5Ohms时,为临界阻尼。以下会在给定不同的电阻R值而得出v(t)-t图。由基本的二阶ParallelRLC电路有指数因子12RCα=(1.3)和响应角频率201LCω=(1.4)并记阻尼响应角频率220ωωα=−(1.5)跟据以上给定值和因子,分别对R=5,20,50,100(Ohms)用Matlab画出对应的v(t)-t图。以下为跟据需求的Mfile(ForMatlabusing)。2RLC_simple.mfile%--------------------------------------------------------------%Setcomponentvalues%--------------------------------------------------------------L=0.1;C=0.001;R=5;%--------------------------------------------------------------%Solveforthedampingcoefficient,naturalfrequency,and%dampedresonancefrequency%--------------------------------------------------------------a=1/(2*R*C);w0=1/sqrt(L*C);w=sqrt(w0*w0-a*a);%--------------------------------------------------------------%Setcoefficientsbasedoninitialconditions%--------------------------------------------------------------B1=10;B2=(a/w)*B1-10/(w*R*C)+0.6/(w*C);%--------------------------------------------------------------%Createatimebaseandcalculatetheresponseatthosetimes%--------------------------------------------------------------t=0:0.001:0.12;v=B1*exp(-a*t).*cos(w*t)+B2*exp(-a*t).*sin(w*t);holdoffplot(1000*t,v,'b+-')holdon%--------------------------------------------------------------%R=20,50,100(Ohms)3%--------------------------------------------------------------R=20;a=1/(2*R*C);w=sqrt(w0*w0-a*a);B2=(a/w)*B1-10/(w*R*C)+0.6/(w*C);v=B1*exp(-a*t).*cos(w*t)+B2*exp(-a*t).*sin(w*t);plot(1000*t,v,'mo-');R=50;a=1/(2*R*C);w=sqrt(w0*w0-a*a);B2=(a/w)*B1-10/(w*R*C)+0.6/(w*C);v=B1*exp(-a*t).*cos(w*t)+B2*exp(-a*t).*sin(w*t);plot(1000*t,v,'kx-');R=100;a=1/(2*R*C);w=sqrt(w0*w0-a*a);B2=(a/w)*B1-10/(w*R*C)+0.6/(w*C);v=B1*exp(-a*t).*cos(w*t)+B2*exp(-a*t).*sin(w*t);plot(1000*t,v,'rd-');%--------------------------------------------------------------%Finally,addsomeinformationtothegraphtomakeit%clearerandexplaintheaxes%--------------------------------------------------------------legend('R=25/3','R=20','R=50','R=100')ylabel('v_n(t),V');xlabel('t,ms');title('NaturalResponseofanUnderdampedParallelRLCCircuit');43运行结果圖表3-14代码分析第一部分,是设定电容,电感的初始值,并第一个电阻值取为5。第二部分就是设定指数因子(方程1.3),响应角频率(方程1.4)和阻尼响应角频率(方程1.5)。第三部分为设置方程解系数B1和B2值。其中12110100.6BBBRCCαωωω==−+(1.6)B2中最後一项0.6是电感电流的初始值。第四部分是取T从0到0.12,间隔为0.001,画出v(t)-t图。画中分别画出R=5,20,50和和100时的曲线。最後一部就是设置Title,X,Y轴的Label名称。程序所在问题到目前为止,我们只能对己知的数学方程,用数学方法自行解出相应的数学表达5式,相跟据表达式对参数进行更改,画出相应的关系图像。5RLC二阶微分方程对於RLC串联电路,可以以下线性二阶微分方程描述22CCCSduduuuRdtLdtLCLC++=(1.7)初始值为000()(0)(0),|CLCtdutIiuUdtCC−−−====(1.8)只要再求出电感值,电容值和电阻值,则可以使用Matlab来出RLC二阶微分方程表达式。6Matlab求解RLC二阶微分方程(RLC_dsolve.m)symsA1A2A3RLCusu0Du0;R=10;L=0.01;C=10e-6;us=10;u0=1;Du0=0;A1=R/L;A2=1/(L*C);A3=us/(L*C);eqn='D2x+A1*Dx+A2*x=A3';sol=simple(dsolve(eqn,'x(0)=u0,Dx(0)=Du0'))subs(sol,{'A1','A2','A3','u0','Du0'},{A1,A2,A3,u0,Du0})7运行结果RLC_dsolvesol=1/2*exp((-1/2*A1+1/2*(A1^2-4*A2)^(1/2))*t)/(A1^2-4*A2)^(1/2)*(2*D(u0)*A2+A1*u0*A2-A1*A3+(A1^2-4*A2)^(1/2)*u0*A2-(A1^2-4*A2)^(1/2)*A3)/A2-1/2*exp((-1/2*A1-1/2*(A1^2-4*A2)^(1/2))*t)*(A1*u0*A2-A1*A3-(A1^2-4*A2)^(1/2)*u0*A2+2*D(u0)*A2+(A1^2-4*A2)^(1/2)*A3)/(A1^2-4*A2)^(1/2)/A2+1/A2*A3ans=-1/780000000000000*exp((-500+1/2*(-39000000)^(1/2))*t)*(-39000000)^(1/2)*(-90000000000-90000000*(-39000000)^(1/2))+1/780000000000000*exp((-500-1/2*(-39000000)^(1/2))*t)*(-90000000000+90000000*(-39000000)^(1/2))*(-39000000)^(1/2)+106圖表7-18程序分析第一行就是定义变量空间。第二至四行为变量初始化。第五行是解RLC二阶微方程,设置好初始值。并进行化简。subs指令是用来取化得出方程中变量的值。关於以上指令用法,可以在MATLAB中用HELP指令查找相关指令。9总结MATLAB工具是在我大一时学习数学分析时学懂的,当时正好学习常微分方程。而MATLAB在解方程功能十分强大,所以特此用MATLAB求解RLC电路微分程方法来分析所学的知识。希望通过此论文能让读者学会使用MATLAB来求解各种数学问题。10参考文献[1]张峰吴月梅李丹《电路实验教程》北京:高等教育出版社2008[2]陈洪亮张峰田社平《电路基础》北京:高等教育出版社2007