Error with simout = sim (...)

3 次查看(过去 30 天)
Tania Izquierdo
Tania Izquierdo 2016-11-14
回答: nick 2024-10-3
I have defined three signals with timeseries, then I want to simulate a model loading this three signals I have a error with the function simout = sim ('model', 'LoadExternalInput','on', 'ExternalInput','inp', 'ExternalInput','inp1','ExternalInput','inp2'); Error using model (line 41) The number of external inputs must be equal to the number of root-level input port blocks. Root-level input port blocks include Trigger and Enable blocks. The model contains 3 root-level input port blocks, but 1 external inputs were specified in Configuration Parameters -> Data Import/Export -> Input. I don't know why doesn't recognize the signals

回答(1 个)

nick
nick 2024-10-3
Hi Tania,
The error is due to the way format of specifying external inputs for Simulink model. In MATLAB R2016, you can specify multiple external inputs as a single concatenated variable, as shown:
inputData = [timeVector, inp.Data, inp1.Data, inp2.Data];
simout = sim('model', 'LoadExternalInput', 'on', 'ExternalInput', 'inputData');
You can refer to 'Model Parameters' in Simulink to learn more about 'ExternalInput'. You can access the documentation using the following command in MATLAB Command window:
doc Model Parameters

类别

Help CenterFile Exchange 中查找有关 Save Run-Time Data from Simulation 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by