How can I generate C code from a Simulink model with a Neural Nework in the Matlab base workspace?
1 次查看(过去 30 天)
显示 更早的评论
I have a Python Neural Network model, developped with Keras, and I want to embed it in a dSpace controller which works with C code. There is a dSpace Toolbox that imports a Simulink model in the controller by compiling it in C code, the 'Build Model' function.
I have succesfully imported my trained Python Neural Network in the Matlab Worspace with the Deep Learning Toolbox and the importKerasNetwork function. In Simulink I can use the Neural Network for prediction via the MATLAB function block with the following code and simulation of the Simulink model works :
%%%%%%%%%%%%%%
function y = fcn(X)
coder.extrinsic('evalin');
coder.extrinsic('predict');
NN = evalin('base','NN');
y = double(predict(NN,X));
%%%%%%%%%%%%%%
Here is my problem :
When I try to embed my Simulink model in the dSpace controller it doesn't work as :
- coder.extrinsic is not compatible with code generation,
- I am trying to embed a NN that is stored in the Matlab base workspace.
Should I rebuild my Neural Network in Simulink with the Simulink Deep Learning Toolbox blocks or is there a way to solve my problem in another way?
Thank you in advance for your time!
0 个评论
采纳的回答
Jyotish Kumar
2019-11-13
Hi,
The code generator does not produce code for the body of the extrinsic function and instead uses the MATLAB® engine to execute the call. This functionality is available only when the MATLAB engine is available in MEX functions, Simulink® simulations, or during calls at compile time. For more information refer the link below
1 个评论
johnnynoc4sh
2021-5-19
编辑:johnnynoc4sh
2021-5-19
Hi Kumar,
are there any options to integrate Keras / Tensorflow models into codegeneratable Simulink models? We are using a Speedgoat platform and I would use it for forecasting timeseries.
Best
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Deep Learning Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!