1 不设置观测量与标定量
首先搭建一个简单模型,用于生成c代码,如下图所示。

编译设置 Ctrl+E


编译 Ctrl + B
对比模型和C代码

我们发现,在生成C代码时,设置的增益Gain 直接生成为默认给定量,不利于后期更改与标定;计算的中间值也没有生成相应的变量,假设在调试过程中需要观测某些量的变化,则不方便。故在通过模型生成C代码时,需要添加相应的标定量与观测量,便于后期的维护。
2 添加观测量与标定量
在slx相同文件夹路径新建.m文件,申明观测量与标定量
观测量的申明:

标定量的申明:

运行该.m文件,会在工作区内生成相应变量:

simulink模型设置:

1.将需要改为标定量的Gain,双击改为.m文件中申明的变量Gain_Param,并选中Interpret vector parameter as 1-D.

2.将需要改为观测量的信号,右键改为.m文件中申明的变量Output_d_Signal,并选中Signal name must resolve to Simulink signal object。
3.模型设置完成

编译 Ctrl + B
编译对比模型与C代码



可以发现,设置完之后的两个量,在生成C代码时,在data.c和data.h中分别定义和申明了变量,后续维护时,可直接调用.h文件修改变量或者观测变量,提高代码的可维护性。
最后
以上就是淡定咖啡豆最近收集整理的关于Simulink生成C代码,标定量(Parameter)与观测量(Signal)的全部内容,更多相关Simulink生成C代码内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复