Save and Reload Parameters by Using the MATLAB Language
After you load a real-time
application that has parameter
values, you can save those values to a parameter set file on the
target computer. You can then later
reload these parameter values to the same real-time
application. To ease the process of
tuning parameters, use the ParameterSet
object workflow. For example code that demonstrates this
workflow, see the ParameterSet
object.
When your parameter set values are tuned, you can:
Export the values from the parameter values to the model by using
exportToModel
function.Save the
ParameterSet
object as a MAT file and share this MAT file with other developers.Add the parameter set into the real-time application MLDATX file and set the parameter set as the startup parameter set by using the
addParamSet
andupdateStartupParameterSet
functions.
You can save parameters from your real-time application while the real-time application is running or between runs. You can save and restore parameters in your real-time application without rebuilding the Simulink® model. Load parameters to the same real-time application from which you saved the parameter file. If you attempt to load a parameter file to a different real-time application or to a real-time application that has changed since the parameter set was created, the load issues an error.
You can use the syncWithApp
function to synchronize an out-of-sync parameter set object with
the specified real-time application. This function synchronizes the parameter name-value
pairs and synchronizes the model checksum saved in the parameter set object with the
real-time application. After synchronizing, the parameter set that you saved from the
original application can be loaded into the most updated application on the target
computer.
You save and restore parameters by using the
target object methods saveParamSet
and loadParamSet
.
Requirements:
Create a
Target
object namedtg
connected to the target computer.Load a real-time application on the target computer.
There are parameters to save from the application.
Save Current Set of Real-Time Application Parameters
To save a set of parameters from a real-time
application to a parameter set
file, use the saveParamSet
function. The
real-time application can be
loaded or running.
This example uses the model slrt_ex_osc_outport
. To open
this model, in the MATLAB Command Window, type:
open_system((fullfile(matlabroot,'toolbox','slrealtime', ... 'examples','slrt_ex_osc_outport')))
Select a descriptive file name for the parameters. For example, use the model name in the file name.
In the MATLAB Command Window, type:
% build model and load real-time application mdlName = 'slrt_ex_osc_outport'; slbuild(mdlName); tg = slrealtime('TargetPC1'); load(tg,mdlName); % save parameter set to file paramSetName = 'outportTypes'; saveParamSet(tg,paramSetName);
The
Simulink
Real-Time™ software creates a parameter set file named
outportTypes
on the
target computer.
Load Saved Parameters to Real-Time Application
To load a parameter set file of saved parameters to a real-time
application, use the loadParamSet
function. Load
parameters to the same real-time application from which you save the parameter set
file. If you attempt to load a parameter file to a different real-time application or
to the a real-time application that has changed since the parameter set was created,
the load issues an error. This example uses the model
slrt_ex_osc_outport
. You must have a parameters file saved from
an earlier run of saveParamSet
to perform this
procedure.
To open this model, in the MATLAB Command Window, type:
open_system((fullfile(matlabroot,'toolbox','slrealtime', ... 'examples','slrt_ex_osc_outport')))
From the collection of parameter set files on the
target computer, select the
one that contains the parameter values to load. To get a list of available
parameter set files, use the listParamSet
function.
In the Command Window, type:
% load real-time application mdlName = 'slrt_ex_osc_outport'; tg = slrealtime('TargetPC1'); load(tg,mdlName); % load parameter set file paramSetName = 'outportTypes'; loadParamSet(tg,paramSetName);
The
Simulink
Real-Time software loads the parameter values into the real-time
application. For an example
that shows how to get the parameter values from a ParameterSet
object and use the object in the loadParamSet
function, see
loadParamSet
.
View or Edit Parameter Values in Parameter Set
To view or edit parameters in a parameter set, use the ParameterSet
object workflow. For more information about this workflow,
see Save and Reload Parameters by Using the MATLAB Language.
Build the model and load the real-time application.
mdlName = 'slrt_ex_osc_outport'; slbuild(mdlName); tg = slrealtime('TargetPC1'); load(tg,mdlName);
Save the parameter set to a file.
paramSetName = 'outportTypes';
saveParamSet(tg,paramSetName);
Import the parameter set into a ParameterSet
object on the
development computer.
myParamSet = importParamSet(tg,paramSetName);
Open the ParameterSet
in the Simulink Real-Time Parameter
Explorer UI. In the explorer, you can view and edit the parameter values in the
object.
explorer(myParamSet);
After tuning the parameters, export the modified parameter set to the target computer and load the parameters into the real-time application.
exportParamSet(tg,myParamSet); loadParamSet(tg,myParamSet.filename);
Add or Update Startup Parameter Set for Application
You can add a ParameterSet
object to a
real-time application by using the addParamSet
function. After adding one or more
ParameterSet
objects to an application by using the addParamSet
function, you can choose which of these parameter sets is
loaded into the real-time application on startup by using the
updateStartupParameterSet
function.
This example loads a real-time application, imports the parameters into a
ParameterSet
object, adds the
ParameterSet
object to a real-time application, and selects
the parameter set as the startup parameter set for the application.
load(tg,mdlName);
paramSetName = 'outportTypes';
saveParamSet(tg,paramSetName);
myParamSet = importParamSet(tg,paramSetName);
addParamSet(app_object,myParamSet);
updateStartupParameterSet(app_object,myParamSet);
See Also
delete
| explorer
| exportToModel
| set
| syncWithApp
| exportParamSet
| getparam
| getParameters
| importParamSet
| listParamSet
| loadParamSet
| saveParamSet
| setparam
| addParamSet
| updateStartupParameterSet
| Application
| ParameterSet
| Target