I need a substitute for the eval function in Simulink?

조회 수: 3 (최근 30일)
Robert Brown
Robert Brown 2021년 11월 4일
답변: prabhat kumar sharma 2024년 7월 2일
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.
Stefan Andrei
Stefan Andrei 2023년 3월 14일
Alright, thank you for the quick response.

댓글을 달려면 로그인하십시오.

답변 (1개)

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

카테고리

Help CenterFile Exchange에서 Programmatic Model Editing에 대해 자세히 알아보기

제품


릴리스

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by