Error using Classificationlearner model in Simulink
Afficher commentaires plus anciens
I used Classification learner App with a Fine KNN model that I called 'model_test'.
Now I want to use it in simulink.
So, I used a function block with the inputs of my model and 'model_test' as a parameter :
function y = predic(Fflown,N1n1,N2n1,N3n1,Taun1, model_test)
coder.extrinsic('model_test');
coder.extrinsic('model_test.predictFcn');
T=[Fflown,N1n1,N2n1,N3n1,Taun1];
y=0;
y = model_test.predictFcn(T);
end
But I run the simulink model, I have the error :
'MATLAB class 'function_handle' found at 'model_test.predictFcn' is unsupported.
Parameter 'model_test''
I saw that I may should use save CompactModel to export my Classification learner but when I try it I have another error :
"Undefined function 'toStruct' for input arguments of type 'ClassificationKNN'.
Error in saveCompactModel (line 17)
classificationStruct = toStruct(classificationObj); %#ok<NASGU>""
Réponse acceptée
Plus de réponses (1)
Tugce Anliak
le 9 Juil 2019
Hi i have same issue with a regressionlearner Model that i trained with the App --> saved Model or compact model and try to use MatlabFunction in Simulink and get Errors.
function y = fcn(x1,x2,x3,x4,x5)
y = trainedModel08072019.predictFcn(x1,x2,x3,x4,x5);
This is the Error I get from Matlab:
Undefined function or variable 'trainedModel08072019'.
Function 'MATLAB Function' (#128.38.58), line 3, column 5:
"trainedModel08072019"
Launch diagnostic report.
Component:MATLAB Function | Category:Coder error
Errors occurred during parsing of MATLAB function 'TrainedModel_test/MATLAB Function'
Component:MATLAB Function | Category:Coder error
Simulink cannot determine sizes and/or types of the outputs for block 'TrainedModel_test/MATLAB Function' due to errors in the block body, or limitations of the underlying analysis. The errors might be inaccurate. Fix the indicated errors, or explicitly specify sizes and/or types for all block outputs.
Component:MATLAB Function | Category:Coder error
Simulink cannot determine sizes and/or types of the outputs for block 'TrainedModel_test/MATLAB Function' due to errors in the block body, or limitations of the underlying analysis. The errors might be inaccurate. Fix the indicated errors, or explicitly specify sizes and/or types for all block outputs.
Component:Simulink | Category:Model error
Error occurred in 'TrainedModel_test/MATLAB Function'.
Component:Simulink | Category:Model error
How is the correct form to call a simulink function
1 commentaire
Sean de Wolski
le 9 Juil 2019
Please create your own question.
Catégories
En savoir plus sur Test Model Components dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!