主要内容

系统中的采样时间

纯离散系统

纯离散系统完全由离散块组成,可以使用固定步长或变步长求解器进行建模。模拟离散系统需要模拟器在每个采样时间点执行一个模拟步骤。对于一个多速率离散系统一个系统,它的块Simulink金宝app®以不同的速率进行采样——步骤必须以每个系统采样次数的整数倍进行。否则,模拟器可能会错过系统状态中的关键转换。Simulink软件选择的步长取决于用于模拟多金宝app速率系统的求解器类型和基本采样时间。

基本采样时间多速率离散系统的最大二重值是该系统实际采样次数的整数除数。例如,假设一个系统的采样时间为0.25秒和0.50秒。在这种情况下,基本采样时间是0.25秒。假设采样时间是0.50和0.75秒。基本采样时间还是0.25秒。

基本采样时间的重要性直接关系到您是指导Simulink软件使用固定步长还是变步长离散求解器来求解多速率离散系统。金宝app固定步长求解器将模拟步长设置为离散系统的基本采样时间。相反,可变步长求解器改变步长以等于实际采样时间命中之间的距离。

下图说明了固定步长求解器和变步长求解器之间的区别。

在图中,箭头表示模拟步骤,圆圈表示采样命中时间。如图所示,如果基本采样时间小于被模拟系统的任何实际采样时间,那么变步长求解器需要更少的模拟步骤来模拟系统。另一方面,固定步长求解器需要更少的内存来实现,如果其中一个系统采样时间是基本的,那么它会更快。在需要从Simulink模型生成代码的应用程序中,这可能是一个优势金宝app金宝app仿真软件编码器™).在任何一种情况下,由Simulink提供的离散求解器都是针对离散系统进行优化的;金宝app然而,你可以用任何一个解算器来模拟一个纯离散系统,并得到等效的结果。

考虑下面一个简单的多费率系统的例子。对于本例,DTF1离散传输Fcn样品时间设置为0.1 [1][],它的偏移量为0.1.的样品时间DTF2的离散传输FcnBlock被设置为0.7,没有补偿。求解器设置为变步长离散求解器。

控件运行模拟并绘制输出楼梯函数

set_param (bdroot‘SolverType’,‘变步’,‘SolverName’,‘VariableStepDiscrete’,‘SaveFormat’,“数组”);simOut = sim(broot,'Stoptime','3');楼梯(simOut.tout simOut.yout,“- *”,“线宽”,1.2);包含(时间(t));ylabel('输出(着干活,out2) ');传奇(t_s =[0.1],“t_s = 0.7”,“位置”,“最好”)

生成下面的图。

(有关sim卡命令。看到以编程方式运行模拟)。

如图所示,因为DTF1Block有一个0.1抵消,DTF1块没有输出直到T = 0.1.同样地,传递函数的初始条件为零;因此,DTF1的输出y(1)在此之前为零。

混合动力系统

混合动力系统同时包含离散块和连续块,因此同时具有离散和连续状态。然而,Simuli金宝appnk求解器将任何同时具有连续和离散采样时间的系统视为混合系统。有关混合系统建模的信息,请参见混合系统建模

在方框图中,术语混合既适用于混合系统(混合连续-离散系统),也适用于具有多个采样时间的系统(多速率系统)。当您执行操作时,这样的系统会变成黄色更新图带采样时间显示颜色转的”。作为一个例子,考虑下面的模型,它包含一个原子子系统“离散巡航控制器”和一个虚拟子系统“汽车动力学”。(见ex_execution_order.)

汽车模型

样品时间选项设置为所有,一个更新图将虚拟子系统变为黄色,表示它是一个混合子系统。在这种情况下,子系统是一个真正的混合系统,因为它有连续和离散的采样时间。如下图所示,离散输入信号D1与连续速度信号v结合,得到一个连续的积分器输入。

更新图后的汽车模型

更新后的汽车动力学子系统

现在考虑一个包含三个速率的多速率子系统正弦波源块,每个源块都有一个唯一的采样时间——分别为0.2、0.3和0.4。

更新图后的多速率子系统

一个更新图将子系统变为黄色,因为子系统包含多个采样时间。如图框图所示正弦波块具有离散采样次数D1, D2, D3,输出信号在小步长固定。

在评估一个系统的多个采样时间时,Simulink不考虑常数[inf, 0]或异步[-1,-n]采样金宝app时间。因此,由一个输出恒定值的块和一个输出离散采样时间的块组成的子系统不会被指定为混合。

混合注释和着色对于评估模型中的子系统是否继承了正确或预期的采样时间非常有用。

相关的话题