2 常见模块库(3)

2.9 积分模块(2)

External reset:

在什么条件下进行外部重置操作描述一下每个选项:

  • Rising:当重置信号从非正的值(0或负值)变为正值时,重置积分器的状态。

  • Falling:当重置信号从正值变为非正值(0或负值)时,重置积分器的状态。

  • Either:当重置信号变化时(从0到非0或从非0到0),或者在符号变化时(从正数到负数或反之),重置积分器的状态。

  • Level:当重置信号在当前时间步为非0,或者在前一个时间步为非0而在当前时间步变为0时,重置积分器的状态。

  • Level-Hold:当重置信号在当前时间步为非0时,进入重置状态并持续一段时间,然后恢复到普通积分状态。

在某些建模方案中,使用 State port 可以避免创建代数环。

代数环指的是在 Simulink 模型中,当一个变量的输出值需要反馈到所在模块的输入中时,就会形成一个环路的情况。因为这种情况涉及到对变量自身进行连续时间域的解算,通常需要无限次迭代计算才能得到正确的结果,这会导致模型无法正常运行并进入死循环。代数环通常是模型设计中不希望出现的情况,一旦出现,可能会导致模型计算时间过长,模型无法正常运行等问题。因此,在设计模型时,需要仔细确认是否出现代数环。

2.10 单位延迟模块

在这里插入图片描述

广泛用于:迭代式滤波器,非迭代式滤波器,离散时间传递函数控制系统

2.11 离散时间积分模块

1)Forward Euler method:

y(n) = y(n-1) + K*[t(n) - t(n-1)]*u(n-1)

在这里插入图片描述

前向欧拉法是最简单的一种数值解微分方程的方法。

假设需要求解如下一阶常微分方程:
y'(t) = f(t,y(t)),t ∈ [t0, T],y(t0) = y0
其中,y(t) 表示未知函数,f(t,y) 表示函数 f 的导数。该方程的物理意义是,y‘(t) 是在时间 t 上 y(t) 的变化率,即在 t 时刻的瞬时斜率。
假设有一组离散时间点 {tn},其步长为 h,即 tn+1 = tn + h,以及一组数值解 {yn},则前向欧拉法的递推公式为:
yn+1 = yn + h * f(tn, yn)
即利用函数值在当前时刻(tn,yn)和导数在此时刻的近似值(f(tn,yn)),计算出 yn+1,即下一个时间点的函数值的估计值。

下面是一个通过前向欧拉法求解 y'(t) = -y(t) 的例子:
由于这个方程的导数为负,意味着该函数是一个指数函数,所以 y(t) = exp(-t) 是它的一个解。为了验证前向欧拉法的准确性,我们分别取 h = 0.1 和 h = 0.01,即分别以不同的步长计算函数值估计值。例如,在 h = 0.1 的情况下,我们从 0 开始计算 y(0) 的估计值:
y1 = y0 + h * f(t0, y0) = y0 - 0.1 * y0 = 0.9
然后,再从 t = 0.1 开始计算 y(0.1) 的估计值:
y2 = y1 + h * f(t1, y1) = y1 - 0.1 * y1 = 0.81
以此类推,得到一组数值解 {0.9,0.81,0.729...}。同样的,可以利用 h = 0.01 计算得到一组更为精确的数值解 {0.9901,0.980297,0.970593...}。

显然,随着 h 的减小,数值解精度也会提高,但是计算复杂度也会提高。因此,在实际应用中需要综合权衡,选择适当的步长来对微分方程进行数值解求解。

2)Backward Euler method:

y(n) = y(n-1) + K*[t(n) - t(n-1)]*u(n)

在这里插入图片描述

3)Trapezoidal method:

y(n) = y(n-1) + K*[t(n)-t(n-1)]*[u(n)+u(n-1)]/2

离散时间积分模块:

**Integration Forward Euler Method适用于逼近连续函数在一定时间间隔内的积分值。**具体来说,它将函数在积分区间内进行离散化采样,将时间轴离散化为时间步数,并以前向欧拉法逼近积分值。其计算方式是按一定时间间隔递归计算,并将每次的小积分值相加以求得总积分值。Integration Forward Euler Method通常用于计算无法直接求解积分的微分方程问题,以及求解复杂的积分表达式。

**Accumulation Forward Euler Method适用于逼近连续变化的信号在一定时间间隔内的累积和。**具体来说,它将信号在时间轴上进行离散化采样,并使用前向欧拉法逼近信号的积分或累积和。其计算方式是在每个时间步长上逼近积累值,并将采样值和时间步长的乘积相加得到当前的积累值。Accumulation Forward Euler Method通常用于计算信号的平均值、变化速率、能量或功率等。

因此,Integration Forward Euler Method和Accumulation Forward Euler Method的区别在于它们逼近的对象不同,一个是函数的积分值,一个是信号的积分或累积值;它们的计算方式也有所不同,因为其逼近的对象不同,所涉及的离散化采样和时间步长也不相同。

例子:

在这里插入图片描述

在这里插入图片描述

在使用Discrete-Time Integrator时,需要指定其样本时间(sample time)。**如果将样本时间设置为-1,则模块可能会认为该模块不需要进行采样,即不需要进行积分操作。**因此,如果想使用Discrete-Time Integrator进行积分计算,需要正确设置样本时间,以保证结果的正确性和稳定性。

2.12 数据类型转换模块

Input Data Types: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated

Output Data Types: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated
在这里插入图片描述

fixdt有三种形式:fixdt(A,B),fixdt(A,B,C),fixdt(A,B,D,E)

在这里插入图片描述

Input and Output to have equal有两个选择:Real World Value(RWV)和Stored Integer(SI)

在这里插入图片描述

Integer rounding mode

下面详细解释一下这7种整数舍入模式的含义和应用场景。

  1. Ceiling:向正无穷取整。例如,对于小数2.1,使用Ceiling模式取整后得到整数3;对于小数-2.1,使用Ceiling模式取整后得到整数-2。在金融计算中,Ceiling模式常用于计算利息和税收等问题。
  2. Convergent:根据当前值的奇偶性,向最接近的偶数取整。例如,对于小数2.5,使用Convergent模式取整后得到整数2;对于小数3.5,使用Convergent模式取整后得到整数4。在统计学和信号处理中,Convergent模式常用于对数据进行平滑处理。
  3. Floor:向负无穷取整。例如,对于小数2.1,使用Floor模式取整后得到整数2;对于小数-2.1,使用Floor模式取整后得到整数-3。在计算几何和计算机图形学中,Floor模式常用于计算点的坐标。
  4. Nearest:四舍五入。例如,对于小数2.4,使用Nearest模式取整后得到整数2;对于小数2.6,使用Nearest模式取整后得到整数3。在科学计算和工程应用中,Nearest模式是最常用的整数舍入模式之一。
  5. Round:四舍五入。与Nearest模式相同,Round模式也是四舍五入模式。如果出现平局,则将正数向正无穷大舍入,将负数向负无穷大舍入。
  6. Simplest:自动选择最优的舍入模式。Simplest模式会根据当前的计算场景自动选择最优的舍入模式,以提高计算效率。
  7. Zero:向零取整。相当于正值用地板模式,负值用天花板模式。从绝对值上看,直接抹掉小数部分。例如,对于小数2.1,使用Zero模式取整后得到整数2;对于小数-2.1,使用Zero模式取整后得到整数-2。

例子:

在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Simulink是一个用于模型设计、仿真和实现的环境,它可以用于各种应用程序,如信号处理、通信、控制系统等。Simulink模块包括许多可重用的模块,这些模块可以用于快速构建和仿真复杂的系统模型。 以下是一些常见的Simulink模块: 1. Simulink基础模块:包含常见的数学、逻辑和信号处理模块,如加、减、乘、除、积分、微分、比较器、逻辑门等。 2. Simulink信号处理模块:包含各种滤波器、变换器、采样器、量化器、FFT和DFT等信号处理模块。 3. Simulink控制系统工具箱:包含各种控制器、反馈环路、PID控制器、状态空间控制器、校准器和伺服系统模块。 4. Simulink电气模块:包含各种电气元件和电路模拟器,如电阻、电容、电感、二极管、MOSFET、IGBT、电机等。 5. Simulink汽车模块:包含各种汽车部件和系统模块,如发动机、变速器、转向系统、制动系统、悬挂系统等。 6. Simulink通信模块:包含各种通信系统和协议模块,如调制器、解调器、编码器、解码器、信道模拟器、信噪比计算器等。 7. Simulink图像处理模块:包含各种图像处理和计算机视觉模块,如图像滤波器、形态学运算、边缘检测、特征提取、目标跟踪等。 以上是常见的Simulink模块,但实际上还有很多其他的模块可供选择。您可以根据自己的需要选择合适的模块

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值