matlab系统同时提供连续和离散的控制器和对象的目的是:在降低用户使用复杂程度的同时提高仿真精度、仿真速度和应用的广泛性。

仿真步长和求解精度的概念对于理解这个问题至关重要。

首先是步长,步长和求解精度存在一对矛盾,步长的选择是仿真消耗的时间和求解精度要求的折中。计算机只能一步一步计算你的电路或者其他方程,例如你输入一个连续的信号,计算机在一个时刻仅仅会采集这个信号上的一个点,然后把这个点带入你的控制器数学方程中,求出电路方程的一个解,根据这个解得到系统的输出。因此,仿真波形其实是一个个的点聚集在一起形成的,并非所见的一条曲线。很显然,一个个离散的点之间的间隔越小,出来的波形就越漂亮,你仿真所得到的误差就会越小。如果步长无穷接近0
,那么仿真结果就无穷接近于物理系统。为何不能让计算机系统的步长无穷接近0
呢?如果这样的话,计算机系统的计算量太大,导致仿真消耗的时间会太长。实际仿真中步长的选择需要结合仿真所消耗的时间和仿真精度要求两者之间的关系,在消耗的时间和精度之间进行折中。

其次是求解精度,精度不仅受到仿真步长的影响,而且系统的离散化方法和求解结束后通过离散的点得到连续曲线的插值算法也会影响求解精度。目前有多离散化方法,不同的离散化方法所得到的结果精度不同,不同的离散化方法都有一个“特征采样时间”可以使得自己在这个采样时间下精度最好。因此,离散化方法离散结束后不仅仅得到一个离散系统,还会有一个最佳仿真步长。
上述为步长和精度的概念以及两者之间的关系,接下来分析MATLAB提供连续和离散两种输入方式的目的。

MATLAB提供连续系统的控制器和控制对象输入是为了:便于用户方便快捷使用仿真软件。对于一个小白,他并不懂得上述步长、离散方法、求解精度的概念,但又想得到一个较好的仿真结果怎么办?MATLAB提供这种方式,你只需要输入一个连续传递函数,matlab会根据连续系统的特性使用内部自带的离散化方法对你的系统离散化,并自动设置一个仿真步长,你需要完成的就是等待,这样降低了用户的使用门槛儿和难度。对于一个懂得理论的人,他也有可能不想自己耗费时间和精力去进行系统的离散化,这样的“自动化”使得软件用起来更加方便。

MATLAB提供离散的控制器和控制对象输入是为了追求更高的仿真精度,为用户提供更加广泛的选择。有些精度要求很高的系统,其仿真步长由其他因素决定,必须选择固定的或一段范围的步长。这种情况下系统自己的离散化方法以及自己计算的步长并不适合仿真,两者同时或者有其一必须由用户指定。为了在这种苛刻条件下依旧可以使用仿真软件,用户需要根据自己的要求对系统自行离散化,得到离散系统和对应的采样时间,自己输入到软件中,从而得到相应精度要求下的仿真结果。离散的控制器和对象的输入方法在在这种情况下拓宽了软件的适用范围,为用户提供了更加自由的选择空间。
因此,你所问的问题中,四种控制之间的区别在于仿真精度和消耗的时间。因为软件现在很强大,所以,若想要看到四种控制之间的差异,需要找到一个精度要求很高,而且极易不稳定的系统才能看出差别在哪里。对于一般的应用,四种方法可以任选其一。

此文也在我的知乎文章中发表。

MATLAB仿真中连续和离散的控制器有何区别?的更多相关文章

  1. OFDM通信系统的MATLAB仿真(1)

    由于是第一篇博客,想先说点废话,其实自己早就想把学到的一些东西总结成文章随笔之类的供自己复习时查看的了.但是一是觉得自己学的的不够深入,总结也写不出什么很深刻的东西:二是觉得网上也有海量的资料了,需要 ...

  2. OFDM通信系统的MATLAB仿真(2)

    关于OFDM系统的MATLAB仿真实现的第二篇随笔,在第一篇中,我们讨论的是信号经过AWGN信道的情况,只用添加固定噪声功率的高斯白噪声就好了.但在实际无线信道中,信道干扰常常是加性噪声.多径衰落的结 ...

  3. 经典功率谱估计及Matlab仿真

    原文出自:http://www.cnblogs.com/jacklu/p/5140913.html 功率谱估计在分析平稳各态遍历随机信号频率成分领域被广泛使用,并且已被成功应用到雷达信号处理.故障诊断 ...

  4. (转) 经典功率谱估计及Matlab仿真

    原文出自:http://www.cnblogs.com/jacklu/p/5140913.html 功率谱估计在分析平稳各态遍历随机信号频率成分领域被广泛使用,并且已被成功应用到雷达信号处理.故障诊断 ...

  5. 使用axes函数在matlab绘图中实现图中图的绘制

    使用axes函数在matlab绘图中实现图中图的绘制 有时为了对细节进行详细说明,需要在一个较大坐标轴上绘制一个小图来对局部进行放大以阐述结果. 这可以通过调用axes函数实现. 下面通过绘制 y=1 ...

  6. MATLAB仿真总结

    MATLAB仿真过程中,编写MATLAB代码的时候犯了很多错误,做了很多蠢事.记录下自己犯错的点点滴滴,并引以为戒.使用MATLAB版本为2014a,以下内容如有不当还请指正. 1. 仿真开始前清理工 ...

  7. 极化码的matlab仿真(1)——参数设置

    根据老师的安排,对于极化码的了解从仿真开始. 仿真的手段有很多种.可以利用C,C++,matlab等进行仿真的实现.其中matlab由于具有强大的函数库,和壮观的矩阵运算能力,被(我们老师课题组)看中 ...

  8. C# if中连续几个条件判断

    C# if中连续几个条件判断 1.if (条件表达式1 && 条件表达式2) 当条件表达式1为true时 using System; using System.Collections. ...

  9. 《量化投资:以MATLAB为工具》连载(2)基础篇-N分钟学会MATLAB(中)

    http://www.matlabsky.com/thread-43937-1-1.html   <量化投资:以MATLAB为工具>连载(3)基础篇-N分钟学会MATLAB(下)     ...

随机推荐

  1. office web apps 部署-搭建域控服务器

    开始第一条先说注意事项:我所配置的环境是用了三台2012server虚拟机,三台虚拟机必须要加下域控,而且登录操作的时候必须以域账号登录,否则测试不通过!在笔记本上搭建了两个虚拟机(window se ...

  2. 【WPF】学习笔记(二)——依旧是一个电子签名板

    这篇博客呢,主要谈谈在实现电子签名功能中踩过的几个坑:1.System.BadImageFormatException异常:2.无法加载DLL“###.dll”,: 找不到指定的模块. (异常来自 H ...

  3. 2016年BAT公司常见的Web前端面试题整理

    1.JavaScript是一门什么样的语言,它有哪些特点? 没有标准答案. 2.JavaScript的数据类型都有什么? 基本数据类型:String,boolean,Number,Undefined ...

  4. Echarts环形进度使用 【1 简单的使用示例】

    使用中说明几点属性:  hoverAnimation:false,//此处查了好久属性//控制鼠标放置在环上时候的交互//这里一个简单的示例使用Echarts 环形图使用方式//常用于统计完成进度等等 ...

  5. get和post方式请求数据,jsonp

    get方式请求数据: p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 19.0px Consolas; color: #289c97 } p.p2 { ma ...

  6. 刚由pc端做移动端的感受

    最近新调到一个项目,由原来的pc端,调到移动端,一切都是那么的不一样,在得知即将调到移动端的时候,听说我们的技术要用到vue,Aladdin,还有es6,有点懵... 我做了以下准备工作: 1,买了本 ...

  7. Gulp和webpack的区别,是一种工具吗?

    疑问:gulp和webpack 什么关系,是一种东西吗?可以只用gulp,不用webpack吗 或者反过来? 它们的区别和概念 ------------------------------------ ...

  8. Elasticsearch中的相似度模型(原文:Similarity in Elasticsearch)

    原文链接:https://www.elastic.co/blog/found-similarity-in-elasticsearch 原文 By Konrad Beiske 翻译 By 高家宝 译者按 ...

  9. jQuery手风琴制作

    jQuery手风琴制作 说起手风琴,想必大家应该都知道吧,简单的来说就是可以来回收缩的这么一个东西,接下来,我就给大家演示一下用jQuery制作一个手风琴菜单! 写jQuery前,我们需要引用一个jQ ...

  10. 分布式缓存技术redis学习—— 深入理解Spring Redis的使用

    关于spring redis框架的使用,网上的例子很多很多.但是在自己最近一段时间的使用中,发现这些教程都是入门教程,包括很多的使用方法,与spring redis丰富的api大相径庭,真是浪费了这么 ...