I need a substitute for the eval function in Simulink?

2 次查看(过去 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 个评论
Robert Brown
Robert Brown 2023-3-14
I never recieved any feedback, this would be a super useful routine. We had to just predetermine all the variables we would want to change and create unique messages for each, super annoying.

请先登录,再进行评论。

回答(1 个)

prabhat kumar sharma
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!

类别

Help CenterFile Exchange 中查找有关 Simulink Functions 的更多信息

产品


版本

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by