2 常见模块库(2)

本文介绍了Simulink中用于信号处理的关键模块,包括Mux(复用器)用于组合多个信号,Demux(分路器)用于拆分信号,Switch模块根据条件选择输出,Gain模块实现信号增益,以及关系和逻辑运算模块用于比较和逻辑操作。此外,还讨论了积分器Integrator的使用及其饱和界限设定。
摘要由CSDN通过智能技术生成

2.5 复用器与分路器模块

在这里插入图片描述

Mux是一种用于将多个信号组合成一个信号的模块。Mux模块的名称来源于多路复用器(Multiplexer)。
使用Mux可以将多个输入信号组合成一个向量或矩阵,以便在模型中传递和处理。Mux模块可以接受任意数量的输入信号,并将其打包成一个向量或矩阵,然后将打包后的信号输送到下一个模块或子系统中。

Demux是一种用于将一个信号拆分成多个信号的模块。Demux模块的名称来源于分路器(Demultiplexer)。
使用Demux可以将一个信号分成多个信号,并将这些拆分后的信号分别连接到后续的信号处理模块中。通常,Demux与Mux相反,是将一个输入信号传递给多个输出信号的过程

2.6 开关模块和增益模块

在这里插入图片描述

Switch模块的作用主要是根据第二个开关输入的值来判断输出是第一个还是第三个。模块的3个端口中,第1个和第3个端口为输出端口提供输出值,输出端口输出第1个输人口还是第3个输口的值中第2个输人口的值和条件关系共同决定。参数对话框中的条件关系洗择对第2个端口进行条件判断,.如果判断为真,则输出口输出第1个端口的信号;否则输出第3个输人端口的信号。对第2个端口进行判断的条件关系有3种选择:1)第2个端口大于或等于某个阈值。2)第2个端口大于某个阈值。3)第2个端口不等于0。

gain:第一个运算方式:数乘运算;第二的运算方式:矩阵运算 k*u; 第三种运算方式:矩阵运算 uk;第四种运算方式:矩阵乘列向量

在这里插入图片描述

2.7 关系运算及逻辑运算模块

在这里插入图片描述

**关系运算符(Relational Operators)**是一种在Simulink中用于比较两个或多个输入信号的运算符。关系运算符将输入信号相比较并生成一个二进制输出信号,表示比较结果的真假。常见的关系运算符有以下几种:

1. ==(等于):这个运算符表示输入信号是否相等,如果相等则输出1,否则输出0。
2. ~=(不等于):这个运算符表示输入是否不相等,如果不相等则输出1,否则输出0。
3. <(小于):这个运算符表示输入信号是否小于另一个输入信号,如果是,则输出1,否则输出0。
4. > (大于):这个运算符表示输入信号是否大于另一个输入信号,如果是,则输出1,否则输出0。
5. <=(小于等于):这个运算符表示输入信号是否小于或等于另一个输入信号,如果是,则输出1,否则输出0。
6. >=(大于等于):这个运算符表示输入信号是否大于或等于另一个输入信号,如果是,则输出1,否则输出0。

在Matlab和Simulink中,可以使用下列函数来判断一个变量是否为无穷大、NaN或者有限值:

  • isinf: 判断是否为无穷大,如果输入变量为Inf或者-Inf,则返回True,否则返回False。
  • isnan: 判断是否为NaN,如果输入变量为NaN,则返回True,否则返回False。
  • isfinite: 判断是否为有限值,如果输入变量不是NaN、Inf或者-Inf,则返回True,否则返回False。

这些函数可以用于在程序中对输入数据进行错误检测和处理。在一些情况下,可能需要对数据进行范围限制或者修正,在这种情况下可以通过这些函数来判断输入是否合法,避免程序中出现未定义行为。例如,在Simulink中,可以在使用除法模块前,通过判断除数是否为0和是否为NaN,来避免程序中出现未定义的除0行为或者NaN结果。

NaN(Not a Number)是一种特殊的数值,通常用于表示无效的计算结果。在Simulink中,NaN值可以表示无意义的运算结果或未定义的数值。

Logical Operator模块可以支持这些不同类型的逻辑运算操作。下面是这些运算类型在Simulink中的实现方法:

  • AND:在Logical Operator模块中选择“AND”运算类型,将多个输入信号连接到模块的输入端口上,得到的输出信号在所有输入信号都为true时为true。
  • OR:在Logical Operator模块中选择“OR”运算类型,将多个输入信号连接到模块的输入端口上,得到的输出信号在至少一个输入信号为true时为true。
  • NAND:在Logical Operator模块中选择“AND”运算类型,将多个输入信号连接到模块的输入端口上,然后将输出信号连接到一个NOT Logic Operator模块上,输出信号将是与逻辑运算的结果的逻辑取反,即至少一个输入信号为false时为true。
  • NOR:在Logical Operator模块中选择“OR”运算类型,将多个输入信号连接到模块的输入端口上,然后将输出信号连接到一个NOT Logic Operator模块上,输出信号将是或逻辑结果的取反,即没有输入信号为true时为true。
  • XOR:在Logical Operator模块中选择“XOR”运算类型,将多个输入信号连接到模块的输入端口上,得到的输出信号在输入信号中为奇数true时为true,否则为false。
  • NXOR:在Logical Operator模块中,使用与XOR相同的方法,并将输出信号连接到一个NOT Logic Operator模块上,输出信号将是XOR运算结果的逻辑取反,即输入信号中有偶数true时为true。
  • NOT:在Logical Operator模块中选择“NOT”运算类型,将一个输入信号连接到模块的输入端口上,得到的输出信号是该输入信号的逻辑取反

2.8 积分模块(1)

外部输入:

在Simulink中,可以使用积分模块 Integrator 对信号进行积分。对积分器的上下限进行设置,请参照以下步骤:

  1. 打开模型,在模型中添加 Integrator 模块并连接输入信号。
  2. 右键单击 Integrator 模块并选择 Limit output
  3. 在弹出的参数对话框中,输入积分器的上下限值,即 Lower Saturation LimitUpper Saturation Limit
  4. 单击 OK 按钮保存更改并关闭参数对话框。

如果在积分模块 Integrator 开启了饱和界限功能,并且初始值不在饱和界限范围内,那么在模拟过程中模型会报告一个错误。

当然也可以使用Saturation模块对上下限范围进行限定。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值