MATLAB: Error using Simulink.S​imulationM​anager

dataensembleMATLABpredictive maintenancePredictive Maintenance ToolboxSimscapesimulationsimulation inputsimulation managersimulink

I am trying to use the function generateSimulationEnsemble() to generate different simulation data for a Simulink (Simscape) model. However, I am always getting the following error: "Error using Simulink.SimulationManager SimulationInputs must be a nonempty array of Simulink.SimulationInput objects". The thing is my input simIn is not an empty array, it is an array of 1×4 with SimulationInput objects (as seen in the code below). I also tried running the examples given in the documentation: Generate and Use Simulated Data Ensemble and Using Simulink to Generate Fault Data. And I can run the example live script codes and the models without any problem, I can generate and store the data for different simulations. But in my code and model, I constantly get the error above. I checked my input simIn and it really is not empty. I really do not understand what I'm missing and it is getting a bit frustrating. Here is my code, base workspace and model:
% Open the model
model = "trialprj";
open_system(model)
% Generate the desired resistance values
res_val = 2:2:8;
% Generate the SimulationInput objects
for i = numel(res_val):-1:1
simIn(i) = Simulink.SimulationInput(model);
simIn(i) = setVariable(simIn(i), "resistance", res_val(i));
end
% Create the data storage directory
mkdir Data
disp("Directory created for storage")
location = fullfile(pwd, "Data");
% Generate simulation data
[status, E] = generateSimulationEnsemble(simIn, location);

Best Answer

The input ModelName to the Simulink.SimulationInput should be of type char and not string.
model = 'trialprj';
Related Question