I need a substitute for the eval function in Simulink?
6 次查看(过去 30 天)
显示 更早的评论
I have a program in simulink and need to set/chage a number of variable values while executing. I found this can easily do this in Matlab using the eval function, but can't find something similar on the Simulink side. One need-to-know is the executable is running on a remote machine.
Example of it working in Matlab:
Say variable foo = 1, I can send a UDP message with the string "foo=2", and process that string with eval function, now foo=2.
I've also tried assignin(), but it too is "not supported for code generation"
Any help would be appreciated.
3 个评论
回答(1 个)
prabhat kumar sharma
2024-7-2
Hi Robert,
I understand that you want parameter tuning in Simulink similar to MATLAB's eval(). Here are two methods that might be useful:
Method 1: Using Simulink Real Time Explorer
You can use Simulink Real-Time Explorer to change parameters in your real-time application while it is running or between runs. This method does not require rebuilding the Simulink model or setting it to external mode.
https://www.mathworks.com/help/slrealtime/ug/tune-parameters-with-xpc-target-explorer.html
Method 2: Tune Parameters by using simulink external mode.
Here are the steps you can follow:
- Use external mode in Simulink to allow real-time parameter tuning.
- Define the parameters you want to change as tunable parameters.
- Use set_param to change the values of these parameters dynamically while the model is running.
- Set up a communication mechanism (e.g., UDP) to receive commands and execute them using set_param.
You Can refer this docuemntation for further reference:
I hope it helps!
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Programmatic Model Editing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!