带有生成的Simulink代码的修剪万博1manbetx

3次观看(最近30天)
Jimmy Lu
Jimmy Lu 2018年7月26日
编辑: Jimmy Lu2018年7月27日
我使用Simulin万博1manbetxk编码器为GRT目标生成C代码。这个想法是生成可执行的,因此不需要MATLAB和SIMULINK来运行模型。万博1manbetx我设法创建了一个包装器C应用程序来使用生成的代码。但是我无法执行修剪操作。为了使模型有用,需要在模拟之前找到修剪条件(在许多情况下,发现修剪条件比仿真更重要)。
在MATLAB的领导下,我能够创建一个牛顿 - 拉夫森修剪程序。雅各布是通过运行 模型命令 要在t = 0处获得输出/导数。问题在于,使用生成的代码,我只有三个可用的外部功能:model_initialize,model_step和model_terminate。model_step更新衍生物/输出,但仅在第一个时间步骤结束时提供结果,而不是在t = 0时提供结果。
Any suggestion as to I should tackle this?

接受的答案

Jimmy Lu
Jimmy Lu 2018年7月27日
编辑:Jimmy Lu 2018年7月27日
这更像是黑客。对于$ 10K的产品,我真的认为将Model_Step方法分为单独的评估和更新方法至关重要。
在RT_ERTODEUPDATECONTINUFSTATES方法中,我绕过之后和包括行的所有内容:
local_numjac(si,x0,f0,fac,dfdx)
在此之前计算状态衍生物,后续部分是集成方案。

更多答案(0)

社区寻宝

在Matlab Central中找到宝藏,发现社区如何为您提供帮助!

开始狩猎!