Compile, run, and interact with Simulink models natively in Python!
Project description
PySimlink is a python package that automatically compiles Simulink codegen files into a simple interface that you can interact with in Python!
With this package, you can:
- Interact with the internals of your Simulink model
- Run the model in "accelerator mode"
- Send and receive data in the form of numpy arrays
- Run multiple instances of the same model
All without requiring a MATLAB runtime on the target machine! No C/C++ programming required!
To get started, you either need a copy of the generated model you want to simulate or, to generate the code yourself, you need the Simulink Coder. There are some limitations, namely that your model must use a fixed step solver (a requirement of the grt target).
Demo
Read Signal Values
from pysimlink import Model
model = Model("my_awesome_model", "model.zip")
model.reset()
for i in range(len(model)):
model.step()
signal_val = model.get_signal(block_path="Constant1", sig_name="Signal1")
print(signal_val)
Change Block Parameters
from pysimlink import Model
import numpy as np
model = Model("my_awesome_model", "model.zip")
model.reset()
new_param = np.eye(3)
model.set_block_param(block="Constant1", param="Value", value=new_param)
Change a Model's Final Time Step
from pysimlink import Model
model = Model("my_awesome_model", "model.zip")
model.reset()
model.set_tFinal(500)
print(model.tFinal)
And more...
Check out the docs to get started!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for pysimlink-1.2.1.dev2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3bf82846edb66bb2aa94aa69aaad145c004fac85a6e921c5c2ef62ae1546f2f4 |
|
MD5 | c6324050f4cf6182afa4e0d9eb5d4fdd |
|
BLAKE2b-256 | 15cd74a2004b8045f87e6fe8fb986fb8d05b4e75cf730335ee8765aaa9867a71 |