Simulink equivalent of inputname () or genvarname() for logging
2 views (last 30 days)
Show older comments
Hello!
I would like to know if I can find an equivalent of MATLAB function inputname() or genvarname() for using in Simulink block.
Actually, I get an error
Function 'inputname' not supported for code generation.
I used a MATLAB block with code
function out = getVarName(var)
out = inputname(1);
end
In fact, this function I need for logging/debugging on ARM-target (using Simulink coder), so I don't want to change variables to structures.
By the way, could you please recomend me logging techniques for Simulink coder?
Thanks in advance!
2 Comments
madhan ravi
on 14 Dec 2023
Could you please tell the use case of using inputname() for this purpose?
Accepted Answer
Fangjun Jiang
on 14 Dec 2023
Edited: Fangjun Jiang
on 14 Dec 2023
Not sure if you are aware, the MATLAB Function block is typically executed at every simulation step. So even if inputname() and genvarname() worked, you would give it a name at every simulation step?? Of course, there are ways to make it run only once per simulation, but that is not how it is typically done to log or debug signal data.
To log a signal, select the signal line, right click, select "Properties" and fill the dialog. This has to be done pre-simulation. It can't be done while the simulation is running. This is for simulation. For data logging in a real-time target, see
web(fullfile(docroot, 'slrealtime/ug/signal-logging.html'))
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!