The 'ss' class does not support code generation.

5 Ansichten (letzte 30 Tage)
Bavly Atef
Bavly Atef am 2 Feb. 2023
Kommentiert: Bavly Atef am 3 Feb. 2023
I am trying to implement kalman fiter in simulink, so I am using MATLAB function block to get the gains of Kalman filter. But I Can't resolve this error: "The 'ss' class does not support code generation." I attached a photo of my code.

Akzeptierte Antwort

Paul
Paul am 3 Feb. 2023
Hi Bavly,
The only two lines in that function (it would be better if you pasted in text, rather than a screen capture) that are not eligible for code generation are the definition of the plant and the call to kalman. The following approach might work
Define a separate m-function on your path
function L = mykalman(A,B,C,D,Q,R)
[kalmf,L] = kalman(ss(A,B,C,D),Q,R);
end
Then the code in the Matlab Fucntion would be:
function [A,B,C,D,L] = fcn(R0,R1,R2,C1,C2,Em,Soc)
coder.extrinsic('mykalman')
% put lines of code here to compute A,B,C,D,Q,R, then
L = mykalman(A,B,C,D,Q,R);
end
Alternatively, you might want to take a look at: Kalman Filter block
  1 Kommentar
Bavly Atef
Bavly Atef am 3 Feb. 2023
Great, thanks alot
It worked, but first I had to preinitialize L .

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Produkte


Version

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by