How to initialize the workspace for a simulink model from a python script using the matlab engine

Hi everyone! I've connected a python script to a simulink model as explained in this tutorial https://medium.com/@soutrikbandyopadhyay/controlling-a-simulink-model-by-a-python-controller-2b67bde744ee. What I would like to know now is: my simulink model calls some variables from the workspace, so is there a way to initialize the workspace using the matlab engine in python?

Réponses (1)

Hi Francesco,
To initialize the MATLAB workspace using matlab engine you could follow these steps:
  1. Share an engine from MATLAB.
matlab.engine.shareEngine('engine_1')
2. Connect the shared engine from MATLAB with python program.
import matlab.engine
eng = matlab.engine.connect_matlab('engine_1')
3. Create a python variable and initialize it to MATLAB workspace using the following command.
px = eng.linspace(0.0,6.28,1000)
eng.workspace['mx'] = px
You could find documentation for the same using this command in your MATLAB command window.
help("matlab.engine.MatlabEngine")
I hope this helps with your task!!

Catégories

Produits

Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by