MATLAB: SetVariable in simscape model through SimulationInput object( MATLAB web app server)

appdesignerconfigurefordeploymentMATLABMATLAB CompilerMATLAB Web App ServersetvariableSimscapesimulinkcompilerwebappserver

Hi everyone,
I am trying to set the value of a parameter that stays inside of a simscape block, using a web app aplication that was deployed on the server using MATLAB web app server.
The documentation says that the following Simulink functions and classes are deployable:
Functions:
Classes:
I am using setVariable which allow me to set variables for a simulation through SimulationInput object.
SimInp = SimInp.setVariable('Tetha',app.tethaSpinner.Value);
In this way, I can modify certain parameters of the model but when the parameter is inside a Simscape block (elecrical , multibody, etc…) I am not able to modify the parameter anymore.
This problem only happens when I have to configure the application for deployment on the server using:
SimInput=Simulink.SimulationInput('SpringDamper');
SimInput=simulink.compiler.configureForDeployment(SimInput)
So, I was wondering if the problem is that the method SetVariable does not works with Simscape's blocks but only with Simulink Classic blocks.
Any suggestion would be great
Thank you

Best Answer

  • I solved my problem setting the simscape variables at Run-time variables, in this way when the parameters of a Simscape block are changed there is no need to regenerate the C code therefore the deployment of the app will succeed.