How can I tell EmbeddedCoder/SimulinkCoder to not evaluate expressions containing Matlab tunable parameters when generating C-code from Simulink?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi, I have a saturation block in Simulink where I set upper and lower limits based on a tunable parameter and have the output port generated as global variable:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/165017/image.png)
In the generated C-code the lower limit expression is evaluated to:
srt_gyroXsaturated = rtU.gyro_X >= srt_gyroLimitX ? srt_gyroLimitX :
rtU.gyro_X <= -0.349040151F ? -0.349040151F : rtU.gyro_X;
What I want is that '-srt_gyroLimitX' is not evaluated to '-0.349....' but left "as is" in the generated code. How can I achive that?
0 Kommentare
Antworten (2)
Saurabh Gupta
am 2 Aug. 2017
For tunability in code generation, the parameter needs to be a variable. Parameters specified as expressions are evaluated and inlined. You could specify the limits as 2 separate variables to ensure that code generation preserves the tunability.
Ben Rancici
am 30 Sep. 2019
Same question as Matphree: how to prevent block parameter evaluation in the generated code?
0 Kommentare
Siehe auch
Kategorien
Mehr zu Simulink Coder finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!