基于MATLAB的电路频率响应分析-施晨程

合集下载

基于matlab的系统的时域响应分析—-毕业论文设计

基于matlab的系统的时域响应分析—-毕业论文设计

摘要系统的时域响应分析是衡量控制系统的重要指标。

所谓控制系统的时域响应分析就是在时间域内求解系统的微分方程,然后根据绘制出来的曲线分析系统的性能和各主要参数对系统性能的影响。

不过这里的响应曲线一般是指典型的响应曲线,即所谓的阶跃响应和脉冲响应。

求解系统典型响应的思路是首先列出微分方程组,对方程两边同时取拉普拉斯变换得到系统传递函数,然后根据绘制出来的图形进行系统分析。

利用MATLAB提供的系统时域响应分析函数可以方便、快捷地观察到系统的输出是否满足要求。

经过系统仿真后得出诸如系统传递函数等的上升时间、调节时间、超调量和稳态误差等参数。

此次综合实践所选的系统经过MATLAB软件进行系统仿真后,得到系统的输出函数,可以直观的看到系统个状态量变化情况。

关键词:MATLAB软件;系统时域响应分析;系统的响应曲线AbstractThe system time domain response analysis is an important indicator to measure control system. The so-called control system is the time-domain response of the system in time domain for solving differential equations, and then draw out the performance curve analysis system and the main parameters on system performance. But here, generally refers to a typical response curve of the response curve, the so-called step response and pulse response. A typical response to the idea of solving the system is listed first differential equations, both sides of the equation at the same time taking the Laplace transform of the system transfer function, and then draw out a systematic analysis of the graphic.MATLAB provides a system using time domain response analysis function can be quickly and easily observe whether the output of the system to meet the requirements. After the system obtained after simulation of the system transfer function, etc., such as rise time, adjusting time, overshoot and steady-state error and other parameters.The practice of the selected system is an integrated MATLAB system simulation software, got the system output function, you can see visual changes in the amount of system-state.Keywords: MATLAB software; the system time domain response analysis; system response curves目录摘要 (I)Abstract .....................................................................................................I I 第1章绪论 (1)1.1 概述 (1)1.2 时域响应分析 (1)1.2.1 系统响应的输入信号 (1)1.2.2 根据模型获得响应曲线 (2)1.3 本次综合实践2的意义 (2)第2章MATLAB软件简介 (3)2.1 MATLAB (3)2.2 MATLAB概述 (3)2.2.1 MATLAB软件 (3)2.2.2 Matlab的优势和特点 (4)第3章系统的软件设计思路 (8)3.1 典型信号的生成 (8)3.2 系统直流增益 (9)3.3 系统的固有频率和阻尼系数 (10)3.4 系统零输入响应 (10)3.5 典型系统传递函数分析 (11)3.6 任意给定输入的系统时域响应 (12)3.7 典型系统传递函数分析应用举例 (13)第4章系统函数的仿真及分析 (15)4.1 系统传递函数的模型建立及仿真 (15)4.2 系统传递函数的仿真结果分析 (19)结论 (19)参考文献 (21)致谢 (22)第1章绪论1.1 概述在控制系统分析和设计中,常采用典型响应特性来描述系统的动态性能。

基于Matlab控制系统频率特性分析法

基于Matlab控制系统频率特性分析法

基于Matlab控制系统频率特性分析法基于Matlab控制系统频率特性分析法本文主要介绍了基于Matlab控制系统的频率特性分析方法、频域稳定性判据以及开环频域性能分析,并获得频率响应曲线等。

通过本章的学习,可以利用MATLAB对各种复杂控制系统进行频率分析,以此获得系统稳定性及其它性能指标。

一、频率特性基本概念如果将控制系统中的各个变量看成是一些信号,而这些信号又是由许多不同频率的正弦信号合成的,则各个变量的运动就是系统对各个不同频率信号响应的总和。

系统对正弦输入的稳态响应称频率响应。

利用这种思想研究控制系统稳定性和动态特性的方法即为频率响应法。

频率响应法的优点为:⑴物理意义明确;⑵可利用试验方法求出系统的数学模型,易于研究机理复杂或不明的系统,也适用于某些非线性系统;⑶采用作图方法,非常直观。

1. 频率特性函数的定义对于稳定的线性系统或者环节,在正弦输入的作用下,其输出的稳态分量是与输入信号相同频率的正弦函数。

输出稳态分量与输入正弦信号的复数比,称为该系统或环节的频率特性函数,简称为频率特性,记作G(jω)=Y(jω)/R(jω)对于不稳定系统,上述定义可以作如下推广。

在正弦输入信号的作用下,系统输出响应中与输入信号同频率的正弦函数分量和输入正弦信号的复数比,称为该系统或环节的频率特性函数。

当输入信号和输出信号为非周期函数时,则有如下定义。

系统或者环节的频率特性函数,是其输出信号的傅里叶变换像函数与输入信号的傅里叶变换像函数之比。

2. 频率特性函数的表示方法系统的频率特性函数可以由微分方程的傅里叶变换求得,也可以由传递函数求得。

这三种形式都是系统数学模型的输入输出模式。

当传递函数G(s)的复数自变量s沿复平面的虚轴变化时,就得到频率特性函数G(jω)=G(s)|s=jω。

所以频率特性是传递函数的特殊形式。

代数式:G(jω)=R(w)+jI(ω)R(w)和I(w)称为频率特性函数G(jw)的实频特性和虚频特性。

基于MatLab的控制系统运动响应分析

基于MatLab的控制系统运动响应分析

[y, x] = dstep ( a, b, c, d)
得到MIMO系统的单位阶跃响应数据值
a、b、c、d分别对应于系统矩阵的系统矩阵、输入矩阵、输出矩阵、前馈矩阵。 响应点数N可默认,默认时由系统自动确定。 y为输出向量;x为状态向量,可省略。
[例3.2] 已知线性定常离散系统的状态空间模型为
5 4 采样周期Ts=0.1 s,试绘制其零输入响应曲线。 3
Response to Initial Conditions
1 x(0) 0
在MATLAB命令窗口中输入
Amplitude
2
>> a=[0.9429 -0.07593; 0.07593 0.997]; 1 >> b=[0; 0]; c=[1.969 6.449]; d=0; 0 >> dinitial( a, b, c, d, [1 ; 0] )
Response to Initial Conditions 7 6 5
运行结果如图所示
Amplitude
4 3 2 1 0 -1 -2
0
0.2
0.4
0.6 Time (sec)
0.8
1
1.2
1.2 dinitial( )函数
dinitial ( a, b, c, d, x0, N) 绘制系统(a, b, c, d)在初始条件x0作用下的响应曲线 [y, x, N] = dinitial ( a, b, c, d, x0)
>> wn=6; >> kosi=[0.1 0.2 0.707 1 2]; >> hold on; %保持曲线不被刷新 >> for kos=kosi num=wn.^2; %数组运算采用点乘 den=[1, 2*kos*wn, wn.^2]; step( num, den ) end

基于matlab的控制系统频域分析实验

基于matlab的控制系统频域分析实验

基于matlab 的控制系统频域分析实验1. 已知系统开环传递函数)1()3()()(-+=s s s K s H s G用两种以上的方法,研究闭环系统稳定时K 的取值范围; 解:法一:闭环特征方程:s^2+(K-1)*s+3*K=0 列劳斯表: s^2 1 3 s^1 K-1 0 s 3*K系统稳定时:K-1>0 3*k>0所以:K>1 此时,系统稳定法二:由闭环特征方程得特征根:S=(-(K-1) + sprt((K-1)^2-12*K))/2由系统稳定的充要条件:所有特征根具有负实部,于是有:K-1>0得K>1法三:闭环传递函数为:由系统稳定的充要条件:闭环传递函数的极点均位于S 左半平面,于是有:K-1>0得K>1法四:令K=1,做Nyquist 图:曲线过(-1,j0)点,说明K=1时,系统临界稳定。

又令K=2,做Nyquist图:此时,系统稳定。

综上述,当K>1时,系统稳定。

2. 用MATLAB 绘制系统传递函数为2525)(2++=s s s G的Bode 图,并求取谐振频率和谐振峰值,相角裕度及幅值裕度。

G=tf([25],[1 1 25]) margin(G);幅值裕度:Gm=Inf dB 相角裕度:Pm=16.3 deg 谐振频率:10^0.845谐振峰值:14.02353. 单位反馈系统,开环传递函数为12.012)(232+++++=s s s s s s G用MATLAB 绘制系统的Nyquist 图及Bode 图,并求幅值裕量和相角裕量,在图中判断系统的稳定性。

G=tf([1 2 1],[1 0.2 1 1]) figure(1)margin(G); figure(2) nyquist(G); axis equalTransfer function: s^2 + 2 s + 1 --------------------- s^3 + 0.2 s^2 + s + 1由bode 图可知,相角裕度为Pm=26.8deg;幅值裕度为Gm=-5.35dB 。

Matlab课程设计-基于Matlab的RC串联电路频率响应特性分析

Matlab课程设计-基于Matlab的RC串联电路频率响应特性分析

课程设计任务书学生姓名: 专业班级: 指导教师: 工作单位: 题目 : Matlab 应用课程设计-基于 Matlab 的 RC 串联电路频率响应特性分析初始条件:1. Matlab6.5以上版本软件;2. 先修课程:电路原理等;3. 2, 0.5R C F =Ω=。

要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求1、在 RC 串联电路中 , 求该电路的频率响应10( ( ( C U j H j U j ωωω=和 20( ( ( R U j H j U j ωωω=,并绘出其特性曲线; 2、画出程序设计框图,编写程序代码,上机运行调试程序,记录实验结果 (含计算结果和图表等 ,并对实验结果进行分析和总结;3、课程设计说明书按学校统一规范来撰写,具体包括:⑴目录; ⑵理论分析;⑶程序设计; ⑷程序运行结果及图表分析和总结; ⑸课程设计的心得体会(至少 500字 ;⑹参考文献(不少于 5篇。

时间安排:周一、周二查阅资料,了解设计内容;周三、周四程序设计,上机调试程序;周五、整理实验结果,撰写课程设计说明书。

指导教师签名: 年月日系主任(或责任教师签名: 年月日目录1.Matlab 软件简介 (1)2.RC 串联电路频率响应特性分析 (2)3. 程序设计 (3)4. 程序运行结果及结果分析 (5)5. 课程设计的心得会 (7)6. 参考文献 (8)1.Matlab 软件简介1.1Matlab 语言的历史70年代后期 , 身为美国 New Mexico大学计算机系系主任的 Cleve Moler发现学生用 FORTRAN 编写接口程序很费时间 , 于是他开始自己动手 , 利用业余时间为学生编写 EISPACK 和 LINPACK 的接口程序。

Cleve Moler给这个接口程序取名为 Matlab 。

1984年, 为了推广 Matlab 在数值计算中的应用, Cleve Moler、 Johon Little 等正式成立了 Math works公司, 从而把 Matlab 推向市场, 并开始了对 Matlab 工具相等的开发设计。

基于Matlab对信号进行频域分析的方法

基于Matlab对信号进行频域分析的方法

基于Matlab对信号进行频域分析的方法Matlab可以说是一个非常有用且功能齐全的工具,在通信、自控、金融等方面有广泛的应用。

本文讨论使用Matlab对信号进行频域分析的方法。

说到频域,不可避免的会提到傅里叶变换,傅里叶变换提供了一个将信号从时域转变到频域的方法。

之所以要有信号的频域分析,是因为很多信号在时域不明显的特征可以在频域下得到很好的展现,可以更加容易的进行分析和处理。

FFTMatlab提供的傅里叶变换的函数是FFT,中文名叫做快速傅里叶变换。

快速傅里叶变换的提出是伟大的,使得处理器处理数字信号的能力大大提升,也使我们生活向数字化迈了一大步。

接下来就谈谈如何使用这个函数。

fft使用很简单,但是一般信号都有x和y两个向量,而fft只会处理y向量,所以想让频域分析变得有意义,那么就需要用户自己处理x向量一个简单的例子从一个简单正弦信号开始吧,正弦信号定义为:我们现在通过以下代码在Matlab中画出这个正弦曲线fo = 4; %frequency of the sine waveFs = 100; %sampling rateTs = 1/Fs; %sampling time intervalt = 0:Ts:1-Ts; %sampling periodn = length(t); %number of samplesy = 2*sin(2*pi*fo*t); %the sine curve%plot the cosine curve in the TIme domainsinePlot = figure;plot(t,y)xlabel(‘TIme (seconds)’)ylabel(‘y(t)’)TItle(‘Sample Sine Wave’)grid这就是我们得到的:当我们对这条曲线fft时,我们希望在频域得到以下频谱(基于傅里叶变换理论,我们希望看见一个幅值为1的峰值在-4Hz处,另一个在+4Hz处)使用FFT命令我们知道目标是什么了,那么现在使用Matlab的内建的FFT函数来重新生成频谱%plot the frequency spectrum using the MATLAB fft commandmatlabFFT = figure; %create a new figureYfreqDomain = fft(y); %take the fft of our sin wave,y (t)stem(abs(YfreqDomain)); %use abs command to get the magnitude%similary,we would use angle command to get the phase plot!%we‘ll discuss phase in another post though!xlabel(’Sample Number‘)ylabel(’Amplitude‘)TItle(’Using the Matlab fft command‘)gridaxis([0,100,0,120])效果如下:但是注意一下,这并不是我们真正想要的,有一些信息是缺失的x轴本来应该给我们提供频率信息,但是你能读出频率吗?幅度都是100没有让频谱中心为为FFT定义一个函数来获取双边频谱以下代码可以简化获取双边频谱的过程,复制并保存到你的.m文件中function [X,freq]=centeredFFT(x,Fs)%this is a custom function that helps in plotting the two-sided spectrum%x is the signal that is to be transformed%Fs is the sampling rateN=length(x);%this part of the code generates that frequency axisif mod(N,2)==0k=-N/2:N/2-1; % N evenelsek=-(N-1)/2:(N-1)/2; % N oddendT=N/Fs;freq=k/T; %the frequency axis%takes the fft of the signal,and adjusts the amplitude accordinglyX=fft(x)/N; % normalize the dataX=fftshift(X); %shifts the fft data so that it is centered这个函数输出正确的频域范围和变换后的信号,它需要输入需要变换的信号和采样率。

实验一基于MATLAB的计算机控制系统时间响应分析

实验一基于MATLAB的计算机控制系统时间响应分析

课程研究项目实施方案本课程研究项目主要完成《智能车系统的设计与制作》。

一、研究目的1、掌握智能自动车的结构、控制电子元器件组成及其工作原理;2、掌握传感检测系统的设计方法,掌握常用传感器的原理和使用方法;3、掌握基本电路的原理图和电路连线图;4、掌握编程软件的使用、仿真调试以及单片机程序的烧写;5、掌握常用电机的选型、驱动及控制方法;6、掌握单片机的选型及系统搭接方法;7、掌握机电一体化系统的设计、制作和调试方法。

二、主要内容1、智能车本体组装;2、电路板焊接、测试;3、编程仿真软件学习和程序烧写软件学习;4、练习数码管显示编程;5、练习驱动模块驱动电机正反转;6、练习脉宽速度调制;7、练习红外避障模块;8、练习红外循迹模块;9、练习测速模块;10、多功能综合练习和扩展练习。

三、项目小组分工安排1、每4个同学一组,相互协作完成所规定的研究内容,内容可以包括上述内容但并不限于这些内容。

2、每个小组要在项目报告中标明每个人在总体工作中的贡献和工作比例或者每个人负责的内容。

3、研究内容的多少会影响到每组的最终成绩,鼓励学生自己选取感兴趣的研究内容进行创新设计和深入研究。

四、项目进程安排时间安排:自第二周开始:《机电一体化系统》每周周五的课程安排为课程项目实训;《单片机》双周周五的课程安排为课程项目实训。

实训地点:机械馆4楼创新实验室。

五、设计说明(一)方案论述1、电动机的选择方案一:采用步进电机,步进电机的一个显著特点就是具有快速启停能力,如果负荷不超过步进电机所能提供的动态转矩值,就能够立即使步进电机启动或反转。

另一个显著特点是转换精度高,正转反转控制灵活。

方案二:采用普通直流电机。

直流电动机具有优良的调速特性,调速平滑、方便,调整范围广;过载能力强,能承受频繁的冲击负载,可实现频繁的无级快速启动、制动和反转;能满足各种不同的特殊运行要求。

2、电动机驱动方案的选择方案一:采用电阻网络或数字电位器调整电动机的分压,从而达到调速目的。

基于MATLAB的电路频率响应分析-施晨程

基于MATLAB的电路频率响应分析-施晨程
3.2MATLAB
3.2.1
(1)程序设计框图:
(2)获取 函数的频率响应的编程:
Clear
fz=[0.2 0.2 0];% 表达式分子的系数向量
fm=[0.35 3.23];% 表达式分母的系数向量
w=0:0.1:50;%设定频率的变化范围
g=freqs(fz,fm,w);%求其频率响应
x=angle(g);%求其相频响应
先求 : =1.5+ =1.5+ ,又因为给出了电源的ω=1,所以 =1.5+ =1.5061+j0.1025=1.5061 ,所以根据欧姆定律得到 = = =37.5596
然后求出 : = - * =3.85 ,于是:
可以求出: = =38.5
又根据基尔霍夫电流定律可以求出: = - =1.355
3
3.1
(1)对于第一小题,我采用编程的方法来求得频率响应的曲线,具体的程序设计思路如下:首先输入H的关于频率的表达式,然后分别列出分子分母的系数行列式,调用angle函数来计算电路的相频特性,然后再调用abs函数来计算电路的幅频特性,调用freqs函数计算频率特性,最后用plot函数来描绘曲线。
(2)对于第二小题,由第一小题求出了 和 函数,根据其关系式,将ω=1带入可以得到 和 的向量值,接着可以求出所要求的各个值,所得到的表达式用matlab化简,最后得出结果。
关键词:电路原理,传递函数,MATLAB,向量图
基于MATLAB的电路频率响应分析
1
1.1
本次基础强化训练,我将利用MATLAB软件进行对频率响应电路进行原理分析、建模以及必要的推导和可行性分析。通过这一过程,掌握MATLAB软件的基本操作,体会MATLAB在实际中的应用价值,并且在以后的学习工作中利用MATLAB为自己服务,解决自己遇到的问题。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
摘要
《电路原理》是电类专业必修的一门重要的技术基础课,它具有基础科学和技术科学的二重性,不仅是电类学生学习后续课程的基础,也直接为解决电工电子工程中的一些实际问题服务。大一下学期开始,通过对本课程的学习,我初步掌握了近代电路理论的一些基本知识和概念,能分析计算一些常见的,比较简单的基本电路,初步具有了解决实际问题的能力,并为后续课程的学习准备了必要的电路理论知识。其分析电路的常见方法有:节点电压法,网孔电流法,叠加原理分析法,戴维宁定理和诺顿定理等等。本文主要讨论用用传递函数法来分析交流稳态电路中关于频率响应的计算方法。在这个分析解决问题的过程中需要运用到MATLAB软件。MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。本文主要用到matlab的编程来解决电路中的频率响应和向量图的表示。
关键词:电路原理,传递函数,MATLAB,向量图
基于MATLAB的电路频率响应分析
1
1.1
本次基础强化训练,我将利用MATLAB软件进行对频率响应电路进行原理分析、建模以及必要的推导和可行性分析。通过这一过程,掌握MATLAB软件的基本操作,体会MATLAB在实际中的应用价值,并且在以后的学习工作中利用MATLAB为自己服务,解决自己遇到的问题。
2.3
第(1)小题:我们约定电感的支路为支路1,对应的阻抗记为 ,电容所在的支路记为支路2,其阻抗记为 ,总阻抗记为 。于是:
=jω*0.1,
=2+ ,
=1.5+ 。
然后列出传递函数: =
=
=
= = =
=
=
第(2)小题:已知电源的参数和各个元件的具体的数值,所以只要将各个元件的等效阻抗算出来,根据分压原理算得各个的电压值就可以把所求的各个量给解出来了。
而MATLAB实现功能主要依靠编程,它是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。
2
2.1
2.2
(1)频率响应:电路中的感抗、容抗跟随激励源的频率变化,导致电路的工作状态亦随着频率变化,称此为频率特性,又称为频率响应。
(2)网络函数的定义:在线性正弦稳态网络中,当只有一个独立的激励作用时,网络中的某一响应(电压或电流)与网络输入之比,称为该响应的网络函数。
(3)本题中的电路中,只有一个激励源作用,并且电路属于线性稳态电路,电路中的电感 ,电容的等效阻抗为 ,这两个原件的工作状态会随着频率的变化而变化,进而改变电路的工作状态,通过列出对应的网络函数就可以容易的得出对应的幅频响应和相频响应。
1.2
Simulink是MATLAB最重要的组件之一,他的实现功能是图像模拟,它提供一个动态系统建模、仿真和综合分析的集成环境。在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。
(3) 的频率响应曲线如图1所示:
图1
(4)获取 函数的频率响应的编程:
Clear
fz=[0.2 0.2 0];% 表达式分子的系数向量
fm=[0.35 3.55 6.2 3];% 表达式分母的系数向量
w=0:0.1:50;%设定频率的变化范围
g=freqs(fz,fm,w);%求其频率响应
x=angle(g);%求其相频响应
3
3.1
(1)对于第一小题,我采用编程的方法来求得频率响应的曲线,具体的程序设计思路如下:首先输入H的关于频率的表达式,然后分别列出分子分母的系数行列式,调用angle函数来计算电路的相频特性,然后再调用abs函数来计算电路的幅频特性,调用freqs函数计算频率特性,最后用plot函数来描绘曲线。
(2)对于第二小题,由第一小题求出了 和 函数,根据其关系式,将ω=1带入可以得到 和 的向量值,接着可以求出所要求的各个值,所得到的表达式用matlab化简,最后得出结果。
y=abs(g);%求其幅频响应
subplot(2,1,1),
plot(w,x*180/pi)%画相频响应曲线
xlabel('w');
ylabel('角度');
grid;
subplot(2,1,2),
plot(w,y)%画幅频响应曲线
xlabel('w');
ylabel('abs(H)');
grid
y=abs(g);%求其幅频响应
lot(2,1,1),
plot(w,x*180/pi)%画相频响应曲线
xlabel('w');
ylabel('角度');
grid;
subplot(2,1,2),
plot(w,y)%画幅频响应曲线
xlabel('w');
ylabel('abs(H)');
先求 : =1.5+ =1.5+ ,又因为给出了电源的ω=1,所以 =1.5+ =1.5061+j0.1025=1.5061 ,所以根据欧姆定律得到 = = =37.5596
然后求出 : = - * =3.85 ,于是:
可以求出: = =38.5
又根据基尔霍夫电流定律可以求出: = - =1.355
3.2MATLAB
3.2.1
(1)程序设计框图:
(2)获取 函数的频率响应的编程:
Clear
fz=[0.2 0.2 0];% 表达式分子的系数向量
fm=[0.35 3.23];% 表达式分母的系数向量
w=0:0.1:50;%设定频率的变化范围
g=freqs(fz,fm,w);%求其频率响应
x=angle(g);%求其相频响应
相关文档
最新文档