Simulink Compiler の 1 つのシミュレーション​状態を保存して別セッ​ションで続行すること​はできますか?

1 つの Simulink Compiler セッションでシミュレーション状態を保存し、別の Simulink Compiler セッションでそのシミュレーション状態を読み込みたいです。
たとえば、デプロイしたシミュレーションを一度実行して、時刻 t = 10 までシミュレートします。その後、再度デプロイしたシミュレーションを開いて実行すると、前回の実行が終了した位置から続行します。つまり、t = 10 から t = 20 までシミュレートします。これは可能ですか?

 Respuesta aceptada

MathWorks Support Team
MathWorks Support Team hace alrededor de 5 horas

0 votos

デプロイ済みアプリケーションから Operating Point をファイルに保存できます。次のセッションでこのファイルを読み込み、モデルに Operating Point をロードできます。
詳細は添付のファイルをご覧ください。
The code is also pasted below:
%% Set simulation input
mdl = 'vdp';
simIn = Simulink.SimulationInput(mdl);
simIn = setModelParameter(simIn, ...
  "SaveFinalState","on","SaveOperatingPoint","on");
simIn = simulink.compiler.configureForDeployment(simIn);
%% If the operating point file exists, load it
if isfile('xFinal.mat')
  load xFinal.mat
  simIn = setInitialState(simIn, xFinal);
  simIn = setModelParameter(simIn, "StartTime", string(xFinal.snapshotTime));
  simIn = setModelParameter(simIn, "StopTime", string(xFinal.snapshotTime+10));
end
%% Setup a model input
testData = Simulink.SimulationData.Dataset;
testData.Name = 'testData';
testData = testData.addElement(timeseries([0,20], [0,20]));
simIn = simIn.setExternalInput(testData);
%% run model
simOut = sim(simIn);
%% Save the operating point or later use
xFinal = simOut.xFinal;
save xFinal xFinal
save simOut simOut
simOut.data = simOut.yout{1}.Values

Más respuestas (0)

Categorías

Productos

Etiquetas

Community Treasure Hunt

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

Start Hunting!