基于MATLAB的一阶动态电路特性分析.doc
《基于MATLAB的一阶动态电路特性分析.doc》由会员分享,可在线阅读,更多相关《基于MATLAB的一阶动态电路特性分析.doc(34页珍藏版)》请在冰点文库上搜索。
课程设计任务书
学生姓名:
赵静专业班级:
电子0901
指导教师:
梁小宇工作单位:
武汉理工大学
题目:
基于MATLAB的一阶动态电路特性分析
初始条件:
MATLAB软件微机
要求完成的任务:
1、以RC串联电路为例绘出u(t),u(t),i(t),p(t),p(t)波形,以RL并联电路的零输入响应为例汇出i(t),i(t),u(t),p(t),p(t)的波形;
2、以RC串联电路的直流激励的零状态响应为例绘出u(t),u(t),i(t),p(t),p(t),p(t)波形,RL并联电路的,,,,;
3、以RC串联电路的直流激励的全响应为例绘出u(t),u(t),i(t)波形,RL并联电路的i(t),i(t),u(t)波形;
4、以RC串联电路的正弦激励的零状态响应为例绘出u(t),u(t),i(t),u(t)波形,RL并联的i(t),i(t),u(t),i(t)波形;
5、以RC串联电路的冲激响应为例绘出u(t),i(t)波形,RL并联电路的i(t),u(t)波形;
6、撰写MATLAB课程设计说明书。
时间安排:
学习MATLAB语言的概况第1天
学习MATLAB语言的基本知识第2、3天
学习MATLAB语言的应用环境,调试命令,绘图能力第4、5天
课程设计第6-9天
答辩第10天
指导教师签名:
年月日
系主任(或责任教师)签名:
年月日
Matlab应用实践课程设计
目录
摘要 I
Abstract II
1绪论 1
2MATLAB简介 2
2.1MATLAB基本组成
2
2.2MATLAB语言特点及功能 2
2.3MATLAB通用命令
2
2.4MATLAB编程流程 3
3理论知识 4
3.1零输入响应定义及求解 4
3.2零状态响应定义及求解 4
3.3冲激响应定义及求解 4
4基于matlab的电路分析 5
4.1RC串联电路的零输入响应 5
4.2RL并联电路的零输入响应 6
4.4RL并联电路的直流激励的零状态响应 9
4.6RL并联电路的直流激励的全响应 12
4.7全响应波形分解 13
4.8RC串联电路的正弦激励的零状态响应 15
4.9RL并联电路的正弦激励的零状态响应 16
4.10零状态响应分解为暂态分量与稳态分量之和 18
4.11RC串联电路的冲激响应 19
4.12RL并联电路的冲激响应 20
学习心得 22
参考文献 23
附录 24
摘要
MATLAB是世界流行的优秀科技应用软件之一。
具有功能强大(数值计算、符号计算、图形生成、文本处理及多种专业工具箱)、界面友好,可二次开发等特点。
本文主要介绍基于MATLAB的一阶动态电路特性分析。
其基本内容是利用MATLAB软件完成RC串联电路、RL并联电路的零输入响应;RC串联电路、RL并联电路的直流激励的零状态响应;RC串联电路、RL并联电路的直流激励的全响应;RC串联电路、RL并联电路的正弦激励的零状态响应;RC串联电路、RL并联电路的冲激响应的程序设计及波形分析。
通过本次课设熟悉了解MATLAB在数字信号处理过程中的应用,并将之前所学的理论知识和这次的设计及仿真结合起来,掌握了RCL一阶动态电路的设计和正确使用。
关键字:
MATLAB;一阶动态电路。
Abstract
MATLABispopulartheoutstandingscientificandtechnologicalapplicationsoftwareone.Withpowerful(numericalcalculation,symbolcalculation,graphics,textprocessingandmanykindsofgeneratingprofessionaltoolbox),friendlyinterface,butseconddevelopmentetc.Characteristics.
ThispapermainlyintroducesthefirstorderbasedonMATLABdynamiccircuitcharacteristicanalysis.ItsbasiccontentisuseofMATLABsoftwareRCseriescircuit,RLparallelconnectioncircuitofzeroinputresponse;RCseriescircuit,RLparallelconnectioncircuitdcincentivezeroresponse;RCseriescircuit,RLparallelconnectioncircuitdcincentivetheresponse;RCseriescircuit,RLparallelconnectioncircuitofsineexcitationofthezero-stateresponse;RCseriescircuit,RLparallelconnectioncircuitoftheimpulseresponseprogramdesignandwaveformanalysis.
ThroughthisclasssettobefamiliarwithMATLABindigitalsignalprocessing,andtheapplicationwillbethetheoreticalknowledgeandlearnedbeforethedesignandsimulationcombined,masterRCLfirst-orderdynamiccircuitdesignandthecorrectuse.
Keywords:
MATLAB;FirstOrderCircuit.
I
1绪论
在科学技术飞速发展的今天,计算机正扮演着愈来愈重要的角色。
在进行科学研究与工程应用的过程中,科技人员往往会遇到大量繁重的数学运算和数值分析,传统的高级语言Basic、Fortran及C语言等虽然能在一定程度上减轻计算量,但它们均要求应用人员具有较强的编程能力和对算法有深入的研究。
另外,在运用这些高级语言进行计算结果的可视化分析及图形处理方面,对非计算机专业的普通用户来说,仍存在着一定的难度。
MATLAB正是在这一应用要求背景下产生的数学类科技应用软件。
它具有的顶尖的数值计算功能、强大的图形可视化功能及简洁易学的“科学便捷式”工作环境和编程语言,从根本上满足了科技人员对工程数学计算的要求,并将科技人员从繁重的数学运算中解放出来,因而越来越受到广大科技工作者的普遍欢迎[1]。
MATLAB是matrix和laboratory前三个字母的缩写,意思是“矩阵实验室”,是MathWorks公司推出的数学类科技应用软件。
其Dos版本(MATLAB1.0)发行于1984年,现已推出了Windows版本(MATLAB5.3)。
经过十多年的不断发展与完善,MATLAB已发展成为由MATLAB语言、MATLAB工作环境、MATLAB图形处理系统、MATLAB数学函数库和MATLAB应用程序接口五大部分组成的集数值计算、图形处理、程序开发为一体的功能强大的系统。
MATLAB由“主包”和三十多个扩展功能和应用学科性的工具箱(Toolboxs)组成。
MATLAB语言是以矩阵计算为基础的程序设计语言,语法规则简单易学,用户不用花太多时间即可掌握其编程技巧。
其指令格式与教科书中的数学表达式非常相近,用MATLAB编写程序尤如在便笺上列写公式和求解,因而被称为“便笺式”的编程语言。
另外,MATLAB还具有功能丰富和完备的数学函数库及工具箱,大量繁杂的数学运算和分析可通过调用MATLAB函数直接求解,大大提高了编程效率,其程序编译和执行速度远远超过了传统的C和Fortran语言,因而用MATLAB编写程序,往往可以达到事半功倍的效果。
在图形处理方面,MATLAB可以给数据以二维、三维乃至四维的直观表现,并在图形色彩、视角、品性等方面具有较强的渲染和控制能力,使科技人员对大量原始数据的分析变得轻松和得心应手。
正是由于MATLAB在数值计算及符号计算等方面的强大功能,使MATLAB一路领先,成为数学类科技应用软件中的佼佼者。
目前,MATLAB已成为国际上公认的最优秀的科技应用软件。
MATLAB的上述特点,使它深受工程技术人员及科技专家的欢迎,并很快成为应用学科计算机辅助分析、设计、仿真、教学等领域不可缺少的基础软件。
2MATLAB简介
2.1MATLAB基本组成
MATLAB主要由MATLAB主程序、Simulink动态仿真系统和MATLAB工具箱三大部分组成。
其中MATLAB主程序包括MATLAB语言、工作环境、句柄图形、数学函数库和应用程序接口五个部分;工具箱则是MATLAB的基本语句编写的各种子程序集和函数库,用于解决某一方面的特定问题或实现某一类的新算法,是开放的,可以根据需要扩充。
2.2MATLAB语言特点及功能
MATLAB功能丰富,可扩展性强。
MATLAB软件包括基本部分和专业扩展两大部分的功能。
基本部分包括:
矩阵的运算和各种变换;代数和超越方程的求解;数据处理和傅立叶变换;数值部分等等,可以充分满足大学理工科本科的计算需要。
扩展部分称为工具箱。
它实际上是用MATLAB的基本语句编程的各种子程序集,用于解决某一方面的专门问题,或实现某一类的新算法。
被称为第四代编程语言的MATLAB最大的特点就是简洁开放的程序代码和直观实用的开发环境。
具体地说MATLAB主要有以下特点:
(1)库函数资源丰富
(2)语言精炼,代码灵活
(3)运算符多而灵活
(4)面向对象,控制功能优良
(5)程序设计自由
(6)图形功能强大
(7)程序的兼容性好
(8)源代码开放
(9)形形色色的工具箱
2.3MATLAB通用命令
通用命令是在MATLAB命令窗口中直接键入并执行,指令及其功能如下。
Clear:
清除内存中所有的或指定的变量和函数
cd:
显示和改变当前工作目录
clc:
擦除MATLAB工作窗口中所有显示的内容
clf:
擦除MATLAB工作窗口中的图形
dir:
列出当前或指定目录中的文件清单
disp:
在运行中显示变量或文字内容
echo:
控制运行的文字命令是否显示
hold:
控制当前的图形窗口对象是否被刷新
Home:
擦除命令窗口中的全部内容
pack:
收集内存碎片以扩大内存空间
quit:
关闭并退出MATLAB
type:
显示所指定文件的全部内容
exit:
退出MATLAB
2.4MATLAB编程流程
在一般情况下,要对电路进行分析,首先要建立电路的模型。
然后把电路模型翻译成为相应的程序语言。
在Matlab中,分析电路可以按以下流程图进行:
绘制波形曲线,得出仿真数据
分析仿真结果
设定时间的范围与分度
把电路模型用Matlab语言描述
建立电路模型
图2.4.1matlab电路仿真流程图
3理论知识
3.1零输入响应定义及求解
由非零初始状态引起的线性系统或电路在没有外加输入时的响应。
也可以表述为,由储能元件的初始储能的作用在电路中产生的响应。
零输入响应是系统微分方程齐次解的一部分。
所谓的起始状态,是反映一个系统在初始观察时刻的储能状态。
以电系统为例,在研究t=0以后的响应时,把t=0(-)时的值uc(0-)和il(0-)等称为起始状态,而把t=0+时的值uc(0+)和il(0+)以及它们的各阶导数称为初始值或初始条件。
3.2零状态响应定义及求解
在零初始状态下,由初始时刻开始施加于线性系统或电路的输入信号所产生的响应。
在一些有初始储能的电路中,为求解方便,也可以假设电路无初始储能,求出其零状态响应,再和电路的零输入响应相加既得电路的全响应。
在求零状态响应时,一般可以先根据电路的元器件特性(电容电压、电感电流等),利用基尔霍夫定律列出电路的关系式,然后装换出电路的微分方程;利用微分方程写出系统的特征方程,利用其特征根从而可以求解出系统的自由响应方程的形式;零状态响应由部分自由响应和强迫响应组成,其自由响应部分与所求得得方程具有相同的形式,再加上所求的特接便得系统的零状态响应形式。
可以使用冲激函数系数匹配法求解。
3.3冲激响应定义及求解
当激励为单位冲激函数时,电路的零状态响应称为单位冲激响应,简称冲激响应。
电路对于单位冲击函数激励的零状态响应称为单位冲激响应。
单位冲激函数也是一种奇异函数,可定义为(当t0)单位冲激函数又称为函数。
它在t0处为零,但在t=0处为奇异的。
冲击响应的一般求法:
(1)简单电路,列出微分方程,直接求冲激响应。
注意电感电流和电容电压会产生跳变。
(2)最普遍的一种方法,利用三要素法先求出阶跃响应,再对时间求导的冲激响应,即利用下式由电路的阶跃响应计算出电路的冲激响应 h(t)=ds(t)/d(t) 其中,h(t)为冲激响应,s(t)为阶跃响应。
4基于matlab的电路分析
4.1RC串联电路的零输入响应
RC串联零输入响应电路如图4.1.1所示。
图4.1.1RC电路的零输入响应
可知RC电路零输入时电路中的电流为;电阻上的电压为;电阻和电容上所消耗的功率为,。
应用matlab编程的基本步骤如下:
第一步:
设定初始参数,所用语句为:
“%输入给定参数”,为第一组参数,为第二组参数。
第二步:
确定坐标的起点、间隔、终点,其语句为“t=[0:
0.1:
1.5];”
第三步:
用matlab语言描述各式,其语句为
“%计算电容和电阻电流值
%计算电容和电阻电压值
%计算电容和电阻功率值”
最后使用画图函数figure和subplot函数。
得到其波形如下:
图4.1.2RC串联电路零输入响应特性曲线
线1(蓝色)代表第一组参数下的特性曲线,线2(绿色)代表第二组参数下的特性曲线。
4.2RL并联电路的零输入响应
如图4.2.1所示的RL电路中,开关S动作之前,电压和电流已恒定不变,电感中有电流。
开关S动作之后,具有初始电流的电感L和电阻R相连接,构成一个闭合回路。
图4.2.1RL电路的零输入响应
可知RL电路零输入时电路中的电压为;电感上的电流为;电阻和电感上所消耗的功率为,。
由此可画出其响应特性曲线。
应用matlab编程的基本步骤如下:
第一步:
定参数,所用语句为:
“%输入给定参数”,为第一组参数,为第二组参数。
第二步:
确定坐标的起点、间隔、终点,其语句为“t=[0:
0.01:
1.5];”
第三步:
用matlab语言描述各式,其语句为“%电感和电阻电流值
%电感和电阻电压值
%电感和电阻功率值”
最后使用画图函数figure和subplot函数。
得到其波形如下:
图4.2.2RL并联电路零输入响应特性曲线
线1(蓝色)代表参数1下的特性曲线,线2(绿色)代表参数2下的特性曲线。
4.3RC串联电路的直流激励的零状态响应
在图4.3.1所示的RC串联电路中,开关S闭合前电路处于零初始状态,即。
在t=0时刻,开关S闭合,电路接入直流电压源。
根据KVL,有。
图4.3.1RC电路零状态响应
由图可知RC电路零状态时电路中的电流为;电阻上的电压为,电容上的电压为;电阻和电容上所消耗的功率为,。
由此可画出其响应特性曲线。
应用matlab编程的基本步骤如下:
第一步:
定参数,所用语句为:
“%输入给定参数”,为参数1,为参数2
第二步:
确定坐标的起点、间隔、终点,其语句为“t=[0:
0.1:
10];”
第三步:
用matlab语言描述各式,其语句为
“%电容和电阻电流值
%电容和电阻电压值
;%电容和电阻功率值”
最后使用画图函数figure和subplot函数。
得到其波形如下:
图4.3.2RC串联电路直流激励的零状态响应特性曲线
线1(蓝色)代表参数1下的特性曲线,线2(绿色)代表参数2下的特性曲线。
4.4RL并联电路的直流激励的零状态响应
在图4.4.1所示的RL电路中,直流电流源的电流为,在开关打开前电感中的电流为零。
开关打开后,电路的响应为零状态响应。
注意到换路后与串联的等效电路扔为,则电路的微分方程为,初始条件为。
图4.4.1RL电路的零状态响应
由图可知RL电路零状态时电路中的电压为;电感上的电流为,电阻上的电流为;电阻和电感上所消耗的功率为,【3】。
由此可画出其响应特性曲线。
应用matlab编程的基本步骤如下:
第一步:
定参数,所用语句为:
“%输入给定参数”,为参数1,为参数2
第二步:
确定坐标的起点 、间隔、终点,其语句为“t=[0:
0.05:
5];”
第三步:
用matlab语言描述各式,其语句为“
%电感和电阻电流值
%电感和电阻电压值
%电感和电阻功率值”
最后使用画图函数figure和subplot函数。
得到其波形如下:
图4.4.2RL并联电路直流激励的零状态响应特性曲线
线1(蓝色)代表参数1下的特性曲线,线2(绿色)代表参数2下的特性曲线。
4.5RC串联电路的直流激励的全响应
在图4.5.1所示的RC串联电路为已充电的电容经过电阻接到直流电压源。
设电容原有电压,开关S闭合后,根据KVL有,初始条件为。
图4.5.1RC串联电路的全响应
此时可知RC电路全响应时电路中的电流为;电阻上的电压为,电容上的电压为;由此可画出其响应特性曲线。
应用matlab编程的基本步骤如下:
第一步:
定参数,所用语句为:
“
%输入给定参数”,前为参数1,后为参数2。
第二步:
确定坐标的起点、终点,间隔,其语句为“t=[0:
0.1:
10];”
第三步:
用matlab语言描述各式,其语句为
“%电容和电阻电流值
%电容和电阻电压值
最后使用画图函数figure和subplot函数。
得到其波形如下:
图4.5.2RC串联电路的直流激励的全响应的特性曲线
线1(蓝色)代表参数1下的特性曲线,线2(绿色)代表参数2下的特性曲线。
4.6RL并联电路的直流激励的全响应
在图4.6.1所示的RL并联电路为已充电的电感与电阻并联接到直流电压源。
设电感原有电流,开关S闭合后,与不相等,电路的响应为全响应。
图4.6.1RL并联电路全响应
此时可知RL电路全响应时电路中的电压为;电感上的电流为,电阻上的电流为。
由此可画出其响应特性曲线。
应用matlab编程的基本步骤如下:
第一步:
定参数,所用语句“%输入给定参数”,前为参数1,后为参数2。
第二步:
确定坐标的起点、间隔、终点,其语句为“t=[0:
0.01:
5];”
第三步:
用matlab语言描述各式,其语句为
“
%电感和电阻电流值
%电感和电阻电压值”
最后使用画图函数figure和subplot函数。
得到其波形如下:
图4.6.2RL并联电路的直流激励的全响应的特性曲线
线1(蓝色)代表参数1下的特性曲线,线2(绿色)代表参数2下的特性曲线。
4.7全响应波形分解
全响应波形可分解为下列二种形式:
全响应=零输入响应+零状态响应,即,。
全响应=暂态分量+稳态分量,,。
应用matlab编程的基本步骤如下:
第一步:
定参数,所用语句为“%输入给定参数”
第二步:
确定坐标的起点、终点,间隔,其语句为“t=[0:
0.01:
10];”
第三步:
用matlab语言描述各式,其语句为“
%计算电感和电阻电流值
%计算电感和电阻电压值
最后使用画图函数figure和subplot函数。
得到其波形如下:
图4.7.1全响应波形分解
线1代表全响应特性曲线,线2代表零输入或暂态特性曲线,线3代表零状态或稳态。
4.8RC串联电路的正弦激励的零状态响应
外施激励为正弦电压源,根据KVL,,方程的通解为,由非齐次方程的特解和对应的齐次方程的通解两个分量组成,不难求得,,其中。
再代入初始值,可求得。
从而,
,
。
图4.8.1即为RC串联的正弦激励的零状态响应波形。
应用matlab编程的基本步骤如下:
第一步:
定参数,所用语句为“%输入给定参数
第二步:
确定坐标的起点、终点,间隔,其语句为“t=[0:
0.01:
10];”
第三步:
用matlab语言描述各式,其语句为
“%电流值
%电容和电阻电压值及其分解电压。
最后使用画图函数figure和subplot函数。
图4.8.1RC串联的正弦激励的零状态响应波形
4.9RL并联电路的正弦激励的零状态响应
外施激励为正弦电压源,根据KVL,,方程的通解为,由非齐次方程的特解和对应的齐次方程的通解两个分量组成,不难求得,,其中。
再代入初始值,可求得。
从而,
,
,
。
图4.9.1即为RL并联的正弦激励的零状态响应波形。
应用matlab编程的基本步骤如下:
第一步:
定参数,所用语句为
“%输入给定参数”
第二步:
确定坐标的起点、终点,间隔,其语句为“t=[0:
0.01:
10];”
第三步:
用matlab语言描述各式,其语句为
%电感和电阻电流值及其分解电流。
%电压值
最后使用画图函数figure和subplot函数。
图4.9.1RL并联的正弦激励的零状态响应波形
4.10零状态响应分解为暂态分量与稳态分量之和
因为,从中可以看出前一个分量是一个稳态分量,不随时间增长而衰减,后一个分量是一个随时间增长而衰减的暂态分量。
同理,根据的表达式也可以得出同样的结论,,前一个分量是稳态分量,后一个分量是暂态分量。
应用matlab编程的基本步骤如下:
第一步:
定参数,所用语句为
%输入给定参数
第二步:
确定坐标的起点、终点,间隔,其语句为“t=[0:
0.01:
10];”
第三步:
用matlab语言描述各式,其语句为
%电流值
%电压值
最后使用画图函数figure和subplot函数。
得到其波形如下:
图4.10.1和分解为暂态分量和稳态分量的波形图
4.11RC串联电路的冲激响应
图4.11.1为一个在单位冲激电流激励下的RC电路。