Simulink代码生成:数学运算
创始人
2024-11-11 12:35:24
0

文章目录

  • 1 引言
  • 2 模块使用实例
    • 2.1 Math Function模块
    • 2.2 Trigonometric Function模块
    • 2.3 Abs模块
  • 3 代码生成
  • 4 总结

1 引言

Simulink中提供了大量的数学运算模块,对应C语言中中用于数学计算的函数,例如幂函数、开平方、三角反三角函数、绝对值等。本文介绍一些常用的Simulink数学运算模块,并通过生成代码的方式与C语言中进行对比。

2 模块使用实例

2.1 Math Function模块

Math Function模块表示一些基本的数学运算,在Simulink中拖出一个Math Function模块,如下图:
在这里插入图片描述
模块默认是一个指数函数的功能。双击模块可以在Function下拉菜单中切换该模块的功能:
在这里插入图片描述
例如切换成Square,即平方,点击确认后,模块的图形就会变为相应的数学表达式,非常好理解。
在这里插入图片描述
对该模块给一个常数输入和display模块观测,再仿真一下,可以直观地了解其用法。

在这里插入图片描述
模块用法比较简单,可以根据自身的需求切换其功能进行使用。具体下拉菜单的功能可以直接在帮助文档中查看详细的解释。
在这里插入图片描述

2.2 Trigonometric Function模块

Math Function模块表示三角函数运算,在Simulink中拖出一个Math Function模块,如下图:
在这里插入图片描述
模块默认是一个正弦函数的功能。双击模块可以在Function下拉菜单中切换该模块的功能:
在这里插入图片描述
同样地,对该模块给一个常数输入和display模块观测,再仿真一下,可以直观地了解其用法。
在这里插入图片描述
这里需要注意,三角函数模块输入的信号是以弧度为单位,如果是角度单位,进行一个简单的系数转换即可。

2.3 Abs模块

Abs模块表示绝对值运算,在Simulink中拖出一个Abs模块,如下图:
在这里插入图片描述
对该模块给一个常数输入和display模块观测,再仿真一下,可以直观地了解其用法。
在这里插入图片描述
该模块的使用也是比较简单的。

3 代码生成

在Simulink中建模如下:
在这里插入图片描述
分别使用了上述三种模块进行简单的输入输出建模,接着Ctrl+B生成代码。首先看到在Math_Module.c主程序中包含了标准库头文件,这样可以调用相关的数学函数:
在这里插入图片描述
接着看一下主程序中的step函数

在这里插入图片描述
在step函数中可以看到三行代码,对应了模型中的三组输入输出的计算。

注意,由于模型默认的是double类型(双精度浮点类型)的输入输出,所以sin()函数和fabs()函数都是返回的double类型的函数。

如果在模型中把输入port模块的类型改成single,那么生成的代码会对应改变:
在这里插入图片描述
正弦函数和绝对值函数会变成sinf()和fabsf()。

4 总结

本文研究了Math Function模块、Trigonometric Function模块和Abs模块的用法,在实践中使用的频率是比较高的。

>>返回个人博客总目录

相关内容

热门资讯

8分钟了解(MG棋牌)外挂透明... 8分钟了解(MG棋牌)外挂透明挂辅助安装(辅助挂)德州论坛(2024已更新)(哔哩哔哩);1、点击下...
第5分钟了解“赣牌圈小程序破解... 第5分钟了解“赣牌圈小程序破解版”详细透视开挂辅助脚本-哔哩哔哩;超受欢迎的赣牌圈小程序破解版稳赢小...
第7分钟发现!哈糖大菠萝开挂,... 第7分钟发现!哈糖大菠萝开挂,hhpoker辅助挂是真的吗,2025新版总结(有挂攻略)-哔哩哔哩1...
第8分钟了解“浙江游戏大厅自建... 第8分钟了解“浙江游戏大厅自建房间”详细透视开挂辅助攻略-哔哩哔哩,浙江游戏大厅自建房间是用手机号来...
第七分钟了解(天天九州麻将)外... 您好,天天九州麻将这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家在这款...
第七分钟透视!wpk辅助插件,... 第七分钟透视!wpk辅助插件,wepoker私人局辅助,新2025教程(了解有挂)-哔哩哔哩1、许多...
七分钟了解“广东雀神挂件骗局”... 七分钟了解“广东雀神挂件骗局”详细透视开挂辅助工具-哔哩哔哩;1、超多福利:超高返利,海量正版游戏,...
第6分钟了解(weopke真的... 第6分钟了解(weopke真的有挂)外挂透明挂辅助app(辅助挂)黑科技教程(2021已更新)(哔哩...
五分钟私人局!wepoker底... 五分钟私人局!wepoker底牌透视脚本,wepoker辅助下载,安装教程(有挂技巧)-哔哩哔哩1)...
十分钟了解“传送屋辅助k”详细... 十分钟了解“传送屋辅助k”详细透视开挂辅助攻略-哔哩哔哩;传送屋辅助k最新软件透明挂直接下载安装,这...