Simulink中连续与离散模型的区别(3)

2019-04-22 23:05

QQ截图20130914192025.png (75.22 KB, 下载次数: 1) 下载附件 保存到相册 2013-9-14 19:20 上传

就是说变步长会根据模型状态的变化的快慢适当调节步长,也就是相邻仿真计算的时间间隔,这样在保证了一定精度的同时又减少了仿真的次数,从而减小了仿真时间。

对于continuous solver而言,可以人为设定max step size 和min step size,然后计算机自动选择积分步长h进行数值积分。以下是它的仿真solver(ODE表示常微分方法)

image117.jpg (25.74 KB, 下载次数: 6) 下载附件 保存到相册 2013-9-14 17:39 上传

②fixed step(固定步长)

QQ截图20130914192109.png (36.38 KB, 下载次数: 1) 下载附件 保存到相册 2013-9-14 19:21 上传

就是仿真从头到尾用同一个步长。Note:对于continuous solver而言固定步长可以认为任取;而对于dicretesolver而言固定步长可以auto(即仿真帮你取),若人为取必选要遵守和sample time之间的一定关系,下面会有介绍。

Note: 关于simulink中搭建一些 DSP,fpga等外设模块,仿真通过后自动生成代码,可在实际器件上运行时,此时simulation step一定要用fixed step(固定步长)。具体说明见下图:

image121.jpg (12.75 KB, 下载次数: 6) 下载附件 保存到相册

2013-9-14 17:39 上传 ③discretesolver

image123.jpg (5.62 KB, 下载次数: 6) 下载附件 保存到相册 2013-9-14 17:39 上传

image124.png (13.19 KB, 下载次数: 6) 下载附件 保存到相册 2013-9-14 17:39 上传

solver就是discrete算法,就是不断更新discrete block在各离散点的状态,步长的大小是与模型中的sampletime 有密切关系的,

由上面阐述的差分方程可知,差分方程中T采样时间是固定的,对于discrete solver而言不管是variable step 还是fixed step,simulation step(仿真步)必须要有出现在sample time所有的整数倍上,即simulation step的设置必须使simulator在1T、2T、3T要对模型进行计算仿真,以免错过主要状态的转化。

若一个离散仿真模型中具有多个sample time,那么要保证每个模型在其采用时间的1T、2T、3T都能进行仿真,那么最小步长只能取各个仿真时间的公约数,其中最大公约数又称为fundamental sample time,例子如下

假设仿真的离散模型中有两个采样时间T1=2e-6,T2=4e-6那么其公约数为1e-6和2e-6,而fundamental sample time=2e-6

image126.png (14.72 KB, 下载次数: 7) 下载附件 保存到相册 2013-9-14 17:39 上传

若采用fixed step步长,为了不错过模型在每个采样时刻状态的变化,要求simulator的仿真时间必须要包含每一个采样时刻的整数倍,因此其固定步长必须取各个sampletime 的公约数,可以是1e-6或2e-6,若写auto则为fundamental sample time=2e-6,若写出其他步长,则simulation会提示错误。

image129.jpg (6.48 KB, 下载次数: 6) 下载附件 保存到相册 2013-9-14 17:39 上传 上述仿真过程如下:

QQ截图20130914180941.png (10.64 KB, 下载次数: 6) 下载附件 保存到相册 2013-9-14 18:10 上传

箭头表示simulation step,就是simulator在每一个箭头处都会仿真计算一次;圆圈处表示模型采样时刻(sample time)处,其实只有在这一刻离散模型的状态才有可能发生改变,即差分方程的解才有可能发生改变;由上图可见这样设置步长保证了在每个sample time处simulator都进行了仿真。 若采用variable step步长,simulator会根据模型中的各个sample time自动调整步长,以使得仿真时间时刻等于sample time。

image132.png (12.77 KB, 下载次数: 6) 下载附件 保存到相册 2013-9-14 17:39 上传

此时又有一个max step size的限制,若如上图写的是auto,那么上述仿真过程如下:

QQ截图20130914181017.png (10.21 KB, 下载次数: 6) 下载附件 保存到相册 2013-9-14 18:10 上传

可见simulator只在sample time处才进行仿真计算,这样减少了仿真次数,节约了时间。 若max step size=0.7e-6,那么仿真过程又该如何?如下图:

QQ截图20130914181025.png (10.72 KB, 下载次数: 6) 下载附件 保存到相册 2013-9-14 18:10 上传

可见variable step时,即使有人为maxstep size的限制,simulator总会跟踪sampletime。一

般选择auto即可。

⑥关于powergui的作用

image138.png (1.27 KB, 下载次数: 6) 下载附件 保存到相册 2013-9-14 17:39 上传

image141.jpg (11.47 KB, 下载次数: 6) 下载附件 保存到相册 2013-9-14 17:39 上传

image143.jpg (7.4 KB, 下载次数: 6) 下载附件 保存到相册 2013-9-14 17:39 上传

powergui基本上在simpowersystem的仿真中有两个作用:

ⅰ:离散化系统中的一些连续模型,以便simulator采用discrete算法计算,注意:对本来就已经存在的离散模型不起任何作用,如下图:

image144.jpg (6.86 KB, 下载次数: 7) 下载附件 保存到相册 2013-9-14 17:39 上传

powergui的离散sample time为2e-6,而系统中还有离散模块的sample time为4e-6,powergui的离散作用对它没有影响。

ⅱ:提供各种graphical userinterface tools用于分析仿真过程中的信号以及数据(尤其是FFT分析)。


Simulink中连续与离散模型的区别(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:慢性化脓性中耳炎采用地塞米松治疗的临床价值探析

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: