Azzera filtri
Azzera filtri

Illegal use of a matrix or vector type where a scalar was expected. ERROR IN SIMULINK

39 visualizzazioni (ultimi 30 giorni)
Hi, I am working on a chart block in SIMULINK where my imput is a variable over time. State Of Charge (SOC) of a battery.
When I try to run the model the following error pops up: Illegal use of a matrix or vector type where a scalar was expected.
This message refers to an object in '[SOC<=40]'.
Does anybody know how to fix this? Here I leave some images

Risposte (1)

Shubham Khatri
Shubham Khatri il 3 Feb 2021
Modificato: Shubham Khatri il 3 Feb 2021
Hello,
To my understanding it looks like you are trying to feed an array to stateflow input. The array when fed to a stateflow fiagram will result in an boolean array.
For example
SOC=[20 40 60 120];
ans= SOC >= 40
The output will be [0 1 1 1] rather 1 or 0. That is why you are getting this error. You need to make the stateflow input a scaler with respect to time steps.
Hope it helps

Categorie

Scopri di più su Programmatic Model Editing in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by