Matlab正弦稳态电路的分析正弦稳态电路.docx
《Matlab正弦稳态电路的分析正弦稳态电路.docx》由会员分享,可在线阅读,更多相关《Matlab正弦稳态电路的分析正弦稳态电路.docx(16页珍藏版)》请在冰豆网上搜索。
![Matlab正弦稳态电路的分析正弦稳态电路.docx](https://file1.bdocx.com/fileroot1/2023-4/21/e4a99870-c16c-4a3b-9ca5-5ff8691bc183/e4a99870-c16c-4a3b-9ca5-5ff8691bc1831.gif)
Matlab正弦稳态电路的分析正弦稳态电路
开放实验室项目研究论文
题目:
Matlab正弦稳态电路的分析正弦稳态电路
学院:
物理与电子技术学院
专业:
电子信息工程
班级序号:
学号:
学生姓名:
指导教师:
2011年12月
基于MATLAB的RLC电路结点电压法的仿真分析正弦稳态电路
摘要:
正弦稳态电路的分析计算是大家普遍反映难以理解的内容,尤其是在电路比较复杂的情况下更是如此。
本文在简要介绍了Matlab软件的基础上,提出了利用Matlab来进行电路分析的方法,且重点研究了用Matlab分析正弦稳态电路。
Matlab具有强大的数值运算供能以及强大的绘图功能,在以利用matlab进行电路分析时,可以精确的得到电路的各个参数。
且通过作图,我们可以很直观的观看的信号的相位关系。
本文对R,L,C串联电路和R,L,C串联电路为例,用Matlab绘出表现其正弦稳态特想的时域波图,向量图。
与一般分析方法比较,可以看出用Matlab分析正弦稳态电路具有简便、直观的优点。
关键字:
Matlab;正弦稳态;向量图;电路分析方法
Abstract:
Sinesteady-stateanalysisandcalculationofthecircuitiscommonreflectionisdifficulttounderstandthecontent,especiallyinthecircuitismorecomplexsituationisevenmoreso.ThispaperbrieflyintroducestheMatlabsoftwarewasputforwardbasedonMatlabtocircuitanalysismethod,andmainlystudiedMatlabanalysissinesteady-statecircuit.Matlabhasstrongnumericspoweringandstrongdrawingfunction,byuseofMatlabforcircuitanalysis,canaccurategetcircuitvariousparameters.Andthroughtheplot,wecanquiteintuitivewatchsignalthephaserelationship.ThispaperR,L,CseriescircuitandR,L,Cseriescircuitforexample,byusingMatlabdrawexpresseditssinusoidalsteadyespeciallywanttotemporaloporto,vectordiagram.Comparedwiththegeneralanalysismethod,itcanbeseenthattheMatlabanalysissinusoidalsteadycircuitissimple,intuitiveadvantages.
Keywords:
Matlab;SinusoidalSteadyState;VectorDiagram;CircuitAnalysis
绪论:
随着电子计算机及其相关技术的发展,计算机辅助设计技术正作为一门崭新的技术在世界范围内蓬勃兴起。
CAD技术的发展与应用引发了一场设计的革命,它不仅深刻地改变着产品设计的传统方式,而且还直接影响到企业生产的管理模式和商业对策,给企业和社会带来了巨大的经济效益。
由于专用的分析软件存在着成本、人们熟悉程度和软件本身局限性等方面的缺点,以及MATLAB对矩阵和数值运算的高效性,我们便想到了利用MATLAB来实现各种电路的分析。
基于MATLAB的电路分析技术一方面考虑以通用软件来完成专用软件的功能,解决以通用软件MATLAB为平台,实现对模拟线路(线性、非线性)、数字电路以及对数模混合电路等进行分析。
另一方面,目前MATLAB虽含有众多的工具箱,但还没有涉及到专门应用于电路分析的工具箱,此项技术的实现可以对MATLAB工具箱进行一个有力的扩充,使MATLAB的功能更为强大。
本课程设计中用matlab软件对线性电路正弦稳态特性分析,通过操作和学习对各方面的能力都有很大的提高。
1MATLAB介绍
1.1MATLAB的概况
MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。
它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算件的先进水平。
MATLAB和Mathematica、Maple并称为三大数学软件。
它在数学类科技应用软件中在数值计算方面首屈一指。
MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连
接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。
在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。
可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。
应用
MATLAB产品族可以用来进行以下各种工作:
●数值分析
●数值和符号计算
●工程与科学绘图
●控制系统的设计与仿真
●数字图像处理技术
●数字信号处理技术
●通讯系统设计与仿真
●财务与金融工程
MATLAB的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。
附加的工具箱(单独提供的专用MATLAB函数集)扩展了MATLAB环境,以解决这些应用领域内特定类型的问题。
特点
1)高效的数值计算及符号计算功能,能使用户从繁杂的数学运算分析中解脱出来;
2)具有完备的图形处理功能,实现计算结果和编程的可视化;
3)友好的用户界面及接近数学表达式的自然化语言,使学者易于学习和掌握;
4)功能丰富的应用工具箱(如信号处理工具箱、通信工具箱等),为用户提供了大量方便实用的处理工具。
1.2优势
1.2.1友好的工作平台和编程环境
MATLAB由一系列工具组成。
这些工具方便用户使用MATLAB的函数和文件,其中许多工具采用的是图形用户界面。
包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。
随着MATLAB的商业化以及软件本身的不断升级,MATLAB的用户界面也越来越精致,更加接近Windows的标准界面,人机交互性更强,操作更简单。
而且新版本的MATLAB提供了完整的联机查询、帮助系统,极大的方便了用户的使用。
简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运行,而且能够及时地报告出现的错误及进行出错原因分析。
1.2.2简单易用的程序语言
Matlab是一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。
用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。
新版本的MATLAB语言是基于最为流行的C++语言基础上的,因此语法特征与C++语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式。
使之更利于非计算机专业的科技人员使用。
而且这种语言可移植性好、可拓展性极强,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。
1.2.3强大的科学计算机数据处理能力
MATLAB是一个包含大量计算算法的集合。
其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。
函数中所使用的算法都是科研和工程计算中的最新研究成果,而前经过了各种优化和容错处理。
在通常情况下,可以用它来代替底层编程语言,如C和C++。
在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。
MATLAB的这些函数集包括从最简单最基本的函数到诸如矩阵,特征向量、快速傅立叶变换的复杂函数。
函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程的组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。
1.2.4出色的图形处理功能
MATLAB自产生之日起就具有方便的数据可视化功能,以将向量和矩阵用图形表现出来,并且可以对图形进行标注和打印。
高层次的作图包括二维和三维的可视化、图象处理、动画和表达式作图。
可用于科学计算和工程绘图。
新版本的MATLAB对整个图形处理功能作了很大的改进和完善,使它不仅在一般数据可视化软件都具有的功能(例如二维曲线和三维曲面的绘制和处理等)方面更加完善,而且对于一些其他软件所没有的功能(例如图形的光照处理、色度处理以及四维数据的表现等),MATLAB同样表现了出色的处理能力。
同时对一些特殊的可视化要求,例如图形对话等,MATLAB也有相应的功能函数,保证了用户不同层次的要求。
另外新版本的MATLAB还着重在图形用户界面(GUI)的制作上作了很大的改善,对这方面有特殊要求的用户也可以得到满足。
1.2.5应用广泛的模块集合工具箱
MATLAB对许多专门的领域都开发了功能强大的模块集和工具箱。
一般来说,它们都是由特定领域的专家开发的,用户可以直接使用工具箱学习、应用和评估不同的方法而不需要自己编写代码。
目前,MATLAB已经把工具箱延伸到了科学研究和工程应用的诸多领域,诸如数据采集、数据库接口、概率统计、样条拟合、优化算法、偏微分方程求解、神经网络、小波分析、信号处理、图像处理、系统辨识、控制系统设计、LMI控制、鲁棒控制、模型预测、模糊逻辑、金融分析、地图工具、非线性控制设计、实时快速原型及半物理仿真、嵌入式系统开发、定点仿真、DSP与通讯、电力系统仿真等,都在工具箱(Toolbox)家族中有了自己的一席之地。
1.2.6实用的程序接口和发布平台
新版本的MATLAB可以利用MATLAB编译器和C/C++数学库和图形库,将自己的MATLAB程序自动转换为独立于MATLAB运行的C和C++代码。
允许用户编写可以和MATLAB进行交互的C或C++语言程序。
另外,MATLAB网页服务程序还容许在Web应用中使用自己的MATLAB数学和图形程序。
MATLAB的一个重要特色就是具有一套程序扩展系统和一组称之为工具箱的特殊应用子程序。
工具箱是MATLAB函数的子程序库,每一个工具箱都是为某一类学科专业和应用而定制的,主要包括信号处理、控制系统、神经网络、模糊逻辑、小波分析和系统仿真等方面的应用。
1.2.7应用软件开发(包括用户界面)
在开发环境中,使用户更方便地控制多个文件和图形窗口;在编程方面支持了函数嵌套,有条件中断等;在图形化方面,有了更强大的图形标注和处理功能,包括对性对起连接注释等;在输入输出方面,可以直接向Excel和HDF5进行连接。
1.3MATLAB常用函数
2流程图
在Matlab中,分析电路按以下流程图进行:
编写变量所满足的关系式
绘制相关图形
结束
设定时间的范围与分度
定义函数和常量
分析电路
图.一
3正弦稳态电路分析
3.1电路图
3.2采用节点电压法求解
从图中列方程得:
I1=(-US-U3)/R1
I2=(-US-U2)/(R2+jXL)
I3=-U2/R3
I4=(U2-U3)/R4
I5=-I1-I2
I6=-U3/(-jXC)
U=Y\I
其中:
Y22=1/(R2+jXL)+1/R3+1/R4
Y23=-1/R4
Y32=Y23
Y33=1/R1+1/R4-1/(jXC)
IS22=-US*(R2+jXL)
IS33=IS-US/R1
3.3用Matlab语言编程实现上述计算
R1=3;R2=1;R3=1;R4=1;w=4;L=4;C=3;XL=w*L;XC=1/(w*C);US=10;
IS=cos(pi/4)+i*sin(pi/4);Y22=1/(R2+i*XL)+1/R3+1/R4;Y23=-1/R4;Y32=Y23;
Y33=1/R1+1/R4-1/(i*XC);
IS22=-US*(R2+i*XL);
IS33=IS-US/R1;
Y=[Y22,Y23;Y32,Y33];
I=[IS22;IS33];
U=Y\I;
U2=U
(1);U3=U
(2);
I1=(-US-U3)/R1
I2=(-US-U2)/(R2+i*XL)
I3=-U2/R3
I4=(U2-U3)/R4
I5=-I1-I2
I6=-U3/(-i*XC)
3.4电流向量图和波形图绘制
在以上程序中加上下面一条语句画出电流的向量图
compass([i1,i2,i3,i4,i5,i6]);
上面的程序中加上下面的一段程序,画出电流的波形
x=[real(i1),real(i2),real(i3),real(i4),real(i5),real(i6)];
y=[imag(i1),imag(i2),imag(i3),imag(i4),imag(i5),imag(i6)];
[rdirstrength]=cart2pol(x,y);
direction=rdir*180/pi
r=strength*sqrt
(2)
t=0:
pi/10000:
3.5;
i1=r
(1)*sin(w*t+rdir
(1));
i2=r
(2)*sin(w*t+rdir
(2));
i3=r(3)*sin(w*t+rdir(3));
i4=r(4)*sin(w*t+rdir(4));
i5=r(5)*sin(w*t+rdir(5));
i6=r(6)*sin(w*t+rdir(6));
figure;
plot(t,i1,t,i2,t,i3,t,i4,t,i5,t,i6);
从电流的向量图和波形图中,都可以直观的看出6条支路电流之间的大小和相位关系,节省了画图的时间,这是Matlab的又一大优点。
3.5仿真模型的建立及结果
表3-1simulink模型
3.6进行仿真
在电路中安放电流表,测出各个支路的电流,并用示波器进行显示
表3-2I1支路电流
表3-2I2支路电流
表3-3I3支路电流
表3-4I4支路电流
表3-5I5支路电流
表3-6I6支路电流
4分析与结论
通过观察示波器中输出的波形,确认了与.m所编写的程序的数值是一样的
并且这个可以看到波形,更加的直观.
5设计心得
在做实验前,一定要将课本上的知识吃透,因为这是做实验的基础,否则,在老师讲解时就会听不懂,这将使你在做实验时的难度加大,浪费做实验的宝贵时间.比如做应变片的实验,你要清楚电桥的各种接法,如果你不清楚,在做实验时才去摸索,这将使你极大地浪费时间,使你事倍功半.做实验时,一定要亲力亲为,务必要将每个步骤,每个细节弄清楚,弄明白,实验后,还要复习,思考,这样,你的印象才深刻,记得才牢固,否则,过后不久你就会忘得一干二净,这还不如不做.做实验时,老师还会根据自己的亲身体会,将一些课本上没有的知识教给我们,拓宽我们的眼界,使我们认识到这门课程在生活中的应用是那么的广泛.
通过这次测试技术的实验,使我学到了不少实用的知识,更重要的是,做实验的过程,思考问题的方法,这与做其他的实验是通用的,真正使我们受益匪浅.
通过本次对MATLAB的初步应用,知道了MATLAB的强大功能。
在使用MATLAB语言编程时,主要通过矩阵式方程,将电路中各参数表达式表达出来,然后按照一定的格式,将函数表达式通过MATLAB语言写程序。
正确的书写程序后软件会自动帮助你算出计算结果来。
在课程设计的过程,我翻阅了很多关于matlab教程的书籍,也在网络上搜索了大量的例程。
通过在计算机上运行和调试,我慢慢的熟悉了一些matlab中各函数的用法,以及他们之间的区别。
当然,在设计中,我也遇到很多的问题。
例如,在运算符号前加上标号与不加标号的区别很大,matlab中的一切运算都是以矩阵形式进行的,故在多个量的运算时,运算符前要加上标号,以示区别。
由于MATLAB的应用范围如此之广,以后肯定在自己的专业学习中要使用到,并且要学会建模,编程。
因此自己应该在这次的基础强化训练之后多多花时间在上面,慢慢的摸索,熟练的操作MATLAB,为自己以后的专业学习奠定一个好的基础
在这次实验中,我学到很多东西,加强了我的动手能力,并且培养了我的独立思考能力。
特别是在做实验报告时,因为在做数据处理时出现很多问题,如果不解决的话,将会很难的继续下去。
例如:
数据处理时,遇到要进行数据获取,这就要求懂得matlab软件一些基本操作。
还有动手这次实验,使测试技术这门课的一些理论知识与实践相结合,更加深刻了我对测试技术这门课的认识,巩固了我的理论知识。
5参考文献
[1]《电路》邱关源罗先觉高等教育出版社.2009
[2]《MATLAB实用教程》郑阿奇曹戈赵阳电子工业出版社.2005
[3]《MATLAB7.0基础教程》孙祥徐流妹吴清清华大学出版社.1997
[4]《MATLAB程序设计语言》楼顺天于卫闫华梁西安电子科技大学出版社.2007