当前位置: 首页 > news >正文

matlab 稳定系统,matlab分析系统的稳定性

41528d3028836879cd698677c3999917.gifmatlab分析系统的稳定性

MATLAB分析系统稳定性,导 师: 张静 答辩组:第14组 专 业:电子信息工程,论文框架,,摘要 系统稳定性定义 分析方法 感言,1,,2,,3,,4,摘要,随着信息科学和计算机的迅速发展,数字信号处理的理论与应用得到飞跃式发展,形成一门极其重要的学科。由于模拟信号很难做远距离传出,且容易失真,与数字信号比较起来,数字信号能够更加有效的传输,并且在传输的过程中失真率低,同时我们也可以较容易的发现与消除数字信号的失真。因此,数字信号比模拟信号在通信方面具有更多的优势,而在一个世纪的系统中,只有稳定系统才在实际工程中有意义,所以研究与判断系统的稳定性在实际工程中具有重要意义,在这里具体介绍几种方法来判断离散系统的稳定性!,系统稳定性定义,有界输入,系统输出也是有界的。,系统稳定性分析的方法,第一种根据时域离散系统的系统函数的包含单位圆来判断; 第二种根据离散系统稳定的充分必要条件,系统的单位脉冲响应绝对可和; 第三种方法:对于特定输入的信号的,可以把信号带入到系统中检验,当输入信号有界,输出信号也有界,则该系统稳定。,利用系统函数画零极点图法,系统函数的定义是设系统初始状态为零,系统对输出的Z变换与系统对输入的Z变换之比为系统的系统函数。 (1),,对于因果系统,系统稳定的条件是:系统函数的极点集中在单位圆的内部,我们可以将系统函数写成公式(2)所示,然后分别求出系统函数分子与分母的系数矩阵,如公式(3)所示。通过MATLAB程序片段(1)可以较为简单的判断出因果系统的稳定性。 (2) (3),,A=[A(1) A(2) …… A(N+1)]; B=B(1) B(2) …….B(M+1)]; %用极点分布判断系统是否稳定 zplane(B,A); p=roots(A) pm=abs(p); if max(pm)<1 disp( 系统稳定 ); else disp( 系统不稳定 ); end,MATLAB程序片段(1):,假设系统函数如下式,判断系统稳定性。 通过程序片段(2)我们可以较为轻松的画出该系统的零极点分布图,如图(1),同时还可以通过MATLAB显示函数DISP显示出系统的稳定与否。,例子,程序片段(2),A=[2,-2.98,0.17,2.3418,-1.5147]; B=[0,0,1,5,-50]; %用极点分布判断系统是否稳定 zplane(B,A); p=roots(A) pm=abs(p); if max(pm)<1 disp( 系统稳定 ); else disp( 系统不稳定 ); end %画出系统u(n)的系统输出波形图进行判断 un=ones(1,700); sn=filter(B,A,un); n=0:length(sn)-1; figure plot(n,sn); xlabel( n );ylabel( s(n) );,程序片段(2),运行结果:,程序片段(2),程序片段(2),非因果系统,设系统的极点为 、 、 ……. ,我们可以根据序列为左序列、右序列、双边序列、三种情况将收敛于分为三种情况讨论。当收敛域包含单位圆的系统是稳定的。不过在实际工程中由于非因果系统还不能具体实现,所以我们在实际工程中不对非因果系统进行讨论。 左序列的收敛域: 双边序列收敛域: < < 右序列收敛域: < 1时,系统在收敛域为 是稳定的。 当 < 1< 时,系统在收敛域为 < < 是稳定的。 当 <1时,系统在收敛域为 < < 是稳定的。即系统因果稳定。,系统稳定性的条件,系统稳定性的条件是: 收敛域包含于单位圆。也就是说对于因果离散系统,系统的稳定性受极点的分布,和收敛域影响。,利用时域离散系统单位脉冲响应判断,系统稳定的充分必要条件是系统的单位脉冲响应绝对可和。 即 (4) 利用单位脉冲响应在 ~ 上的求和判断系统的稳定性也具有一定的局限性,对于一些绝对值求和简单的序列,我们可以直接利用 进行判断,不过并不是所有的情况都可以利用这种方法判断;对于有些单位脉冲响应绝对值求和非常困难的序列只能寻求其他的方法。,已知系统的输入的系统稳定性判断,如果我们一直输入信号的类型,我们可以直接将系统加入输入信号来判断输入信号后,系统是否稳定,如果加入信号后系统是稳定的,那么我们可以不用再继续判断加入其它信号后系统是否是稳定的,此时系统只是适用这一种类型信号,加入其他信号进行判断就没有必要了。我们可以根据相应的时序图进行判断!如示例(2),接着我们可以通过MATLAB程序片段(3)判断。 示例二:系统函数如下所示,已知输入信号是单位阶跃信号u(n),判断系统对u(n)是否是稳定的。,%画出系统u(n)的系统输出波形图进行判断、 A=[2,-2.98,0.17,2.3418,-1.5147]; B=[0,0,1,5,-50]; un=ones(1,700); sn=filter(B,A,un); n=0:length(sn)-1; figure plot(n,sn); xlabel( n );ylabel( s(n) );,MATLAB运行程序,运行结果,通过图可知,当 时,系统的响应 是稳定的。所以该系统是稳定系统。,感言,感触颇多,此处省略N个字,

相关文章:

  • PHP的continue语句,PHP中continue语句的应用
  • php判断区间数字,如何快速判断数字在那个区间?
  • 有限差分matlab工具箱,FDTD(时域有限差分法)算法的Matlab源程序
  • matlab实现主机通信,设置主机模型和目标模型之间的通信
  • php电脑网站,PHP网站在线人数的程序代码 -电脑资料
  • 电脑php的基本方法是什么,做文员的基本电脑操作是什么
  • php 抽象类和抽象方法,PHP中抽象类和抽象方法概念与用法实例分析
  • PHP二维数组中文排序,PHP 对二维数组排序
  • php中XML怎么创建,PHP创建XML文档
  • oracle 批量insert 锁,oracle nologging 和批量insert
  • oracle 外链接 加条件,Oracle外连接中对非连接条件使用(+)需要注意的地方
  • oracle通过trc查找死锁sql,从trc查找死锁的有关问题
  • PHP可以实现一对多,微信小程序实现一对多发消息
  • v820w安装linux系统,Linux系统基础-管理之用户、权限管理
  • linux命令seq,Linux 中seq 命令的用法
  • 【162天】黑马程序员27天视频学习笔记【Day02-上】
  • 【从零开始安装kubernetes-1.7.3】2.flannel、docker以及Harbor的配置以及作用
  • co.js - 让异步代码同步化
  • iOS | NSProxy
  • Java IO学习笔记一
  • java8-模拟hadoop
  • JS+CSS实现数字滚动
  • JS创建对象模式及其对象原型链探究(一):Object模式
  • leetcode386. Lexicographical Numbers
  • Linux后台研发超实用命令总结
  • linux学习笔记
  • Mac转Windows的拯救指南
  • PHP 7 修改了什么呢 -- 2
  • SpringBoot几种定时任务的实现方式
  • use Google search engine
  • vue 个人积累(使用工具,组件)
  • vue--为什么data属性必须是一个函数
  • 分享几个不错的工具
  • 利用jquery编写加法运算验证码
  • 罗辑思维在全链路压测方面的实践和工作笔记
  • 一起来学SpringBoot | 第三篇:SpringBoot日志配置
  • 主流的CSS水平和垂直居中技术大全
  • 带你开发类似Pokemon Go的AR游戏
  • ​软考-高级-系统架构设计师教程(清华第2版)【第9章 软件可靠性基础知识(P320~344)-思维导图】​
  • #我与Java虚拟机的故事#连载03:面试过的百度,滴滴,快手都问了这些问题
  • (function(){})()的分步解析
  • (pytorch进阶之路)CLIP模型 实现图像多模态检索任务
  • (七)MySQL是如何将LRU链表的使用性能优化到极致的?
  • (已解决)报错:Could not load the Qt platform plugin “xcb“
  • (原創) 如何動態建立二維陣列(多維陣列)? (.NET) (C#)
  • (转)关于多人操作数据的处理策略
  • *Django中的Ajax 纯js的书写样式1
  • .NET : 在VS2008中计算代码度量值
  • .Net 6.0 处理跨域的方式
  • .NET CORE Aws S3 使用
  • .NET 发展历程
  • .net 开发怎么实现前后端分离_前后端分离:分离式开发和一体式发布
  • .NET 中 GetProcess 相关方法的性能
  • .netcore 如何获取系统中所有session_ASP.NET Core如何解决分布式Session一致性问题
  • .NET面试题(二)