Simulink代码生成: 基本模块的使用

1 引言

本文中博主介绍Simulink中最简单最基础的模块,包括In/Out模块(输入输出),Constant模块(常数),Scope/Display模块(显示),Ground/Terminator。这些构成了最简单的输入输出,可以搭建一个模型的最小框架。因为比较简单所以不研究其代码生成。

2 模块使用实例

2.1 In/Out模块

In/Out模块通常用于模型顶层代表整个模型的输入和输出,或者某个子系统中的输入和输出。In/Out模块并不具备实际的数值大小,无法直接用于仿真测试,而是一种抽象出来的输入输出模块。后文介绍其基本用法和注意点。

1)新建一个Simulink模型<Module_Basics.slx>,在模型中拖入In/Out模块;

在这里插入图片描述

可以简单地看到,In模块是输入,所以右侧可以引出信号线接到后面的模块,In模块是输出,所以左侧可以接收其他模块输出的信号线。椭圆形内都有一个数字,当模型或者子系统中有多个输入输出时,可以调整顺序。通常来说需要对In/Out模块进行重命名,以便直观地知道其物理含义。

2)双击In模块或Out模块,可以进行配置,例如配置Port Number,即1)中所说的顺序;
在这里插入图片描述

3)在Signal Attribute页面中,比较重要的配置是Data type和Port dimensions,分别表示数据类型和端口维度,例如数据类型配置成single类型,维度配置成2;

在这里插入图片描述
这表示In模块是单精度浮点型,以及是个长度为2的数组。这一点对于In模块十分重要,尤其是模型顶层的In模块,因为它能够确定好输入的基本信息。对于Out模块一般保持默认,由前方其他模块计算结果得出。

4)在上方工具栏的Information Overlays中选中Singal Dimensions和Base Data Types就可以在模型中的信号线上显示配置的效果;

在这里插入图片描述
在这里插入图片描述

2.2 Constant模块

Constant模块是一个输出常数的模块。

1)在模型中拖入Constant模块,模块中默认的常数值是1,右侧带有一个Port口可以输出信号线;
在这里插入图片描述
2)双击该模块进入配置,可以修改常数数值;
在这里插入图片描述

同理,可以在Signal Attribute页面中配置数据类型;

在这里插入图片描述
默认的配置是继承与Constant模块里面数值的类型,由于数值是1,所以该类型是double类型。

3)在数值中直接体现出类型是一个好的习惯,例如将数值改为single(1),这样就能在模块中直接体现类型了;
在这里插入图片描述
在这里插入图片描述
4)如果输出数组,可以直接在Constant Value中写入数组;

在这里插入图片描述

2.3 Scope/Display模块

Scope与Display模块都可以用于显示输出的数值,区别在于Scope可以显示一段时间的的数值并以图形展示,Display模块只可显示当前数值;

1)在模型中拖入Scope模块和Disp模块,并用一个Constant模块作为其输入;

在这里插入图片描述
2)双击Scope模块,可以看到其中的时间轴(横轴)和数值轴(纵轴),首先需要配置一下Configuration Properties和Style;

在这里插入图片描述
在Configuration Properties中将Sample time改为-1以外的值,这是因为模型当前设置的采样时间是-1,所以Scope模块并不知道应该以多少的采样时间来绘图,必须指定时间;

在这里插入图片描述
在Style中将Marker改为none,表示仅显示折线;
在这里插入图片描述
3)Display模块不用配置,保持默认,但是可以注意一点,可以配置该模块显示的数值为10进制或者是其他进制;

在这里插入图片描述
4)关闭配置,运行模型可以得到显示效果;
在这里插入图片描述
Display模块直接显示了数值,Scope模块需要双击进去观察;

在这里插入图片描述
由于输入的是常量,Scope模块中显示保持为1;

5)除了上述的直观演示,对于Scope模块还有更多常用的配置,例如如果需要接入多个信号,可以在Configuration Properties中设置 Number of input ports,并点击右侧的Layout按钮改变显示视图数量以及布局,例如改成3个输入信号,布局改成3行;

在这里插入图片描述
在模型中Scope模块就会多出3个输入口。

在这里插入图片描述
仿真之后也会以三张视图显示;

在这里插入图片描述
6)在Scope界面上方的工具栏可以进行缩放,测量等操作,比较简单就不演示了;
在这里插入图片描述

2.4 Ground/Terminator模块

Ground/Terminator模块俗称为接地模块,常用于一些暂时用不到的信号线和预留的接口。模块如下所示:

在这里插入图片描述
例如某一个In模块暂时用不到,就可以线放在模型中接入Terminator模块中。Ground/Terminator模块的使用不会影响模型仿真或者代码生成。

3 总结

本文讲了一些基本模块的使用,其实之前已经写了大量的Simulink内容,但是忽略了最基本的东西,所以回来补充一下。

>>返回个人博客总目录

  • 18
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值