Calling python function using Matlab Python Coexecution

2 vues (au cours des 30 derniers jours)
Wiz
Wiz le 9 Oct 2024
Commenté : Wiz le 15 Oct 2024
Hello everyone, I was trying to integrate my Neural Network model which is written in python to my simulink model. For this Integration I am using the Matlab python Coexecution option. After a demo Coexection (using my ML model and random inputs from matlab) it worked perfectly and predicted those random values as it should. Once I test there I created a matlab function in Simulink and tried to call this python model but somehow I am getting this error. "Attempt to extract field 'infer' from 'mxArray'. Function 'AEB_Trigger/MATLAB Function3' (#38.1529.1537), line 30, column 14: "py_model"
FYI: the inputs for the Matlab and or Python model are coming from another environment (virtual simulation), but I am quite sure that doesnt have an effect on this error. The Coexecution even works in the Matlab Command window, but having a problem when it is connected to those inputs.
Matlab Verison:2021a
Python: 3.7
Thank you very much for the time;)

Réponses (1)

Oliver Jaehrig
Oliver Jaehrig le 10 Oct 2024
I can simply recommend to put the code into it's own function which would create a layer around it and then use coder.extrinsic to declare this particular function as extrinsic and then call this function in the MATLAB Function block.
The function itself should only get inputs and outputs with valid Simulink types. Such errors occur since Simulink cannot handle this special type since the object you get is not handled as extrinsic.
So the additional function should solve this actually.
If you need any further support, please also consider to contact our Technical Support department.
  1 commentaire
Wiz
Wiz le 15 Oct 2024
Thank you very much for the reply, So I recreated the code in its own function iself like attached above, but I am still getting the same error/sometimes my matlab crashes, as you have said I will probably contact Technical Support department. But again thank you a lot!

Connectez-vous pour commenter.

Catégories

En savoir plus sur Call Python from MATLAB dans Help Center et File Exchange

Produits


Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by